tane/docs/fdroid/org.comunes.tane.yml
vjrj f04dd3da1a
All checks were successful
ci / analyze (push) Successful in 1m5s
ci / test-commons-core (push) Successful in 37s
ci / test-app-seeds (push) Successful in 5m44s
site / deploy (push) Successful in 32s
release / play (push) Successful in 11m49s
release / fdroid_reference_armeabi_v7a (push) Successful in 22m20s
release / fdroid_reference_arm64_v8a (push) Successful in 23m16s
release / fdroid_reference_x86_64 (push) Successful in 22m11s
fix(fdroid): drop Google Play Core so the scanner accepts the APK; prep v0.1.15
F-Droid's APK scanner rejected v0.1.14: 6 com.google.android.play.core.*
(SplitInstall/SplitCompat/tasks) references. They came from Flutter's
io.flutter.embedding.engine.deferredcomponents.PlayStoreDeferredComponentManager
being pinned by our over-broad '-keep class io.flutter.** { *; }' ProGuard
rule — Tane uses no deferred components, so R8 should shrink that manager
away (as it does for immich and other Flutter F-Droid apps, which don't
carry such a keep). Narrow the keep to io.flutter.plugins.**; JNI-critical
embedding classes (FlutterJNI, …) stay via the embedding AAR's own consumer
ProGuard rules — verified the built APK still contains FlutterJNI and no
com.google.android.play.core.* at all. Also exclude the com.google.android.play
group at the dependency level (belt-and-suspenders) + -dontwarn.

Bumps to 0.1.15 (+17); fdroid recipe versionCodes 171/172/173.
2026-07-23 10:47:01 +02:00

142 lines
6.2 KiB
YAML

