Editor-Updates ausrollen
Die Desktop-App aktualisiert sich selbst über das Tauri-Updater-Plugin. Der Feed ist eine statische JSON-Datei auf dem NAS, keine zweite API. Entscheidung: ADR-0018.
Nutzer: Hilfe → Über Linetra Editor (installierte Version) und Hilfe → Auf Updates prüfen.
Agenten schneiden ein Editor-Release mit /release: Changelog + Version-Pins, Tag, signierte Bundles, latest.json, Upload auf die Feed-URL unten.
Ablauf (Betreiber)
- Changelog
[Unreleased]in eine Version## [x.y.z] - YYYY-MM-DDumhängen; SemVer inpackage.json,src-tauri/tauri.conf.jsonundsrc-tauri/Cargo.tomlgleichsetzen. - Signiert bauen (privater Key nur lokal, siehe Editor-README):
cd linetra-editor
export TAURI_SIGNING_PRIVATE_KEY=src-tauri/updater.key
./scripts/build-release.sh
# auf einem Mac zusätzlich:
# ./scripts/build-macos.sh
- Feed schreiben (nimmt vorhandene
.AppImage/ NSIS /.app.tar.gzplus.sigunterreleases/):
./scripts/write-latest-json.sh "Kurze Release-Notes"
-
Dateien aus
latest.jsonundreleases/latest.jsonnacheditor-updates/files/auf dem NAS kopieren (Compose-Serviceeditor-updates, TraefikPathPrefix(/editor-updates)). URLs in der JSON müssen zu den Dateinamen passen, z. B.https://linetra.nasarek.dev/editor-updates/Linetra-Editor_X.Y.Z_amd64.AppImage. -
Probe: installierte ältere Version → Hilfe → Auf Updates prüfen muss im Dialog
Update x.y.z verfügbarzeigen; Update installieren lädt, prüft die Signatur und startet neu.
latest.json darf Plattformen weglassen, die in diesem Release fehlen (kein Windows-Eintrag → Windows-Clients bleiben auf der alten Version).
Erstinstallation vs. Update
| OS | Neu installieren | In-App-Update |
|---|---|---|
| Linux | .deb / .rpm oder AppImage |
AppImage + .sig |
| Windows | NSIS *-setup.exe |
dieselbe .exe + .sig |
| macOS | .dmg |
.app.tar.gz + .sig |
Der öffentliche Key steht in tauri.conf.json. Wechsel des Key-Paars erzwingt eine Neuinstallation.