Ship Theseus 0.3.1 fe59105d (one-click updates: silent prefetch + install-and-restart)

Setup    fe59105d2e99a41b7000caeb86601a8e1675846d193e92204034669f5b368d60
Portable 1b6eda55b53894cf9889548116c7b6100888fb160edc84cc1592bb79f9d95b53

The update flow no longer asks the user to click Download. When
checkForUpdate detects a newer version, autoDownloadUpdate() kicks off
session.defaultSession.downloadURL against the setup URL immediately.
will-download recognises the update URL and routes the file to a
fixed %TEMP% path (bypassing the visible downloads panel entirely),
streams updateDownloadReceived/Total into the chip via
emitUpdateAvailable, and flips updateDownloadState to "ready" when
the transfer finishes.

Chip states:
  idle         first render before the fetch starts — clickable to
               trigger the manual download (kept as a fallback).
  downloading  "↓ 42% — 0.3.2" — no click, just progress.
  ready        "✓ Install 0.3.2 & restart" — one click.
  failed       fall back to the pre-0.3.1 explicit-download click.

install-update-now IPC: spawns the cached setup with /S (detached,
stdio ignored), then app.quit() 400ms later so the installer can
overwrite the running exe. Our nsis/installer.nsh detects an existing
Ariadne install via the HKLM registry and skips its Ariadne prompt on
upgrades, so the /S run is fully unattended.

The one-click flow eliminates two long-standing sources of confusion:
  - "Download opens a different browser" — Theseus's default session
    fetches the installer itself, not a URL handoff to shell.
  - "Update requires multiple wizard clicks" — /S skips them.

Extensions aren't touched by this. The framework lives in
addons-host.js + sidebar-preload.js; add-ons themselves live in
%APPDATA%\Theseus Navigator\addons\<id>\ and are a separate layer.
New extensions ship by drop-a-folder, no browser release required.

Deployed: scp + sia-upload, verified 200 + 0.3.1 in the manifest.
This commit is contained in:
Local Dev 2026-08-31 18:47:50 +02:00
parent 3cb76d4a5e
commit c87ba993a1

View file

@ -233,14 +233,14 @@
<h3>Theseus for Windows</h3>
<p>Full-window desktop browser with Tor toggle and the multi-source BNS
warm-start.</p>
<div class="meta">v0.3.0 · installer ~118 MB (bundles Ariadne's Thread) · portable ~116 MB · unsigned</div>
<div class="meta">v0.3.1 · installer ~118 MB (bundles Ariadne's Thread) · portable ~116 MB · unsigned</div>
<div class="btns">
<a class="btn acid" href="https://dl.silentmode.st/TheseusNavigator-Setup-0.3.0.exe">Installer</a>
<a class="btn ghost" href="https://dl.silentmode.st/TheseusNavigator-0.3.0-portable.exe">Portable .exe</a>
<a class="btn acid" href="https://dl.silentmode.st/TheseusNavigator-Setup-0.3.1.exe">Installer</a>
<a class="btn ghost" href="https://dl.silentmode.st/TheseusNavigator-0.3.1-portable.exe">Portable .exe</a>
</div>
<div class="hashes" id="hashes-win">
<div class="h"><b>Installer</b><code>bb9d8dec124b8e2a976642ed77051b04edd1d03185581f99db845ef168919836</code></div>
<div class="h"><b>Portable</b><code>1e2d02aea13656574c374440b0c41374290f1bbf85ac6313cec075292cfc34f8</code></div>
<div class="h"><b>Installer</b><code>fe59105d2e99a41b7000caeb86601a8e1675846d193e92204034669f5b368d60</code></div>
<div class="h"><b>Portable</b><code>1b6eda55b53894cf9889548116c7b6100888fb160edc84cc1592bb79f9d95b53</code></div>
</div>
</div>