gptme/gptme#3409 adopted this repo's signing flow (zipalign + apksigner for APKs, jarsigner for AABs, passwords via env) and hardened it. To keep the two projects on one consistent, battle-tested strategy (cross-referenced in #207), migrate this repo to match:
Reference implementation: gptme/gptme .github/workflows/tauri.yml (release-android job) and docs/contributing.rst "Android release signing".
Note: the store/key passwords stay the same; only the keystore delivery mechanism changes, so this is a workflow-only migration plus one new secret + one variable.
gptme/gptme#3409 adopted this repo's signing flow (zipalign + apksigner for APKs, jarsigner for AABs, passwords via env) and hardened it. To keep the two projects on one consistent, battle-tested strategy (cross-referenced in #207), migrate this repo to match:
KEY_ANDROID_JKS_B64) instead of the age-encryptedandroid.jks.agecommitted in-repo; drop the age decryption step andadnsio/setup-age-actiondependency. Keeps the keystore fully private instead of public-but-encrypted, and removes the extra age identity secret.apksigner verify --print-certs) plusjarsigner -verify -strictfor AABs before upload.Reference implementation: gptme/gptme
.github/workflows/tauri.yml(release-android job) anddocs/contributing.rst"Android release signing".Note: the store/key passwords stay the same; only the keystore delivery mechanism changes, so this is a workflow-only migration plus one new secret + one variable.