Files
musicshare/fdroid/tech.chrisedwards.musicshare.yml
chrisandClaude Opus 5.5 a4dad724ad
CI / check (push) Canceled after 0s
Get the repo ready for F-Droid
- License: AGPL-3.0-or-later (LICENSE, every package.json, README).
- MUSICSHARE_FOSS=1 builds leave out the only closed-source code, Google's
  ML Kit / Play Services barcode scanner bundled by expo-camera; the scan
  screen then decodes small camera snapshots with jsQR instead.
- Expo modules build from source rather than from precompiled AARs, as
  F-Droid requires (that's also what makes the scanner switch take effect).
  Verified: a FOSS build contains no ML Kit or Play Services classes.
- Release builds default to the production server, and come out unsigned
  without our upload key (F-Droid signs with its own). versionCode 1.
- Store listing in fastlane/metadata/android, a draft fdroiddata recipe in
  fdroid/, and docs/FDROID.md with the submission steps.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MzFywujuH9TiuXbr9vjoX8
2026-10-06 15:26:59 -04:00

50 lines
2.1 KiB
YAML

# Draft F-Droid metadata. To submit, copy this to metadata/tech.chrisedwards.musicshare.yml in a fork of
# https://gitlab.com/fdroid/fdroiddata and open a merge request (see docs/FDROID.md).
# Replace PUBLIC_REPO_URL with the public git repository (e.g. a Codeberg or GitHub mirror).
Categories:
- Multimedia
- Connectivity
License: AGPL-3.0-or-later
AuthorEmail: app@musicshare.binarygnome.com
WebSite: https://musicshare.binarygnome.com
SourceCode: PUBLIC_REPO_URL
IssueTracker: PUBLIC_REPO_URL/issues
AutoName: musicshare
# Users can connect Spotify (via Last.fm/ListenBrainz), Apple Music, Last.fm and Plex.
AntiFeatures:
NonFreeNet:
en-US: Can share activity from non-free services such as Spotify, Apple Music, Last.fm and Plex, and
opens songs in them.
RepoType: git
Repo: PUBLIC_REPO_URL.git
Builds:
- versionName: 1.0.0
versionCode: 1
commit: v1.0.0
subdir: apps/mobile
sudo:
- apt-get update
- apt-get install -y xz-utils
# Expo SDK 57 / React Native 0.86 need Node >= 20.19.4; Debian's is too old.
- curl -Lo /tmp/node.tar.xz https://nodejs.org/dist/v22.23.3/node-v22.23.3-linux-x64.tar.xz
- echo 'df450af89261115ef9f9e3830c3eeb2cc9213b63c720b1af623cb5dcbe2e02de /tmp/node.tar.xz' | sha256sum -c
- tar -xJf /tmp/node.tar.xz -C /usr/local --strip-components=1
output: android/app/build/outputs/apk/release/app-release-unsigned.apk
build:
# Only the app and the shared package it uses (not the server or website).
- cd ../.. && npm ci --workspace @musicshare/mobile --workspace @musicshare/shared --include-workspace-root
# MUSICSHARE_FOSS=1 leaves out Google's ML Kit barcode scanner (see apps/mobile/app.config.ts).
- MUSICSHARE_FOSS=1 CI=1 npx expo prebuild --platform android --no-install
- cd android && ./gradlew :app:assembleRelease -PreactNativeArchitectures=armeabi-v7a,arm64-v8a,x86_64
ndk: r27b
AutoUpdateMode: Version
UpdateCheckMode: Tags ^v[0-9.]+$
UpdateCheckData: apps/mobile/app.json|"versionCode":\s*(\d+)|apps/mobile/app.json|"version":\s*"([\d.]+)"
CurrentVersion: 1.0.0
CurrentVersionCode: 1