Categories:
- Inventory
- Market & Price
- Science & Education
License: AGPL-3.0-or-later
AuthorName: Comunes
AuthorWebSite: https://comunes.org
WebSite: https://tane.comunes.org
SourceCode: https://git.comunes.org/comunes/tane
IssueTracker: https://git.comunes.org/comunes/tane/issues
Translation: https://translate.comunes.org/projects/tane
AutoName: Tane
RepoType: git
Repo: https://git.comunes.org/comunes/tane.git
# Reproducible, developer-signed: F-Droid rebuilds each split and, if it matches
# our own signed APK on the git.comunes.org release byte-for-byte, publishes OUR
# APK (same signature as the Play build). Value is the SHA-256 of the tane-upload
# signing certificate (public).
AllowedAPKSigningKeys: ddfae432091b8248a8a4a1b353487fa626301f4357ef835e94ec312f69418e38
Builds:
- versionName: 0.1.15
versionCode: 171
commit: v0.1.15
subdir: apps/app_seeds
output: build/app/outputs/flutter-apk/app-armeabi-v7a-release.apk
binary: https://git.comunes.org/comunes/tane/releases/download/v%v/app-armeabi-v7a-release.apk
srclibs:
- flutter@stable
- tesseract4android@4.9.0
prebuild:
- export flutterVersion=$(sed -n -E 's,.*cirruslabs/flutter:([0-9.]+).*,\1,p'
../../.forgejo/workflows/release.yml | head -1)
- '[[ $flutterVersion ]]'
- git -C $$flutter$$ checkout -f $flutterVersion
- cd ../..
- export PUB_CACHE=$(pwd)/.pub-cache
- $$flutter$$/bin/flutter config --no-analytics
- $$flutter$$/bin/flutter pub get --enforce-lockfile
- "sed -i '/^buildscript {/,/^}/d' $PUB_CACHE/hosted/pub.dev/flutter_tesseract_ocr-*/android/build.gradle"
- 'echo "org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g" >> apps/app_seeds/android/gradle.properties'
- 'echo "org.gradle.daemon=false" >> apps/app_seeds/android/gradle.properties'
- cd apps/app_seeds
- $$flutter$$/bin/dart run slang
- $$flutter$$/bin/dart run build_runner build --delete-conflicting-outputs
scandelete:
- .pub-cache
build:
- export PUB_CACHE=$(cd ../.. && pwd)/.pub-cache
- pushd $$tesseract4android$$/tesseract4android
- gradle --no-daemon assembleStandardRelease
- popd
- cp
$$tesseract4android$$/tesseract4android/build/outputs/aar/tesseract4android-standard-release.aar
$PUB_CACHE/hosted/pub.dev/flutter_tesseract_ocr-0.4.31/android/libs/tesseract4android-release.aar
- $$flutter$$/bin/flutter build apk --release --split-per-abi --target-platform=android-arm
- versionName: 0.1.15
versionCode: 172
commit: v0.1.15
subdir: apps/app_seeds
output: build/app/outputs/flutter-apk/app-arm64-v8a-release.apk
binary: https://git.comunes.org/comunes/tane/releases/download/v%v/app-arm64-v8a-release.apk
srclibs:
- flutter@stable
- tesseract4android@4.9.0
prebuild:
- export flutterVersion=$(sed -n -E 's,.*cirruslabs/flutter:([0-9.]+).*,\1,p'
../../.forgejo/workflows/release.yml | head -1)
- '[[ $flutterVersion ]]'
- git -C $$flutter$$ checkout -f $flutterVersion
- cd ../..
- export PUB_CACHE=$(pwd)/.pub-cache
- $$flutter$$/bin/flutter config --no-analytics
- $$flutter$$/bin/flutter pub get --enforce-lockfile
- "sed -i '/^buildscript {/,/^}/d' $PUB_CACHE/hosted/pub.dev/flutter_tesseract_ocr-*/android/build.gradle"
- 'echo "org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g" >> apps/app_seeds/android/gradle.properties'
- 'echo "org.gradle.daemon=false" >> apps/app_seeds/android/gradle.properties'
- cd apps/app_seeds
- $$flutter$$/bin/dart run slang
- $$flutter$$/bin/dart run build_runner build --delete-conflicting-outputs
scandelete:
- .pub-cache
build:
- export PUB_CACHE=$(cd ../.. && pwd)/.pub-cache
- pushd $$tesseract4android$$/tesseract4android
- gradle --no-daemon assembleStandardRelease
- popd
- cp
$$tesseract4android$$/tesseract4android/build/outputs/aar/tesseract4android-standard-release.aar
$PUB_CACHE/hosted/pub.dev/flutter_tesseract_ocr-0.4.31/android/libs/tesseract4android-release.aar
- $$flutter$$/bin/flutter build apk --release --split-per-abi --target-platform=android-arm64
- versionName: 0.1.15
versionCode: 173
commit: v0.1.15
subdir: apps/app_seeds
output: build/app/outputs/flutter-apk/app-x86_64-release.apk
binary: https://git.comunes.org/comunes/tane/releases/download/v%v/app-x86_64-release.apk
srclibs:
- flutter@stable
- tesseract4android@4.9.0
prebuild:
- export flutterVersion=$(sed -n -E 's,.*cirruslabs/flutter:([0-9.]+).*,\1,p'
../../.forgejo/workflows/release.yml | head -1)
- '[[ $flutterVersion ]]'
- git -C $$flutter$$ checkout -f $flutterVersion
- cd ../..
- export PUB_CACHE=$(pwd)/.pub-cache
- $$flutter$$/bin/flutter config --no-analytics
- $$flutter$$/bin/flutter pub get --enforce-lockfile
- "sed -i '/^buildscript {/,/^}/d' $PUB_CACHE/hosted/pub.dev/flutter_tesseract_ocr-*/android/build.gradle"
- 'echo "org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g" >> apps/app_seeds/android/gradle.properties'
- 'echo "org.gradle.daemon=false" >> apps/app_seeds/android/gradle.properties'
- cd apps/app_seeds
- $$flutter$$/bin/dart run slang
- $$flutter$$/bin/dart run build_runner build --delete-conflicting-outputs
scandelete:
- .pub-cache
build:
- export PUB_CACHE=$(cd ../.. && pwd)/.pub-cache
- pushd $$tesseract4android$$/tesseract4android
- gradle --no-daemon assembleStandardRelease
- popd
- cp
$$tesseract4android$$/tesseract4android/build/outputs/aar/tesseract4android-standard-release.aar
$PUB_CACHE/hosted/pub.dev/flutter_tesseract_ocr-0.4.31/android/libs/tesseract4android-release.aar
- $$flutter$$/bin/flutter build apk --release --split-per-abi --target-platform=android-x64
AutoUpdateMode: Version
UpdateCheckMode: Tags v[\d.]+
VercodeOperation:
- '%c * 10 + 1'
- '%c * 10 + 2'
- '%c * 10 + 3'
UpdateCheckData:
apps/app_seeds/pubspec.yaml|version:\s*[\d.]+\+(\d+)|apps/app_seeds/pubspec.yaml|version:\s*([\d.]+)\+
CurrentVersion: 0.1.15
CurrentVersionCode: 173