From 631b661265de3a1ec40489f1c89d3c7f4599339e Mon Sep 17 00:00:00 2001 From: Philipp Wagner Date: Sat, 27 Jun 2026 21:11:13 +0200 Subject: [PATCH] fix flatpak key again. --- .github/workflows/nightly-artifacts.yml | 12 ++++++++ .github/workflows/tagged-release.yml | 12 ++++++++ github_docs/de-Installation.md | 39 +++++++++++++++++++++++-- github_docs/en-Installation.md | 39 +++++++++++++++++++++++-- 4 files changed, 98 insertions(+), 4 deletions(-) diff --git a/.github/workflows/nightly-artifacts.yml b/.github/workflows/nightly-artifacts.yml index 3103a96..9c404f4 100644 --- a/.github/workflows/nightly-artifacts.yml +++ b/.github/workflows/nightly-artifacts.yml @@ -530,6 +530,18 @@ jobs: rsync -a ../flatpak-ostree-repo/ ./ # Regenerate summary with all branches flatpak build-update-repo --gpg-sign="$FLATPAK_GPG_KEY_ID" . + # Generate .flatpakrepo with embedded GPG key so users can do remote-add without errors + REPO_NAME="${GITHUB_REPOSITORY#*/}" + PAGES_URL="https://${GITHUB_REPOSITORY_OWNER}.github.io/${REPO_NAME}/" + GPG_KEY_B64=$(gpg --export "$FLATPAK_GPG_KEY_ID" | base64 -w 0) + cat > kst4contest.flatpakrepo << EOF + [Flatpak Repo] + Title=KST4Contest + Url=${PAGES_URL} + Homepage=https://github.com/${GITHUB_REPOSITORY} + Comment=KST4Contest – ON4KST Chat Client for VHF/UHF contests + GPGKey=${GPG_KEY_B64} + EOF # Stage all changes (new/updated refs, summary, objects in OSTree) git add -A if git diff --cached --quiet; then diff --git a/.github/workflows/tagged-release.yml b/.github/workflows/tagged-release.yml index bf2d469..63644f1 100644 --- a/.github/workflows/tagged-release.yml +++ b/.github/workflows/tagged-release.yml @@ -619,6 +619,18 @@ jobs: rsync -a ../flatpak-ostree-repo/ ./ # Regenerate summary with all branches (not just the one just built) flatpak build-update-repo --gpg-sign="$FLATPAK_GPG_KEY_ID" . + # Generate .flatpakrepo with embedded GPG key so users can do remote-add without errors + REPO_NAME="${GITHUB_REPOSITORY#*/}" + PAGES_URL="https://${GITHUB_REPOSITORY_OWNER}.github.io/${REPO_NAME}/" + GPG_KEY_B64=$(gpg --export "$FLATPAK_GPG_KEY_ID" | base64 -w 0) + cat > kst4contest.flatpakrepo << EOF + [Flatpak Repo] + Title=KST4Contest + Url=${PAGES_URL} + Homepage=https://github.com/${GITHUB_REPOSITORY} + Comment=KST4Contest – ON4KST Chat Client for VHF/UHF contests + GPGKey=${GPG_KEY_B64} + EOF git add -A if git diff --cached --quiet; then echo "No changes to commit" diff --git a/github_docs/de-Installation.md b/github_docs/de-Installation.md index a0ab4a0..5b9b54a 100644 --- a/github_docs/de-Installation.md +++ b/github_docs/de-Installation.md @@ -116,12 +116,47 @@ Die Datei `de.x08.KST4Contest.flatpakref` aus dem [aktuellen Release](https://gi flatpak install de.x08.KST4Contest.flatpakref ``` -Oder den Remote manuell hinzufügen: +Oder den Remote manuell hinzufügen (empfohlen für Nightly/Beta-Zugriff): ```bash -flatpak remote-add kst4contest https://praktimarc.github.io/kst4contest/ +flatpak remote-add --if-not-exists kst4contest https://praktimarc.github.io/kst4contest/kst4contest.flatpakrepo flatpak install kst4contest de.x08.KST4Contest ``` +#### Flatpak-Kanäle (nightly / beta / stable) + +Das Flatpak-Repository enthält drei Kanäle, die alle im selben Remote liegen: + +| Kanal | Inhalt | Wird gebaut bei | +|---|---|---| +| `stable` | Aktuelle stabile Version | Jedem normalen Release-Tag | +| `beta` | Vorab-Version | Tags mit `beta-` Präfix | +| `nightly` | Entwicklungsstand (main-Branch) | Täglich / jedem Push auf main | + +Remote einmalig hinzufügen, dann den gewünschten Kanal installieren: + +```bash +flatpak remote-add --if-not-exists kst4contest https://praktimarc.github.io/kst4contest/kst4contest.flatpakrepo + +# Stable (Standard) +flatpak install kst4contest de.x08.KST4Contest + +# Beta +flatpak install kst4contest de.x08.KST4Contest//beta + +# Nightly +flatpak install kst4contest de.x08.KST4Contest//nightly +``` + +> **Hinweis:** Flatpak erlaubt nur eine installierte Version pro App-ID gleichzeitig. Um den Kanal zu wechseln, zuerst die aktuelle Version deinstallieren: +> ```bash +> flatpak uninstall de.x08.KST4Contest +> flatpak install kst4contest de.x08.KST4Contest//nightly +> ``` + +Updates erfolgen wie gewohnt mit `flatpak update`. + +Die `flatpakref`-Dateien für Beta und Stable liegen jeweils im entsprechenden [GitHub-Release](https://github.com/praktimarc/kst4contest/releases). Das Nightly-`flatpakref` (`de.x08.KST4Contest.nightly.flatpakref`) ist als Artifact im [GitHub Actions](https://github.com/praktimarc/kst4contest/actions)-Tab verfügbar (wird 14 Tage aufbewahrt) – der Remote-Weg oben ist für Nightly daher meist einfacher. + ### macOS 1. DMG-Datei für die eigene Architektur herunterladen (Apple Silicon oder Intel). 2. DMG-Datei öffnen. diff --git a/github_docs/en-Installation.md b/github_docs/en-Installation.md index 33640df..92f090a 100644 --- a/github_docs/en-Installation.md +++ b/github_docs/en-Installation.md @@ -116,12 +116,47 @@ Download `de.x08.KST4Contest.flatpakref` from the [latest release](https://githu flatpak install de.x08.KST4Contest.flatpakref ``` -Or add the remote manually: +Or add the remote manually (recommended for nightly/beta access): ```bash -flatpak remote-add kst4contest https://praktimarc.github.io/kst4contest/ +flatpak remote-add --if-not-exists kst4contest https://praktimarc.github.io/kst4contest/kst4contest.flatpakrepo flatpak install kst4contest de.x08.KST4Contest ``` +#### Flatpak Channels (nightly / beta / stable) + +The Flatpak repository provides three channels, all served from the same remote: + +| Channel | Content | Built on | +|---|---|---| +| `stable` | Current stable version | Every normal release tag | +| `beta` | Pre-release version | Tags prefixed with `beta-` | +| `nightly` | Development build (main branch) | Every push to main / daily | + +Add the remote once, then install the channel you want: + +```bash +flatpak remote-add --if-not-exists kst4contest https://praktimarc.github.io/kst4contest/kst4contest.flatpakrepo + +# Stable (default) +flatpak install kst4contest de.x08.KST4Contest + +# Beta +flatpak install kst4contest de.x08.KST4Contest//beta + +# Nightly +flatpak install kst4contest de.x08.KST4Contest//nightly +``` + +> **Note:** Flatpak only allows one installed version per App-ID at a time. To switch channels, uninstall the current version first: +> ```bash +> flatpak uninstall de.x08.KST4Contest +> flatpak install kst4contest de.x08.KST4Contest//nightly +> ``` + +Updates work as usual with `flatpak update`. + +The `flatpakref` files for beta and stable are attached to their respective [GitHub Releases](https://github.com/praktimarc/kst4contest/releases). The nightly `flatpakref` (`de.x08.KST4Contest.nightly.flatpakref`) is available as an artifact on the [GitHub Actions](https://github.com/praktimarc/kst4contest/actions) tab (kept for 14 days) — for nightly builds, the manual remote approach above is usually more convenient. + ### macOS 1. Download the DMG file for your architecture (Apple Silicon or Intel). 2. Open the DMG file.