diff --git a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt index f0bb01dad5..c160ca14c4 100644 --- a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt +++ b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/dsl/NativeDistributions.kt @@ -8,6 +8,7 @@ package org.jetbrains.compose.desktop.application.dsl import org.gradle.api.Action import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.ProjectLayout +import org.gradle.api.file.RegularFileProperty import org.gradle.api.model.ObjectFactory import java.util.* import javax.inject.Inject @@ -26,6 +27,7 @@ open class NativeDistributions @Inject constructor( var vendor: String? = null var packageVersion: String? = null val appResourcesRootDir: DirectoryProperty = objects.directoryProperty() + val licenseFile: RegularFileProperty = objects.fileProperty() val outputBaseDir: DirectoryProperty = objects.directoryProperty().apply { set(layout.buildDirectory.dir("compose/binaries")) diff --git a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/internal/configureApplication.kt b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/internal/configureApplication.kt index e0f7c4a724..66c10334d5 100644 --- a/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/internal/configureApplication.kt +++ b/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/desktop/application/internal/configureApplication.kt @@ -212,6 +212,7 @@ internal fun AbstractJPackageTask.configurePackagingTask( packageCopyright.set(provider { executables.copyright }) packageVendor.set(provider { executables.vendor }) packageVersion.set(packageVersionFor(project, app, targetFormat)) + licenseFile.set(executables.licenseFile) } destinationDir.set(app.nativeDistributions.outputBaseDir.map { it.dir("${app.name}/${targetFormat.outputDirName}") }) diff --git a/tutorials/Native_distributions_and_local_execution/README.md b/tutorials/Native_distributions_and_local_execution/README.md index 93756e9e69..351c013726 100755 --- a/tutorials/Native_distributions_and_local_execution/README.md +++ b/tutorials/Native_distributions_and_local_execution/README.md @@ -241,6 +241,7 @@ The following properties are available in the `nativeDistributions` DSL block: * `description` — application's description (default value: none); * `copyright` — application's copyright (default value: none); * `vendor` — application's vendor (default value: none). +* `licenseFile` — application's license (default value: none). ``` kotlin compose.desktop { @@ -251,6 +252,7 @@ compose.desktop { description = "Compose Example App" copyright = "© 2020 My Name. All rights reserved." vendor = "Example vendor" + licenseFile.set(project.file("LICENSE.txt")) } } }