rouse-context/app
Jason Monk eede249641
build(foss): make release F-Droid-ready, mirroring health-disconnect (#465) (#515)
Make the FOSS release build buildable by F-Droid from a clean checkout
with no signing credentials, mirroring com.monkopedia.healthdisconnect's
proven reproducible-builds setup (live on F-Droid).

- Remove the hard-fail signing guard (gradle.taskGraph.whenReady). The
  owner has decided to match health-disconnect, which has no such guard:
  absent credentials must produce an UNSIGNED build, not an abort. On AGP
  8.13.2 an incomplete-but-assigned signingConfig still aborts packaging
  (health-disconnect's older AGP silently skipped it), so the release
  signingConfig is now assigned to the buildType only when the keystore
  and both passwords are present (canSignRelease). Credential-less
  assembleRelease builds unsigned; a build with creds still signs.
- dependenciesInfo { includeInApk/InBundle = false } — AGP's embedded
  dependency-metadata block is rejected by F-Droid's scanner.
- vcsInfo.include = false on release — embedded VCS/commit info is
  non-reproducible.
- Disable ArtProfile tasks — Compose pulls in profileinstaller, whose
  baseline.prof generation is non-deterministic and breaks reproducible
  builds.
- Simplify the staged fdroiddata recipe: drop the throwaway-keystore
  prebuild block and its MaintainerNotes paragraph (unnecessary now the
  bare build builds unsigned). Recipe stays an owner-gated DRAFT.

Verified both ways: credential-less :app:assembleRelease produces
app-release-unsigned.apk (apksigner: DOES NOT VERIFY); with creds it
produces a signed app-release.apk (cert SHA-256 5394b7c7…51dca). Both
FOSS and -Pgoogle variants compile.

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 11:17:25 -04:00
..
screenshots Fix SwitchRow off-state reading as disabled (#484) (#490) 2026-06-16 15:31:41 -04:00
src fix(foss): run UnifiedPush wake off the main thread to stop ANR (#506) (#511) 2026-06-23 16:05:52 -04:00
build.gradle.kts build(foss): make release F-Droid-ready, mirroring health-disconnect (#465) (#515) 2026-06-24 11:17:25 -04:00
google-services.json Add Firebase: google-services.json, Google Services plugin, debug applicationIdSuffix 2026-04-05 15:38:40 -04:00
proguard-rules.pro Add ProGuard rules for Ktor JMX references 2026-04-11 15:07:22 -04:00