github ChaoticSi1ence/SlimBrave-Neo v2.3.1
v2.3.1 - Brave Origin support for Linux

3 hours ago

One thing this release: SlimBrave Neo runs on Brave Origin. Linux only — Origin is a paid upgrade elsewhere, and the Windows script is untouched.

One policy change, carried over from the 2026-09-07 audit: MediaRecommendationsEnabled is gone. Chromium removed its handler and its pref in 2021; the key validated, rendered in brave://policy, and did nothing. 78 rows over 74 keys now, down from 79 over 75. Nothing else about what gets written moved. An older export that still names the key is reported as ignored on import.

Linux: Brave Origin

Issue #13 asked for this in June and was declined on two doubts: that Origin might not read /etc/brave/policies, and that most rows would be dead there. Both are answered.

Origin reads the same directory as regular Brave. Verified on a real install, not assumed: brave-core sets /etc/brave/policies for every Linux build with no branding guard, the shipped Origin binary — byte-identical across the zip, the deb and the rpm — carries no /etc/brave-origin string, a running Origin holds inotify watches on /etc/brave/policies/managed itself, and an --import showed every key in chrome://policy as Platform, Machine, Mandatory, status OK. The /etc/brave-origin/policies/enrollment directory the deb and rpm mention is Chrome Browser Cloud Management's enrollment-token directory and never holds policy.

Detection. Origin is its own channel — origin, with origin-beta and origin-nightly for the beta and nightly packages. The Arch brave-origin-bin layout under /opt/brave-origin-bin, the official brave-origin deb and rpm under /opt/brave.com/brave-origin, and the launchers on PATH are all probed. The title bar reads [arch (Brave Origin)], [deb/rpm (Brave Origin)], or [arch: Stable, Origin] beside a regular Brave; --channels origin narrows the CLI to it. There is no Flatpak or Snap of Origin to look for, which was checked against Flathub, the Snap store and the packages themselves.

The rows Origin compiles out are shown inert, not as dead checkboxes. On a machine whose only Brave is Origin, the 13 rows whose policy handler is not in the binary — Rewards, Wallet, VPN, Leo, Local AI, News, Talk, Playlist, Web Discovery, Speedreader, Tor, Email Aliases, Wayback Machine — render as [-] … (built into Origin), dimmed, out of the section counts, untoggleable, never written or exported. The description pane says why on each. Importing a preset that names them reports 13 keys built into Brave Origin left unmanaged; the Brave Origin preset applied on Origin writes just P3A and the stats ping, the two of its fifteen keys Origin merely defaults off rather than removes. Every other row — autofill, passwords, sync, WebRTC, DoH, Shields, site permissions, all of Chromium's keys — is live on Origin, and that is the point of running the tool there.

Nothing changes off Origin. Rows go inert only when every detected Brave is Origin. A regular Brave found by package, Flatpak, Snap or launcher — launched or not — keeps every row live, because the one policy file serves both browsers; each detected install carries the machine-wide verdict, so --channels origin cannot narrow a mixed machine into an Origin-only one; the --policy-file override and macOS are untouched. A new notes line beside the warnings keeps the launch message in the normal colour.

Each of the 13 keys is tied to its #if BUILDFLAG guard in brave_simple_policy_map.h and the !is_brave_origin_branded line in its .gni at v1.94.121, and the set was confirmed on the shipped binary. The packaging table — Arch, deb, rpm, beta and nightly, Flatpak, Snap — and every receipt are in AUDIT.md under 2026-09-11.

Tested where, and where not. Detection, import, export, reset and the TUI were exercised as root on CachyOS with brave-origin-bin 1.94.121, and the change carries 64 new tests (489 in all, green on Ubuntu, macOS and Windows). The deb on Debian or Ubuntu, the rpm on Fedora or openSUSE, Origin beta or nightly, and mixed machines are inferred from the packages and the source, not yet observed. A checklist with the exact commands and expected output is TESTING-brave-origin.md on the brave-origin-detection branch; reports from any of those setups are welcome on #13.

Verifying this release

29989b618e062638b2b4548f76f9c0c2c1ff3c1a8c97df86debc0b60e55e1ff3  SlimBrave.ps1
04cf8f2e684a8d87e102abb851e79103317e8c815cfbc366cd5817b1c2b82e2a  slimbrave-linux.py
ce4d01efc48fce9805757045745625e5f6b7576cd359def11aa55ce6fda913c8  slimbrave-mac.py
Get-FileHash -Algorithm SHA256 .\SlimBrave.ps1
sha256sum slimbrave-linux.py     # Linux
shasum -a 256 slimbrave-mac.py   # macOS

These are the bytes GitHub serves, checked against the raw URL before publishing.

Don't miss a new SlimBrave-Neo release

NewReleases is sending notifications on new releases.