102 lines
2.9 KiB
TOML
102 lines
2.9 KiB
TOML
[package]
|
|
name = "oneclient_app"
|
|
description = "OneClient Freya App"
|
|
version = { workspace = true }
|
|
license = { workspace = true }
|
|
edition = { workspace = true }
|
|
repository = { workspace = true }
|
|
documentation = { workspace = true }
|
|
readme = { workspace = true }
|
|
homepage = { workspace = true }
|
|
authors = { workspace = true }
|
|
|
|
[features]
|
|
default = []
|
|
|
|
[dependencies]
|
|
oneclient_core.workspace = true
|
|
oneclient_db.workspace = true
|
|
chrono.workspace = true
|
|
oneclient_macro = { workspace = true, features = ["freya"] }
|
|
|
|
polyio.workspace = true
|
|
rust-embed = { version = "=8.11.0", features = ["include-exclude", "compression", "debug-embed"] }
|
|
|
|
tracing.workspace = true
|
|
tracing-subscriber.workspace = true
|
|
tokio.workspace = true
|
|
uuid.workspace = true
|
|
bytes.workspace = true
|
|
sysinfo.workspace = true
|
|
|
|
anyhow.workspace = true
|
|
regex.workspace = true
|
|
|
|
cargo-packager-updater = "=0.2.3"
|
|
|
|
rfd = "=0.17.2"
|
|
open = "=5.4.0"
|
|
|
|
# clipboard image copy + decode for it
|
|
arboard.workspace = true
|
|
image.workspace = true
|
|
|
|
freya-skia-safe.workspace = true
|
|
freya.workspace = true
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
mimalloc = "=0.1.52"
|
|
|
|
# Build then package (per OS):
|
|
# cargo build --release -p oneclient_app
|
|
# cargo packager --release -p oneclient_app --formats <nsis|app,dmg|deb,appimage>
|
|
[package.metadata.packager]
|
|
product-name = "OneClient"
|
|
identifier = "org.polyfrost.OneClient"
|
|
category = "Game"
|
|
publisher = "Polyfrost"
|
|
copyright = "© 2026 Polyfrost Inc."
|
|
homepage = "https://polyfrost.org/projects/oneclient"
|
|
long-description = "Next-generation open source Minecraft launcher"
|
|
formats = ["nsis", "app", "dmg", "deb", "appimage"]
|
|
binaries = [{ path = "oneclient_app", main = true }]
|
|
icons = [
|
|
"icons/32x32.png",
|
|
"icons/128x128.png",
|
|
"icons/128x128@2x.png",
|
|
"icons/icon.icns",
|
|
"icons/icon.ico",
|
|
]
|
|
|
|
[package.metadata.packager.macos]
|
|
minimum-system-version = "10.15"
|
|
entitlements = "distribution/App.entitlements"
|
|
info-plist-path = "distribution/Info.plist"
|
|
|
|
[package.metadata.packager.dmg]
|
|
background = "distribution/dmg-background.tiff"
|
|
window-size = { width = 600, height = 400 }
|
|
app-position = { x = 160, y = 190 }
|
|
application-folder-position = { x = 440, y = 190 }
|
|
|
|
[package.metadata.packager.windows]
|
|
digest-algorithm = "sha256"
|
|
timestamp-url = "https://timestamp.digicert.com"
|
|
|
|
[package.metadata.packager.nsis]
|
|
preinstall-section = """
|
|
Section "-OneClientTauriMigration"
|
|
; Stale Tauri root start-menu shortcut (this build only writes the sub-folder one).
|
|
Delete "$SMPROGRAMS\\${PRODUCTNAME}.lnk"
|
|
; Old Tauri main binary (renamed OneClient.exe -> oneclient_app.exe). Locked while
|
|
; the outdated app is running during an auto-update, so fall back to reboot removal.
|
|
Delete /REBOOTOK "$INSTDIR\\OneClient.exe"
|
|
SectionEnd
|
|
"""
|
|
|
|
[package.metadata.packager.deb]
|
|
desktop-template = "distribution/linux/org.polyfrost.oneclient.template"
|
|
|
|
[package.metadata.packager.appimage]
|
|
# desktop entry generated from the deb template above via the linux config
|
|
|