Auto-Updates
Desktop app auto-update mechanism via tauri-plugin-updater and GitHub Releases.
The desktop app self-updates using tauri-plugin-updater, fetching updates directly from GitHub Releases.
How It Works
- Desktop checks
latest.jsonfrom the latest GitHub Release - If a newer version is available, the user sees an update banner
- Desktop downloads the update artifact directly from GitHub
- Update is verified with minisign signature
- User is prompted to install and restart
Signing
Updates are signed with a private key:
# Set in shell environment (NOT .env file)
export TAURI_SIGNING_PRIVATE_KEY="content-or-path-to-private-key"
export TAURI_SIGNING_PRIVATE_KEY_PASSWORD=""The corresponding public key is embedded in tauri.conf.json under the updater config.
Update Banner
The UpdateBanner component (apps/desktop/src/components/UpdateBanner.tsx) shows a notification bar when an update is available, with options to download and install.
Hook
The useUpdater hook (apps/desktop/src/hooks/useUpdater.ts) manages the update lifecycle:
- Periodic update checks
- Download progress tracking
- Install triggering