docs: Desktop-App — Update in der App (Handbücher, CI-Secrets, CHANGELOG)
- Anwenderhandbuch: Menüeintrag "Update installieren", Ablauf per Klick unter Windows/Linux, Fehlerfall, https-Bedingung, einmaliger Wechsel für Clients bis 1.2.0 - Betriebshandbuch Kap. 10: Signierschlüssel (Secrets, Ablage, Sicherung, Verlust), Kontrollzeile /desktop/update, Manifest-Felder, zwei Fehlerbilder - Entwicklungshandbuch: lokal `tauri build --no-sign`, Hinweise zu tauri dev - ci-cd-setup.md: die zwei neuen Secrets, Bau-Schritte signieren, Fehlerbild "no private key" - CHANGELOG: eine Zeile unter Unveröffentlicht → Neu Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -140,15 +140,31 @@ Version setzen und Linux-Paket bauen:
|
||||
|
||||
```bash
|
||||
sh .gitea/scripts/desktop-version.sh
|
||||
pnpm --filter @tessera/desktop exec tauri build --bundles appimage
|
||||
pnpm --filter @tessera/desktop exec tauri build --bundles appimage --no-sign
|
||||
```
|
||||
|
||||
`desktop-version.sh` schreibt die Version des letzten Freigabe-Tags in
|
||||
`tauri.conf.json`/`Cargo.toml` — die im Repository eingecheckten Versionsdateien
|
||||
sind nur eine Basislinie, nicht die tatsächliche Freigabeversion. Das fertige
|
||||
Paket liegt danach unter
|
||||
`apps/desktop/src-tauri/target/release/bundle/appimage/`. Um es wie die
|
||||
API es ausliefern würde einzusammeln:
|
||||
`apps/desktop/src-tauri/target/release/bundle/appimage/`.
|
||||
|
||||
**`--no-sign` ist lokal Pflicht.** Seit der Update-Funktion in der App
|
||||
verlangt `tauri build` den Signierschlüssel (Umgebungsvariable
|
||||
`TAURI_SIGNING_PRIVATE_KEY`), weil `bundle.createUpdaterArtifacts` und der
|
||||
öffentliche Schlüssel `plugins.updater.pubkey` in `tauri.conf.json` gesetzt
|
||||
sind — ohne Schlüssel bricht der Bau mit „A public key has been found, but no
|
||||
private key" ab. Mit `--no-sign` entsteht keine `.sig`-Datei;
|
||||
`desktop-collect.sh` warnt dann nur (Kanal `dev`) und lässt das Feld
|
||||
`signature` weg, und die API antwortet auf `GET /desktop/update` mit `204`.
|
||||
Der In-App-Update-Weg lässt sich lokal also nur mit dem echten Schlüssel
|
||||
durchspielen (Betriebshandbuch, Kapitel 10). Zwei Hinweise für `tauri dev`:
|
||||
Dort läuft die App ohne AppImage — den Update-Download (`download_and_install`)
|
||||
nie auslösen, er würde die Binary in `target/` überschreiben; die
|
||||
Versionsprüfung selbst ist im Debug-Bau auch gegen `http://localhost`
|
||||
erlaubt (das Plugin warnt nur, der Release-Bau lehnt `http` ab).
|
||||
|
||||
Um das Paket so einzusammeln, wie die API es ausliefern würde:
|
||||
|
||||
```bash
|
||||
sh .gitea/scripts/desktop-collect.sh --require linux
|
||||
|
||||
Reference in New Issue
Block a user