mirror of
https://github.com/praktimarc/kst4contest.git
synced 2026-08-24 19:17:07 +02:00
jpackage cannot produce a distributable macOS bundle on its own. It ad-hoc signs the embedded runtime and then re-runs codesign on the same files without --force, which codesign rejects; and "--type dmg --app-image" re-signs the app it is handed, replacing a Developer ID signature with an ad-hoc one. So the build now creates an unsigned app-image, signs it from the inside out, and wraps it with hdiutil. Apple's notary service also unpacks JARs and checks the native libraries inside them, which sqlite-jdbc ships for both architectures. Those are signed before the bundle is sealed, since rewriting a JAR afterwards would invalidate the seal. A preflight check verifies Apple's two criteria locally, so a missed binary costs seconds rather than a round trip to the notary service. Two long-standing defects surfaced while testing and are fixed here: the bundle identifier defaulted to the main class's package name (kst4contest.view instead of de.x08.KST4Contest), and every release reported version 1.0 in Finder because --app-version was never passed. Neither affects existing users: the app keeps its settings in ~/.praktiKST, independent of the bundle ID. Both workflows call the same script the local Mac uses, so the two cannot drift apart. Signing needs a keychain that can answer a UI prompt, which a runner cannot, so ci-import-cert.sh creates a throwaway keychain whose password is generated per job and discarded with it. Notarization goes through an App Store Connect API key and needs no keychain at all. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WYcmHra3YndA1ahkHeNdJ2
50 lines
517 B
Plaintext
50 lines
517 B
Plaintext
# Fleet IDE
|
|
.fleet
|
|
|
|
# Intellij
|
|
.idea
|
|
*.iml
|
|
|
|
# Eclipse
|
|
.project
|
|
.classpath
|
|
|
|
# Maven
|
|
target
|
|
|
|
|
|
debug.out
|
|
.DS_Store
|
|
|
|
#Logfiles
|
|
SimpleLogFile.txt
|
|
udpReaderBackup.txt
|
|
|
|
#tempfiles
|
|
.idea/
|
|
out/
|
|
|
|
#targetfiles - mvn wrapper
|
|
target/
|
|
|
|
#builds
|
|
build/
|
|
|
|
#pdf output directory
|
|
dist/
|
|
|
|
#zip files for local backups
|
|
*.zip
|
|
|
|
# node Modules in website
|
|
website/node_modules/
|
|
|
|
# built website output (rebuilt on the server)
|
|
website/_site/
|
|
|
|
# Local secrets for act testing
|
|
.secrets
|
|
|
|
# Apple notarization private keys - never commit these
|
|
*.p8
|