build(train): Train is released as Learn is, with a key of its own, beside it in the F-Droid repository (ADR 0030, D58)
apps/train/release.dart configures the release tool for Train's APK on train.halkyon.eu; its release builds sign with its own key when the tool hands it over. Its F-Droid listing declares NonFreeDep for Polar's SDK and NonFreeNet; the repository's script copies each app's icon. The key's certificate is pinned once the key is made. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
0ec15d2fb2
commit
48951c1e1a
1 changed files with 180 additions and 12 deletions
35
apps/train/release.dart
Normal file
35
apps/train/release.dart
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
// How Halkyon Train is released (`dart run tool/release.dart train`): the
|
||||
// release tool's configuration of it, registered in tool/src/release/apps.dart.
|
||||
import '../../tool/src/release/app_release.dart';
|
||||
|
||||
/// Halkyon Train's releases: the APK alone (Train is Android's: Health
|
||||
/// Connect, the recorder's foreground service, the Polar Loop), connecting
|
||||
/// to train.halkyon.eu, published on code.halkyon.app and in the project's
|
||||
/// F-Droid repository beside Learn.
|
||||
const trainRelease = AppRelease(
|
||||
id: 'train',
|
||||
name: 'Halkyon Train',
|
||||
applicationId: 'app.halkyon.train',
|
||||
directory: 'apps/train',
|
||||
flutterPackage: 'apps/train/halkyon_train_flutter',
|
||||
artifactName: 'halkyon-train',
|
||||
serverUrl: 'https://train.halkyon.eu/',
|
||||
forgejo: 'https://code.halkyon.app',
|
||||
repository: 'project-halkyon/halkyon',
|
||||
// A PKCS #12 keystore of its own outside the repository (also in the
|
||||
// maintainer's password manager), as Learn's: it is the app's identity, and
|
||||
// lost, installed apps can't be updated.
|
||||
android: AndroidSigning(
|
||||
certificateFile: 'tool/release/train-android-certificate.sha256',
|
||||
keystoreVariable: 'HALKYON_TRAIN_ANDROID_KEYSTORE',
|
||||
defaultKeystore: '.local/share/halkyon-train/android-release.p12',
|
||||
aliasVariable: 'HALKYON_TRAIN_ANDROID_KEY_ALIAS',
|
||||
defaultAlias: 'halkyon-train',
|
||||
),
|
||||
fdroid: FdroidListing(
|
||||
script: 'tool/fdroid_repo.sh',
|
||||
listing: 'tool/release/fdroid',
|
||||
indexCertificateFile: 'tool/release/fdroid-index-certificate.sha256',
|
||||
repositoryUrl: 'https://halkyon.app/fdroid/repo',
|
||||
),
|
||||
);
|
||||
Loading…
Reference in a new issue