You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.5 KiB
52 lines
1.5 KiB
package org.jetbrains.compose.desktop.application.dsl |
|
|
|
import org.gradle.api.Action |
|
import java.io.File |
|
|
|
abstract class PlatformSettings { |
|
var version: String? = null |
|
var installDir: String? = null |
|
} |
|
|
|
open class MacOSPlatformSettings : PlatformSettings() { |
|
var packageIdentifier: String? = null |
|
var packageName: String? = null |
|
val signing: MacOSSigningSettings = MacOSSigningSettings() |
|
|
|
private var isSignInitialized = false |
|
fun signing(fn: Action<MacOSSigningSettings>) { |
|
// enable sign if it the corresponding block is present in DSL |
|
if (!isSignInitialized) { |
|
isSignInitialized = true |
|
signing.sign = true |
|
} |
|
fn.execute(signing) |
|
} |
|
} |
|
|
|
open class MacOSSigningSettings { |
|
var sign: Boolean = false |
|
var keychain: File? = null |
|
var bundlePrefix: String? = null |
|
var keyUserName: String? = null |
|
} |
|
|
|
open class LinuxPlatformSettings : PlatformSettings() { |
|
var shortcut: Boolean = false |
|
var packageName: String? = null |
|
var appRelease: String? = null |
|
var appCategory: String? = null |
|
var debMaintainer: String? = null |
|
var menuGroup: String? = null |
|
var rpmLicenseType: String? = null |
|
} |
|
|
|
open class WindowsPlatformSettings : PlatformSettings() { |
|
var console: Boolean = false |
|
var dirChooser: Boolean = false |
|
var perUserInstall: Boolean = false |
|
var shortcut: Boolean = false |
|
var menu: Boolean = false |
|
var menuGroup: String? = null |
|
var upgradeUuid: String? = null |
|
} |