import org.jetbrains.compose.compose import org.jetbrains.compose.desktop.application.dsl.TargetFormat import org.jetbrains.kotlin.gradle.tasks.KotlinCompile val kotlinxSerializationVersion: String by project val cliktVersion: String by project val kotlinVersion: String by project plugins { kotlin("jvm") kotlin("plugin.serialization") id("org.jetbrains.compose") } group = "de.pheerai" version = "1.0.0-SNAPSHOT" repositories { mavenCentral() google() maven("https://maven.pkg.jetbrains.space/public/p/compose/dev") } dependencies { implementation(compose.desktop.currentOs) implementation("org.jetbrains.kotlinx", "kotlinx-serialization-json", kotlinxSerializationVersion) implementation("com.github.ajalt.clikt", "clikt-jvm", cliktVersion) implementation("com.github.ajalt.clikt", "clikt", cliktVersion) testImplementation("org.jetbrains.kotlin", "kotlin-test", kotlinVersion) } tasks.test { useJUnitPlatform() } tasks.withType { kotlinOptions.jvmTarget = JavaVersion.VERSION_16.toString() kotlinOptions.freeCompilerArgs += "-Xopt-in=kotlin.RequiresOptIn" } compose.desktop { application { mainClass = "MainKt" nativeDistributions { targetFormats(TargetFormat.Pkg) packageName = "quiztable" val fullVersion = (project.version as String) packageVersion = if (fullVersion.contains("-SNAPSHOT")) { fullVersion.removeSuffix("-SNAPSHOT") } else { fullVersion } } } }