From 4e3fc4bb3d4493b8bf6cb875f9af3e23fbde222b Mon Sep 17 00:00:00 2001 From: Local Dev Date: Tue, 27 Oct 2026 23:01:11 +0200 Subject: [PATCH] =?UTF-8?q?Theseus=200.3.127:=20System=20section=20tighten?= =?UTF-8?q?s=20=E2=80=94=20direct=20Ariadne,=20master=20N&C=20toggle,=20tr?= =?UTF-8?q?ust=20is=20implicit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit System row changes: * Ariadne's Thread row has a direct open: the label jumps straight to the Ariadne plug-in sub-page (no intermediate landing). A toggle on the right runs ariadneToggle through the existing shared hook, so Ariadne can be turned on/off from the System page without opening it. * Names & Certificates row gets a master toggle. ON means at least one optional resolver is enabled; flipping it enables or disables every optional resolver together (BNS is always on either way). The per- resolver advanced fields are preserved, so toggling back ON restores the same configuration. * Aegis row is removed from System — Aegis stays as its own top-level nav entry, so having it in two places was clutter. * "About plug-ins on theseus.x" link moved from the System header to the plug-ins Ariadne sub-page, where it is actually about something. Trust surface simplified: * Mozilla CA bundle and the Russian National CA are both always on. The Mozilla bundle was already always-on; the Russian CA defaults to enabled, scoped to .ru / .рф / gov.ru / online.ru. The scope keeps the Russian CA from signing for anything else on the web, so the UI toggle was moot — removed to shrink the Certificate trust section. The caRuOn and caRuScope inputs remain in the DOM as hidden placeholders so the existing init / save code keeps working. Breadcrumbs on plugins-ariadne and plugins-aegis sub-pages now read "System ›" instead of "Plug-ins ›" to match the renamed nav entry. --- main.js | 7 +++- package.json | 2 +- settings.html | 113 +++++++++++++++++++++++++++++--------------------- 3 files changed, 73 insertions(+), 49 deletions(-) diff --git a/main.js b/main.js index c643493b..369cbac1 100644 --- a/main.js +++ b/main.js @@ -1042,7 +1042,12 @@ const DEFAULT_EXTRA_RESOLVERS = { unstoppable: { enabled: false, endpoint: "https://resolve.unstoppabledomains.com", gateway: "https://ipfs.io" }, }, ca_bundles: { - ru_national: { enabled: false, scope_tlds: ["ru", "рф", "gov.ru", "online.ru"] }, + // Mozilla bundle is always on (Chromium's own trust store); kept here + // for completeness. Russian national CA defaults on too — scoped to + // its own TLD set so no sites outside that scope ever see it, and the + // UI toggle was dropped in 0.3.127 since the scope makes the on/off + // moot. Advanced users still edit extra-resolvers.json by hand. + ru_national: { enabled: true, scope_tlds: ["ru", "рф", "gov.ru", "online.ru"] }, }, }; function cloneExtraResolvers() { return JSON.parse(JSON.stringify(DEFAULT_EXTRA_RESOLVERS)); } diff --git a/package.json b/package.json index 5e8a3e08..eb2ec4b4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "theseus-navigator", - "version": "0.3.126", + "version": "0.3.127", "license": "MPL-2.0", "description": "Theseus Navigator — a browser that follows the thread. By Silent Mode, a Deviant project.", "author": "Silent Mode", diff --git a/settings.html b/settings.html index 34c32d89..35a7de22 100644 --- a/settings.html +++ b/settings.html @@ -547,29 +547,14 @@ -

Certificate trust (TLS)

- -
-
-
Built-in Mozilla CA bundle
-
The standard trust anchors that ship with Theseus.
-
- -
- -
-
-
Russian National CA
-
- Lets Theseus open Russian government sites (gosuslugi.ru, nalog.gov.ru, …) that use the Russian national cert chain. Does not bypass network-level blocks — use Tor for that. -
⚠ Trust is scoped to the TLDs below only. The CA cannot sign for other sites while this scope is in place. Mozilla and Chrome do not trust this CA by default. Not wired yet — coming in 0.3.99. -
-
Advanced - - -
-
- + +

Preferences file

@@ -591,32 +576,36 @@ nav just reads System in the sidebar now). -->