mirror of
https://github.com/fromchat-messenger/app.git
synced 2026-09-22 19:15:05 +03:00
Use numeric jpackage packageVersion for beta release tags.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -72,6 +72,13 @@ private fun isWindowsArm64Host(): Boolean {
|
|||||||
return os.contains("win") && hostCpuArch() == "aarch64"
|
return os.contains("win") && hostCpuArch() == "aarch64"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** jpackage packageVersion (MAJOR.MINOR.BUILD); strips pre-release suffixes like `-beta`. */
|
||||||
|
private fun jpackagePackageVersion(versionName: String): String {
|
||||||
|
val match = Regex("""^(\d+)\.(\d+)\.(\d+)""").find(versionName.trim())
|
||||||
|
?: error("Cannot derive jpackage packageVersion from versionName=$versionName")
|
||||||
|
return match.destructured.let { (major, minor, patch) -> "$major.$minor.$patch" }
|
||||||
|
}
|
||||||
|
|
||||||
/** CI / packaging label: `x64` or `arm64`. Override with `-PdesktopArch=…`. */
|
/** CI / packaging label: `x64` or `arm64`. Override with `-PdesktopArch=…`. */
|
||||||
fun desktopReleaseArchLabel(): String {
|
fun desktopReleaseArchLabel(): String {
|
||||||
project.findProperty("desktopArch")?.toString()?.trim()?.takeIf { it.isNotEmpty() }?.let { return it }
|
project.findProperty("desktopArch")?.toString()?.trim()?.takeIf { it.isNotEmpty() }?.let { return it }
|
||||||
@@ -257,7 +264,9 @@ compose.desktop {
|
|||||||
|
|
||||||
nativeDistributions {
|
nativeDistributions {
|
||||||
packageName = "FromChat"
|
packageName = "FromChat"
|
||||||
packageVersion = rootProject.extra["versionName"] as String
|
val versionName = rootProject.extra["versionName"] as String
|
||||||
|
val nativePackageVersion = jpackagePackageVersion(versionName)
|
||||||
|
packageVersion = nativePackageVersion
|
||||||
description =
|
description =
|
||||||
if (project.findProperty("betaDesktop") != null) "FromChat Beta" else "FromChat"
|
if (project.findProperty("betaDesktop") != null) "FromChat Beta" else "FromChat"
|
||||||
copyright = "© FromChat"
|
copyright = "© FromChat"
|
||||||
@@ -293,10 +302,14 @@ compose.desktop {
|
|||||||
// Without iconFile, packaged apps (and macOS dock via jpackage) use Compose's default logo.
|
// Without iconFile, packaged apps (and macOS dock via jpackage) use Compose's default logo.
|
||||||
linux {
|
linux {
|
||||||
iconFile.set(desktopWindowIconPng)
|
iconFile.set(desktopWindowIconPng)
|
||||||
|
packageVersion = nativePackageVersion
|
||||||
|
rpmPackageVersion = nativePackageVersion
|
||||||
}
|
}
|
||||||
windows {
|
windows {
|
||||||
// jpackage on Windows requires .ico; a PNG is ignored and the Java cup stays.
|
// jpackage on Windows requires .ico; a PNG is ignored and the Java cup stays.
|
||||||
iconFile.set(desktopWindowIconIco)
|
iconFile.set(desktopWindowIconIco)
|
||||||
|
packageVersion = nativePackageVersion
|
||||||
|
exePackageVersion = nativePackageVersion
|
||||||
jvmArgs(*windowsSkikoJvmArgs().toTypedArray())
|
jvmArgs(*windowsSkikoJvmArgs().toTypedArray())
|
||||||
}
|
}
|
||||||
macOS {
|
macOS {
|
||||||
|
|||||||
Reference in New Issue
Block a user