Skip to content

Add signed cross-platform update installation #532

Description

@enaboapps

Context

The Rust/Tauri app currently checks whether an update exists but cannot download, install, retry, restart, or report progress. Its updater endpoint and signing key are also unconfigured. The archived C# app provided automatic checks and one-click installer application (see #445 and switchify-pc-legacy).

Required behavior

  • Configure a signed Tauri updater feed through the release pipeline without committing private signing material.
  • Support Windows and macOS update artifacts.
  • Check automatically at startup and on a recurring schedule while retaining manual checks.
  • Expose available, downloading, ready-to-install, applying, current, and failed states.
  • Show download progress and allow retry after download or installer-launch failures.
  • Install the update and restart when required.
  • Deduplicate concurrent checks and installs.

Acceptance criteria

  • Signed Windows and macOS artifacts can be discovered by a packaged app.
  • Users can check, download, install, and restart from the app.
  • Automatic checks do not overlap or interrupt installation.
  • Progress and actionable failures are accessible.
  • Unpackaged or unconfigured builds fail clearly without crashing.
  • Rust tests cover transitions, retry, cancellation, and concurrency.
  • Release configuration is validated in CI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions