| .. | ||
| fdroiddata | ||
| README.md | ||
| SUBMISSION.md | ||
Distribution without GitHub
SkateSpots is published from a self-hosted Forgejo instance. No GitHub account is required.
Current release source
- Forge: https://git.skate-spots.org/skatespots/SkateSpots
- Latest release: https://git.skate-spots.org/skatespots/SkateSpots/releases/latest
- Signed APK (1.7.61): https://git.skate-spots.org/skatespots/SkateSpots/releases/download/v1.7.61/SkateSpots-1.7.61.apk
- SHA-256:
db0279f759efd9fa05d9d1bed57a3f5856777e6ccb208d3ed78b15398f266fba
The APK is signed with the same key as the Zapstore build. Installing an F-Droid-signed build over it would require uninstalling SkateSpots and losing the local key/settings. Obtanium and direct APK updates keep the install.
Obtanium
Obtanium cannot use a Zapstore URL as a source. Use the self-hosted Forgejo release page instead:
- Open Obtanium → Add App.
- Paste:
https://git.skate-spots.org/skatespots/SkateSpots/releases/latest - If Obtanium does not recognise the self-hosted host, select Override Source → HTML.
- Set version extraction if desired:
SkateSpots-([0-9.]+)\.apk, match group1.
The release page contains exactly one .apk, so Obtanium can follow the latest
release without a custom store listing.
F-Droid family
Self-hosted F-Droid repo (live now)
A signed third-party F-Droid repository is published here:
- Repo: https://fdroid.skate-spots.org/repo
- App ID:
org.skatespots.app - Repo signing fingerprint:
88:B1:71:1C:24:02:89:FB:B2:A7:FC:C1:B3:1F:BB:9D:60:F5:7F:19:18:E0:3D:62:2D:35:F2:3D:E1:84:46:75
Users can add this URL in F-Droid, or add it in Obtanium as an F-Droid Third Party Repo. This is not F-Droid main: it is a self-hosted, signed repository of the developer-signed APK. It keeps the existing install and signing key.
The repository metadata and APK are served from the relay host. The repo index is signed with a repository key stored on that host; the APK itself keeps the SkateSpots developer signature.
F-Droid main and IzzyOnDroid
F-Droid main requires a public, clonable source repository (the Forgejo URL
above), an accepted fdroiddata recipe, a reproducible build and maintainer
review. IzzyOnDroid is the easier external submission step. Both remain
external-review processes; the self-hosted repo above is usable without waiting
for either.
Recipe draft: distribution/fdroiddata/org.skatespots.app.yml
Store metadata: fastlane/metadata/android/en-US/
The Android project is generated by Capacitor and intentionally not committed, so the prebuild steps must be verified in the F-Droid build environment before submitting to F-Droid main.
IzzyOnDroid submission details, when you want to send it:
- App ID:
org.skatespots.app - Source:
https://git.skate-spots.org/skatespots/SkateSpots - APK: the signed asset on the latest Forgejo release
- License:
AGPL-3.0-only - Category: Sports
- Summary:
Local-first skate map, crews, events and marketplace - Keep the developer signature; do not ask users to replace an existing install with an F-Droid-main-signed build.
No GitHub account is used anywhere in this path.
Release checklist
-
npm test -
scripts/release.sh patch --yes --deploy(Zapstore + web) -
Push the release tag and
mainto Forgejo. -
Upload the APK through the helper:
FORGEJO_TOKEN=... scripts/publish-forgejo.sh <version>(or setFORGEJO_TOKENbeforerelease.sh; the APK upload is then automatic) -
Copy the signed APK into the F-Droid repo on the relay host, add a
metadata/org.skatespots.app.ymlchangelog entry, runfdroid update, and syncrepo/to/var/www/fdroid/repo/:cd /home/ubuntu/fdroid cp /path/to/SkateSpots-<version>.apk repo/ . /home/ubuntu/fdroid-venv/bin/activate fdroid update sudo rsync -a --delete repo/ /var/www/fdroid/repo/ sudo chown -R caddy:caddy /var/www/fdroid -
Verify the public latest-release page contains the new
.apk, and thathttps://fdroid.skate-spots.org/repo/index-v2.jsonlists the newversionCode. -
Update the static download page if the displayed version/checksum changes:
public/download/index.html.
The Forgejo instance runs on the same host as the relay. It exposes public read access and HTTPS through Caddy; registration is disabled and administrative credentials are kept on the host, not in this repository.