updater: add built-in Windows updates#205
Draft
amanthanvi wants to merge 1 commit into
Draft
Conversation
Integrate WinSparkle into the Windows Chromium patchset, wire the existing Helium services update preference to Windows appcasts, and teach the NSIS installer an /UPDATE flow suitable for in-process upgrades.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For your pull request to not get closed without review, please confirm that:
If such issue did not exist before, I opened one.
otherwise I have marked my PR as draft.
organization if I lied by checking any of these checkboxes.
no way be applied to other platforms.
Adds an in-process WinSparkle-based updater for Helium on Windows, wired through the existing Helium services preference/origin plumbing and reusing the NSIS installer in
/UPDATEmode.Summary
WinSparkle.dllinto official Windows build outputs/UPDATEmode for updater-triggered installs and move temporary extraction to$PLUGINSDIRValidation
Ran locally:
./helium-chromium/devutils/lint.py -t .bash ./devutils/check_patch_files.shgit diff --checkI could not do a real Windows build/runtime test from this Linux host, so this is opened as a draft.
Companion PR
Notes
This keeps the existing Helium privacy/update control surface intact:
This version uses HTTPS appcasts plus installer Authenticode verification before execution, but it does not yet add signed Windows appcast metadata / signer pinning with parity to the macOS Sparkle pipeline.
AI assistance disclosure
Assisted by the pi coding harness, including parallel pi subagent review passes. Models used during the work included
anthropic/claude-opus-4-6,anthropic/claude-sonnet-4-5,openai-codex/gpt-5.4,openai-codex/gpt-5.4-mini, andopenai-codex/gpt-5.3-codex.I manually reviewed and curated the final diff.