mirror of
https://github.com/Monkopedia/rouse-context.git
synced 2026-10-19 10:33:18 +00:00
The FOSS build (bare `assembleRelease`) already skipped applying the Firebase
Gradle plugins at runtime, but every Firebase/Google-services coordinate — the
two plugin ids, the Crashlytics per-build-type config, and the firebase-*
dependencies — still lived inline in app/build.gradle.kts, guarded only by
`if (googleBuild)`. F-Droid's source scanner is static, so it still saw those
non-FOSS coordinates in a file that survives into the FOSS build. The fdroiddata
maintainer asked us to remove the non-FOSS deps in prebuild rather than
allow-list them with scanignore.
This extracts ALL Google/Firebase build config into
gradle/google-services.gradle.kts, applied from app/build.gradle.kts ONLY under
`-Pgoogle` (`if (googleBuild) { apply(from = ...) }`). The bare FOSS build never
applies it, so it compiles ZERO Firebase: no plugins on the classpath, no
firebase-* deps, no Crashlytics config, and google-services.json is not required
to assemble it. Verified: aapt2 dump strings on the FOSS APK shows no
firebase/gms strings and the DEX contains no com.google.firebase /
com.google.android.gms classes, while the `-Pgoogle` APK still links Firebase.
The extracted file lives in the repo-root gradle/ dir (not app/) because Android
Lint's build-script visitor (lintVitalRelease, which the FOSS release build runs)
crashes trying to FIR-resolve a standalone apply(from=...) script inside an
Android module; the root project has no Android lint task. Its Crashlytics
mapping/symbol toggles are set by reflection because an apply-script has no AGP /
crashlytics DSL types on its classpath.
The fdroiddata recipe now removes the file in `prebuild:
rm -f gradle/google-services.gradle.kts` before the scanner runs (no
scanignore/scandelete), and the version/toolchain fields + MaintainerNotes are
updated to 1.0.7. Adds changelog 8.txt (build-internal, no user-facing change
vs 1.0.6). Part of #465.
Co-authored-by: Jason Monk <monkopedia@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| screenshots | ||
| src | ||
| build.gradle.kts | ||
| google-services.json | ||
| proguard-rules.pro | ||