Skip to content

Auto-updater: wire tauri-plugin-updater to the existing release artifacts #23

Description

@sam-powers

There is currently no way for an installed copy of Quill to learn that a new version exists — users would have to re-visit the GitHub Releases page. The release workflow already builds the updater artifacts (Quill_aarch64.app.tar.gz / Quill_x64.app.tar.gz are attached to v0.1.0); what's missing is the plumbing.

Work

  1. Add tauri-plugin-updater (Rust + JS sides) and the createUpdaterArtifacts: true / signing config in src-tauri/tauri.conf.json.
  2. Generate an updater keypair (tauri signer generate); public key goes in tauri.conf.json, private key + password become repo secrets (TAURI_SIGNING_PRIVATE_KEY, TAURI_SIGNING_PRIVATE_KEY_PASSWORD) consumed by release.yml.
  3. Publish a latest.json manifest with each release — tauri-action can generate and attach it (includeUpdaterJson), and the updater endpoint can point at https://github.com/sam-powers/quill/releases/latest/download/latest.json.
  4. Frontend UX: check for updates on launch (and/or a "Check for Updates…" item in the app menu), prompt, download, relaunch. Keep it quiet on failure (offline etc.).
  5. Note: the update check must respect the unsaved-changes guard (guardDirty) before relaunching.

Natural headliner for v0.2 — it's the feature that makes every subsequent release reach users.

Related: #22 — notarized builds and updater signatures are independent mechanisms (Tauri updater uses its own minisign keypair), so this is not blocked on Apple signing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions