rename the next build back to nightly

Rename the build type, workflow, artifact and app id (com.subtracks.nightly)
from next to nightly, and update the signing docs to match.
This commit is contained in:
austinried
2026-10-08 18:52:44 +00:00
parent f6d1d548e4
commit e60b2d9910
4 changed files with 15 additions and 14 deletions
@@ -1,4 +1,4 @@
name: Build Next name: Build Nightly
on: on:
push: push:
@@ -19,10 +19,10 @@ jobs:
persist-credentials: false persist-credentials: false
- uses: ./.github/actions/build - uses: ./.github/actions/build
with: with:
gradle-args: ":app:assembleDebug :app:assembleNext --no-daemon" gradle-args: ":app:assembleDebug :app:assembleNightly --no-daemon"
- name: Checksums - name: Checksums
run: sha256sum app/build/outputs/apk/debug/app-debug.apk app/build/outputs/apk/next/app-next.apk run: sha256sum app/build/outputs/apk/debug/app-debug.apk app/build/outputs/apk/nightly/app-nightly.apk
- uses: actions/upload-artifact@v7 - uses: actions/upload-artifact@v7
with: with:
name: subtracks-next name: subtracks-nightly
path: app/build/outputs/apk path: app/build/outputs/apk
+4 -4
View File
@@ -80,7 +80,7 @@ android {
.add("src/integrationTest/kotlin") .add("src/integrationTest/kotlin")
signingConfigs { signingConfigs {
// Committed on purpose: a public key for debug and next builds, never for distribution. // Committed on purpose: a public key for debug and nightly builds, never for distribution.
getByName("debug") { getByName("debug") {
storeFile = file("debug.keystore") storeFile = file("debug.keystore")
storePassword = "android" storePassword = "android"
@@ -100,7 +100,7 @@ android {
buildTypes { buildTypes {
debug { debug {
applicationIdSuffix = ".next" applicationIdSuffix = ".nightly"
} }
release { release {
isMinifyEnabled = true isMinifyEnabled = true
@@ -109,9 +109,9 @@ android {
// Release signing when the keystore is supplied (CI); debug elsewhere so local build/install works. // Release signing when the keystore is supplied (CI); debug elsewhere so local build/install works.
signingConfig = signingConfigs.findByName("release") ?: signingConfigs.getByName("debug") signingConfig = signingConfigs.findByName("release") ?: signingConfigs.getByName("debug")
} }
create("next") { create("nightly") {
initWith(getByName("release")) initWith(getByName("release"))
applicationIdSuffix = ".next" applicationIdSuffix = ".nightly"
signingConfig = signingConfigs.getByName("debug") signingConfig = signingConfigs.getByName("debug")
} }
} }
+7 -6
View File
@@ -9,12 +9,13 @@ subtracks ships through four channels:
send to Play, not the APK users install. The installed app verifies against send to Play, not the APK users install. The installed app verifies against
Google's app signing certificate (Play Console → App integrity), and the upload Google's app signing certificate (Play Console → App integrity), and the upload
key only proves the AAB we uploaded. key only proves the AAB we uploaded.
- **`next` builds** (the `subtracks-next` artifact from CI) — signed with the - **`nightly` builds** (the `subtracks-nightly` artifact from CI) — signed with
public debug key committed here as [`next-certificate.pem`](next-certificate.pem). the public debug key committed here as
[`nightly-certificate.pem`](nightly-certificate.pem).
- **F-Droid** — re-signed by F-Droid with its own key; see F-Droid's published - **F-Droid** — re-signed by F-Droid with its own key; see F-Droid's published
signing key. signing key.
## `next` builds ## `nightly` builds
Certificate SHA-256: Certificate SHA-256:
@@ -22,14 +23,14 @@ Certificate SHA-256:
DF:31:3F:18:58:E9:AD:F4:7F:44:65:B2:80:8F:DC:E5:B9:F8:8A:48:35:DC:D0:79:95:19:61:C3:05:05:08:37 DF:31:3F:18:58:E9:AD:F4:7F:44:65:B2:80:8F:DC:E5:B9:F8:8A:48:35:DC:D0:79:95:19:61:C3:05:05:08:37
``` ```
To check a `next` APK: To check a `nightly` APK:
```sh ```sh
apksigner verify --print-certs subtracks-next.apk apksigner verify --print-certs subtracks-nightly.apk
``` ```
The `SHA-256 digest` line must equal the fingerprint above (the certificate is The `SHA-256 digest` line must equal the fingerprint above (the certificate is
committed at [`next-certificate.pem`](next-certificate.pem)). committed at [`nightly-certificate.pem`](nightly-certificate.pem)).
## GitHub releases ## GitHub releases