In-app updater (check releases, show changelog, download + install) #4
Reference in New Issue
Block a user
Delete Branch "feat/app-updater"
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?
Adds a Software update card in Settings so users can update AeroFetch from inside the app.
Flow: Check for updates ? see the new version + its release notes ? Update now (downloads the installer with a progress bar and launches it) or View release.
How it works
src/main/updater.tsreads the configured Gitea repo's latest release via the public REST API, compares the tag toapp.getVersion(), and streams the installer to the temp dir, then launches it and quits..exein our temp dir is ever run - the release JSON can't redirect us elsewhere. No token is shipped; the source repo must be anonymously readable.app:update-check/-download/-run+ a progress push channel (exposed through preload).Heads-up: the update source is a constant at the top of
updater.ts(currentlydebont80/AeroFetch). Downloads only work once that repo's releases are anonymously accessible (public repo + anonymous API/asset access on the Gitea instance) - until then the check reports it couldn't reach the server.Branched from your current
main(v0.4.0). Typecheck + 140 tests pass; fullelectron-vite buildclean; UI verified in the browser preview.