site/releases/index.html

101 lines
5.4 KiB
HTML
Raw Normal View History

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Silent Mode — releases &amp; checksums</title>
<style>
:root{--bg:#0b0e14;--panel:#141a24;--line:rgba(255,255,255,.09);--ink:#e7eaf1;--mut:#8b98a9;--dim:#5e6678;--acid:#d6ff3d}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(1100px 560px at 50% -12%,#16202e,var(--bg));
color:var(--ink);font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.wrap{max-width:820px;margin:0 auto;padding:3.5rem 1.2rem 4rem}
a{color:var(--acid)}
h1{font-size:1.8rem;margin:0 0 .3rem}
h1 .g{color:var(--acid)}
.lede{color:var(--mut);margin:.2rem 0 2rem}
.rel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin-bottom:16px}
.rel h2{font-size:1.15rem;margin:0 0 .2rem}
.rel .meta{color:var(--dim);font-size:12.5px;margin-bottom:1rem}
.file{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.file .n{font-size:14px;color:var(--ink)}
.file .n a{text-decoration:none}
.file code{display:block;font-family:ui-monospace,monospace;font-size:11.5px;color:#c9d4e3;
word-break:break-all;margin-top:4px}
.note{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--acid);
border-radius:10px;padding:14px 18px;color:var(--mut);font-size:13.5px;margin-top:1.6rem}
.note b{color:var(--ink)}
footer{color:var(--dim);font-size:12.5px;margin-top:2.5rem;text-align:center}
</style>
<link rel="stylesheet" href="../shared.css">
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
</head>
<body>
<nav class="topnav">
<a class="brand" href="../">⛓️ Silent <span class="g">Mode</span></a>
<a href="../tools/">Theseus</a>
<a href="../prometheus/">Prometheus</a>
<a href="../sirius/">Sirius</a>
<a href="../hephaestus/">Hephaestus</a>
<a href="../helios/">Helios</a>
<a href="../hermes/">Hermes</a>
</nav>
<div class="wrap">
<h1>Silent <span class="g">Mode</span> — releases</h1>
<p class="lede">Canonical SHA-256 checksums for every published build. This page lives at the on-chain
name <code>releases.silentmode.bch</code>; the name pins where it is served from, so a tampered
mirror cannot change what you check against here.</p>
<div class="rel">
Ship Theseus 0.2.5 50be20d6 (home page brand pass: .X acid + role badges) Setup 50be20d6e3811445817e35c560dce1a4bbcc62004d6b0480848a211a654319ea Portable 021afe629c61f2f49e95f936261649bdcff58c8b79bd0d903a8d10e6009740b0 Home page card grid gets a brand pass. Each title's TLD suffix (.X, .bch, ...) is now styled in acid (--acid) with a soft text-shadow glow. styledTitle() splits the domain on the last dot so capital labels like "Theseus.X" render as ink + acid. Card copy tightened per name: hello.bch A small page on the blockchain itself. siatest.bch A page with no server, backed by Sia. SilentMode.X Infrastructure development for a decentralized web. Theseus.X The Web Navigator - this browser's own address. Sirius.X Register and manage BCDN names. Hephaestus.X The forge - Silent Mode's code host. Prometheus.X An app store - a marketplace for BCDN-hosted apps. Helios.X Search engine for the decentralized web (in design). Hermes.X Messaging - end-to-end encrypted over Nostr. Badges: dropped the generic ".x" tag; each .X card carries its role label instead. Palette assigns each role a distinct hue drawn from the existing provenance colors, so the grid reads as families without adding new brand values: Infrastructure / Registrar acid Navigator blue Code host sia purple App store srv teal Search warn amber Messaging err coral Descriptions brighten from --mut to --ink on card hover so the ink color reads as the "acid touch" the user asked for without adding literal green blocks to every card. Deployed: scp installers + manifest + tools/ + releases/ pages to VPS, sia-upload of both trees, verified HEAD 200 + manifest 0.2.5.
2026-08-31 18:03:02 +02:00
<h2>Theseus Navigator <span style="color:var(--acid)">0.2.5</span></h2>
Ship Theseus 0.2.0 c5202ddb (add-on framework + branded error pages) Setup c5202ddba5a4bf4cd8d71c665c72bdd996ced761f9a7aae295cb960e17988f47 Portable 9142764f78e41c6a6220960d5f7278e0abe6c1c91e5033871d95225355d8feda 0.1.x -> 0.2.x — two new subsystems land together. 0.1.3 (which had only the error pages) is retired; those hashes never went live, so we jump 0.1.2 -> 0.2.0 for clean version->hash 1:1. Add-on framework: - Discovery scans <userData>/addons/<id>/; each add-on carries an addon.json manifest and an activate(api) CommonJS entry. Nothing about a private add-on ships in the public build - drop the folder, restart, it's live. - Bundled 'Notepad' reference add-on ships in resources/bundled-addons/ and is seeded into the user's addons dir on first boot. Right- sidebar textarea, autosave, char/word counter. - Extension point in this rev: sidebar-panel (WebContentsView on the right, SIDEBAR_W=340). Toolbar toggle appears only when at least one add-on registers a panel. - Settings gains an Add-ons tab: list installed, per-add-on enable/ disable toggle (settings.disabledAddons persists), Show folder / Open add-ons folder / Reload buttons, trust-model warning. - Origin-gated per-addon storage: main derives the add-on id from the sender file:// URL, so a panel can only touch its own kv store under <userData>/addons-data/<id>.json. Branded error page: - did-fail-load on every tab -> error.html with kind = name-not- registered (BCNR host + ERR_NAME_NOT_RESOLVED) | name-unreachable (non-BCNR host + NAME_NOT_RESOLVED) | unreachable (conn refused/ reset/timeout) | tls (cert range) | generic. - Actions per kind: Retry + Home always; Search for '<host>' and Register-on-Sirius where a host is present; Tor guide link on unreachable. - Address bar keeps the failed URL (refreshTabUrl already skips file://) so the user can edit and retry. - Ignorable codes (-3 ABORTED, -20 BLOCKED_BY_CLIENT, subframe errors, internalNav) skipped so normal user actions don't paint an error page. Deployed: - scp installers + manifest + tools/ + releases/ pages to VPS - sia-upload of ../site (silentmode.bch) and ../site-theseus-x - verified HEAD 200, manifest reads 0.2.0 2026-08-31 Existing 0.0.6/0.1.2 installs will surface 0.2.0 in the update chip on next launch.
2026-08-31 14:06:18 +02:00
<div class="meta">Windows 64-bit · unsigned · 2026-08-31 · <b>Add-on framework + branded error pages</b> — Settings > Add-ons lists modules under &lt;userData&gt;/addons/; drop a folder in, restart, it's live. Notepad reference add-on ships in the box. Load failures now show a name-not-registered / unreachable / TLS / generic error page with Retry + Search + Register-on-Sirius actions; the address bar keeps the failed URL. Carries the Ariadne bundle and Startpage POST fix from 0.1.2.</div>
<div class="file">
Ship Theseus 0.2.5 50be20d6 (home page brand pass: .X acid + role badges) Setup 50be20d6e3811445817e35c560dce1a4bbcc62004d6b0480848a211a654319ea Portable 021afe629c61f2f49e95f936261649bdcff58c8b79bd0d903a8d10e6009740b0 Home page card grid gets a brand pass. Each title's TLD suffix (.X, .bch, ...) is now styled in acid (--acid) with a soft text-shadow glow. styledTitle() splits the domain on the last dot so capital labels like "Theseus.X" render as ink + acid. Card copy tightened per name: hello.bch A small page on the blockchain itself. siatest.bch A page with no server, backed by Sia. SilentMode.X Infrastructure development for a decentralized web. Theseus.X The Web Navigator - this browser's own address. Sirius.X Register and manage BCDN names. Hephaestus.X The forge - Silent Mode's code host. Prometheus.X An app store - a marketplace for BCDN-hosted apps. Helios.X Search engine for the decentralized web (in design). Hermes.X Messaging - end-to-end encrypted over Nostr. Badges: dropped the generic ".x" tag; each .X card carries its role label instead. Palette assigns each role a distinct hue drawn from the existing provenance colors, so the grid reads as families without adding new brand values: Infrastructure / Registrar acid Navigator blue Code host sia purple App store srv teal Search warn amber Messaging err coral Descriptions brighten from --mut to --ink on card hover so the ink color reads as the "acid touch" the user asked for without adding literal green blocks to every card. Deployed: scp installers + manifest + tools/ + releases/ pages to VPS, sia-upload of both trees, verified HEAD 200 + manifest 0.2.5.
2026-08-31 18:03:02 +02:00
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-Setup-0.2.5.exe">TheseusNavigator-Setup-0.2.5.exe</a> — installer</div>
<code>50be20d6e3811445817e35c560dce1a4bbcc62004d6b0480848a211a654319ea</code>
</div>
<div class="file">
Ship Theseus 0.2.5 50be20d6 (home page brand pass: .X acid + role badges) Setup 50be20d6e3811445817e35c560dce1a4bbcc62004d6b0480848a211a654319ea Portable 021afe629c61f2f49e95f936261649bdcff58c8b79bd0d903a8d10e6009740b0 Home page card grid gets a brand pass. Each title's TLD suffix (.X, .bch, ...) is now styled in acid (--acid) with a soft text-shadow glow. styledTitle() splits the domain on the last dot so capital labels like "Theseus.X" render as ink + acid. Card copy tightened per name: hello.bch A small page on the blockchain itself. siatest.bch A page with no server, backed by Sia. SilentMode.X Infrastructure development for a decentralized web. Theseus.X The Web Navigator - this browser's own address. Sirius.X Register and manage BCDN names. Hephaestus.X The forge - Silent Mode's code host. Prometheus.X An app store - a marketplace for BCDN-hosted apps. Helios.X Search engine for the decentralized web (in design). Hermes.X Messaging - end-to-end encrypted over Nostr. Badges: dropped the generic ".x" tag; each .X card carries its role label instead. Palette assigns each role a distinct hue drawn from the existing provenance colors, so the grid reads as families without adding new brand values: Infrastructure / Registrar acid Navigator blue Code host sia purple App store srv teal Search warn amber Messaging err coral Descriptions brighten from --mut to --ink on card hover so the ink color reads as the "acid touch" the user asked for without adding literal green blocks to every card. Deployed: scp installers + manifest + tools/ + releases/ pages to VPS, sia-upload of both trees, verified HEAD 200 + manifest 0.2.5.
2026-08-31 18:03:02 +02:00
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-0.2.5-portable.exe">TheseusNavigator-0.2.5-portable.exe</a> — portable</div>
<code>021afe629c61f2f49e95f936261649bdcff58c8b79bd0d903a8d10e6009740b0</code>
</div>
</div>
<div class="rel">
<h2>Ariadne Resolver — Windows <span style="color:var(--acid)">0.1.0</span></h2>
<div class="meta">Windows 64-bit · unsigned · bundled Node runtime · 2026-07-28</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/AriadneResolver-Setup-0.1.0.exe">AriadneResolver-Setup-0.1.0.exe</a> — ~24 MB</div>
Ariadne 9ab725be: default installer to -Mode nrpt (surgical) Change the Inno [Run] entry from install.ps1 -Mode full -> install.ps1 -Mode nrpt Rationale (observed today on the operator's machine): Full mode repoints adapter DNS at 127.0.0.1, so every DNS query goes through the daemon's forwarder. bnsd.js's raw-dgram forwarder has a known EDNS/AAAA bug -- strict clients using getaddrinfo (Chrome, Yandex, Firefox, Node) reject some forwarded replies with "non-recoverable error". Concretely today, github.com / duckduckgo.com / www.coinex.com all failed in Yandex while silentmode.bch loaded fine. Surgical (NRPT) mode routes only activated BCNR TLDs to the daemon (fetched from tlds.bch at install time -- currently bch, p2p, deviant, nav, sia, dgb, nt, sm, lm). Everything else stays on the adapter's DHCP DNS, sidestepping the forwarder bug entirely. Users still get the "resolves any BCNR TLD in every browser" promise for the entire on-chain activated set. Full mode remains available for anyone who explicitly opts in by running install.ps1 -Mode full themselves. Default flips back once the forwarder bug is repaired (memory: silentmode-build-state.md). - SHA-256: 9ab725bec5567625e5857a49b112c4fbc0f59dbdd623abd7110429306f5d0ddb - Deployed to dl.silentmode.st, site pages + manifest updated, Sia mirror re-uploaded. Coordinates with a parallel-session build that briefly landed cb9e8ea0 in the site references without a matching binary; resolved to my build since only its bytes exist locally.
2026-08-14 23:33:29 +02:00
<code>9ab725bec5567625e5857a49b112c4fbc0f59dbdd623abd7110429306f5d0ddb</code>
</div>
</div>
<div class="rel">
Ship Ariadne 0.11: Sia CDN pull + gitignore _prev/ Mobile parity with Theseus 0.0.7's multi-source model, one source at a time. Ships: * Bns.pullSiaIndex() — fetches dl.silentmode.st/bns-name-index.json (the operator's latest published interpreted BNS snapshot) on a background thread. Installs the result as the current index + persists to disk cache when we don't already have something fresher. Best-effort: silent on failure, on-device electrum still runs. * MainActivity fires the pull once per applyResolverSettings(), racing the bundled starter + on-device electrum. The bundled starter wins the very first navigation (already in memory); the Sia pull wins any subsequent cold start after an operator publish; electrum wins steady-state via the existing INDEX_TTL_MS refresh. * publish-name-mirror.mjs now uploads three shapes to Sia (raw snapshot, raw immutable, mobile-shape floating, mobile-shape immutable) AND scps the mobile-shape floating pointer to the CDN so anonymous clients can actually GET it. The s3.silentmode.st bucket rejects anon reads today; the CDN copy is the workaround, same bytes. * Cannot use Sia direct for now: s3d bucket policy blocks anon reads. Documented in Bns.SIA_INDEX_URL — swap URL when the policy changes. Version bump: 0.10 → 0.11 (versionCode 11, versionName 0.11). Also: .gitignore TheseusNavigator/_prev/ — the ~372 MB local rollback dir that kept appearing as untracked in every git status. ariadne-v0.11.apk 124 KB 03c95832c16cc4763acaadbf328caa7d4bd05fc7c2994f6997a79cc6890bca44
2026-08-31 01:05:20 +02:00
<h2>Ariadne for Android <span style="color:var(--acid)">0.11</span></h2>
<div class="meta">Android 5.0+ (API 21) · self-signed release key · 2026-08-30 · adds Sia CDN pull to the APK-bundled starter — post-install cold starts now catch up from the operator's latest published snapshot in one HTTP call</div>
<div class="file">
Ship Ariadne 0.11: Sia CDN pull + gitignore _prev/ Mobile parity with Theseus 0.0.7's multi-source model, one source at a time. Ships: * Bns.pullSiaIndex() — fetches dl.silentmode.st/bns-name-index.json (the operator's latest published interpreted BNS snapshot) on a background thread. Installs the result as the current index + persists to disk cache when we don't already have something fresher. Best-effort: silent on failure, on-device electrum still runs. * MainActivity fires the pull once per applyResolverSettings(), racing the bundled starter + on-device electrum. The bundled starter wins the very first navigation (already in memory); the Sia pull wins any subsequent cold start after an operator publish; electrum wins steady-state via the existing INDEX_TTL_MS refresh. * publish-name-mirror.mjs now uploads three shapes to Sia (raw snapshot, raw immutable, mobile-shape floating, mobile-shape immutable) AND scps the mobile-shape floating pointer to the CDN so anonymous clients can actually GET it. The s3.silentmode.st bucket rejects anon reads today; the CDN copy is the workaround, same bytes. * Cannot use Sia direct for now: s3d bucket policy blocks anon reads. Documented in Bns.SIA_INDEX_URL — swap URL when the policy changes. Version bump: 0.10 → 0.11 (versionCode 11, versionName 0.11). Also: .gitignore TheseusNavigator/_prev/ — the ~372 MB local rollback dir that kept appearing as untracked in every git status. ariadne-v0.11.apk 124 KB 03c95832c16cc4763acaadbf328caa7d4bd05fc7c2994f6997a79cc6890bca44
2026-08-31 01:05:20 +02:00
<div class="n"><a href="https://dl.silentmode.st/ariadne-v0.11.apk">ariadne-v0.11.apk</a> — 124 KB</div>
<code>03c95832c16cc4763acaadbf328caa7d4bd05fc7c2994f6997a79cc6890bca44</code>
</div>
<div class="file">
<div class="n">Signing certificate — SHA-256 (the same key signs every future release)</div>
<code>46ebbbe5dc73148d66410fd0337b1e6683472128c983e8e2578200b9e3ca548c</code>
</div>
</div>
<div class="note"><b>How to verify.</b> After downloading, compute the file's SHA-256 and compare it to
the value above — on Windows: <code style="display:inline">certutil -hashfile &lt;file&gt; SHA256</code>;
on Android, hash the downloaded <code style="display:inline">.apk</code> on a computer before you move
it to the phone, or use any file-hashing app. Nothing here is signed by an authority your device
already trusts — <b>by design</b> — so it will warn about an unrecognized app; the checksum is the
real check. The machine-readable manifest is at
<a href="https://dl.silentmode.st/releases-manifest.json">releases-manifest.json</a>.</div>
<footer>Silent Mode — a Deviant project. Alpha software on a test network.</footer>
</div>
</body>
</html>