Auto-updater for Windows and Linux tarball installs (signed feed, background download, verified apply, rollback) #421
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#421
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Builds on #293 (update check / notification). Linux users on the apt repo, Flatpak and (soon) the pacman repo (#419) already get updates from their package manager. Windows installs and Linux tarball installs have no way to update except downloading by hand.
Goal
An opt-in auto-updater for:
Pieces
C28FDB4A40AA8360D8DF0470AD8E61526C06E929, CI subkey). #293's check reads the same feed./S) to the same install path, or swap the zip contents through a small updater helper exe, since the running viewer can't replace itself. Handle UAC (per-user installs in%LOCALAPPDATA%avoid admin), and keep the previous version so a failed update can roll back. Windows Authenticode signing is tracked separately (the Windows signing ticket): unsigned installers trigger SmartScreen.Slipstream-<version>/), atomically switch a symlink / the launcher, keep the previous version for rollback, and clean up old ones (keep 1-2).UpdaterServiceSetting,UpdaterWillingToTest; LL's updater is#if 0'd inllappviewer.cpp~1228); the wiki currently notes that they do nothing.Done when
Shipped in 1.3.0 Beta 1, off by default (Preferences checkbox UpdateAutoInstall). The signing key is set up (Forgejo variable UPDATE_PUBKEY_HEX, secret UPDATE_SIGNING_KEY), and 1.3.0-beta.1 is the first release with a signed update-manifest.json. To test: Linux tarball update and rollback with the checkbox on, and once on a real Windows machine (the installer hand-off has never run) before telling users about it.
Fixed in Slipstream 1.3.0 (stable): https://git.slipstreamviewer.org/sky_line/Slipstream/releases/tag/v1.3.0
If you still see this on 1.3.0, reply here and we'll reopen it.