Skip to content

Add automatic update checking and installation support - #2

Merged
jspwrd merged 1 commit into
mainfrom
claude/automate-ota-releases-3rUMo
Mar 12, 2026
Merged

Add automatic update checking and installation support#2
jspwrd merged 1 commit into
mainfrom
claude/automate-ota-releases-3rUMo

Conversation

@jspwrd

@jspwrd jspwrd commented Mar 12, 2026

Copy link
Copy Markdown
Owner

Summary

This PR adds automatic update checking and installation functionality to the application using Tauri's updater plugin. The app now checks for updates on startup and can download and install them with progress tracking.

Key Changes

  • New updater module (src/updater.ts): Implements checkForUpdates() function that checks for available updates, downloads them with progress logging, and relaunches the application
  • Update check on app startup: Integrated update checking into the App component's initialization lifecycle
  • Tauri configuration: Added updater plugin configuration to tauri.conf.json with GitHub releases endpoint
  • GitHub Actions workflow:
    • Added generate-signing-key.yml workflow for generating Tauri updater signing keys
    • Updated release.yml to sign releases and generate updater metadata with updaterJsonPreferNsis: true
  • Plugin integration: Added tauri-plugin-updater and tauri-plugin-process dependencies and initialized them in the Tauri backend
  • Capabilities: Updated default capabilities to include process:allow-restart and updater:default permissions

Implementation Details

  • The checkForUpdates() function accepts an optional interactive parameter to control logging behavior
  • Download progress is tracked and logged with chunk-based updates
  • The update endpoint is configured to fetch latest.json from GitHub releases
  • Windows installations use passive mode for a seamless update experience
  • The public key for signature verification needs to be added to tauri.conf.json before deployment

https://claude.ai/code/session_01XaTAuPhJxfhe8wMWUqfaSz

- Add tauri-plugin-updater and tauri-plugin-process to Rust and JS deps
- Configure updater endpoint pointing to GitHub releases latest.json
- Register updater and process plugins in the Tauri app builder
- Add updater and process permissions to app capabilities
- Add frontend update check on app startup (src/updater.ts)
- Update release workflow: enable signing, publish releases (non-draft),
  and generate updater JSON artifacts for all platforms
- Add generate-signing-key workflow for initial key pair setup

https://claude.ai/code/session_01XaTAuPhJxfhe8wMWUqfaSz
@jspwrd
jspwrd merged commit 86e1885 into main Mar 12, 2026
4 checks passed
@jspwrd
jspwrd deleted the claude/automate-ota-releases-3rUMo branch April 22, 2026 03:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants