Skip to main content

max / alloy

Name the two recommended browsers, and fix what that breaks Ruled by Max 2026-08-17: the browser role's two recommendations are stock Firefox and Helium, one Gecko and one Blink, which is the shape the role's own argument implies. "stock" is already the state and needs no code change; the Firefox estate went when Helium came in. What the ruling breaks is this file's justification for that deletion, which read "it is affordable here because the recommended browser already behaves that way". True while Helium was the only recommendation, false now: stock Firefox arrives with telemetry on, sponsored shortcuts, Pocket, and tracking protection at standard rather than strict, which is most of what the deleted mozilla.cfg set. Resolved by describing rather than configuring, which is the informing clause settled the same day. Also records the clarification it forces: earning a recommendation by not needing configuration is a test for what Alloy picks as a default, not a bar on what it offers as a bring-your-own candidate, whose test is provenance and an accurate account.
Author: Max Johnson <me@maxj.phd> · 2026-08-17 22:31 UTC
Signed with PGP, not checked
Commit: c638ff9e2d10712f269b0e1d60d65724c715654b
Parent: 67c1014
1 file changed, +7 insertions, -1 deletion
M docs/STACK.md +7 -1
@@ -192,7 +192,13 @@
192 192
193 193 The package is `helium-browser-bin` from Terra, the repo Alloy already enables for satty, currently 0.14.9.1. Helium's own code is GPL-3.0; what it imports from ungoogled-chromium keeps its BSD-3-Clause terms. Nothing in Alloy links either, so this sits on the same aggregation footing as Distrobox, greetd and tuigreet, which are GPL-3.0-only in the image already.
194 194
195 - **What Alloy used to ship here, and no longer does.** Five files went with this change: an enterprise policy pinning uBlock Origin and disabling telemetry, Pocket, studies, sponsored tiles and password saving; a `mozilla.cfg` of around fifty default prefs; the autoconfig pointer that loaded it; a `profiles.ini` naming a fixed-path profile; and roughly two hundred lines of `userChrome.css`. That CSS described its own purpose in its header as "Helium-style ultra-compact horizontal". It was emulating a browser that is packaged, so the emulation had no reason to exist. The fifty prefs were not only cosmetic, and dropping them on a browser with bad defaults would be indefensible. It is affordable here because the recommended browser already behaves that way.
195 + **What Alloy used to ship here, and no longer does.** Five files went with this change: an enterprise policy pinning uBlock Origin and disabling telemetry, Pocket, studies, sponsored tiles and password saving; a `mozilla.cfg` of around fifty default prefs; the autoconfig pointer that loaded it; a `profiles.ini` naming a fixed-path profile; and roughly two hundred lines of `userChrome.css`. That CSS described its own purpose in its header as "Helium-style ultra-compact horizontal". It was emulating a browser that is packaged, so the emulation had no reason to exist. The fifty prefs were not only cosmetic, and dropping them on a browser with bad defaults would be indefensible. It was affordable while Helium was the only recommendation, because Helium already behaves that way.
196 +
197 + **Ruled 2026-08-17: the two recommended browsers are stock Firefox and Helium**, and stock Firefox does not behave that way. It arrives with telemetry on, sponsored shortcuts on the new tab page, Pocket integration, and Enhanced Tracking Protection at "standard" rather than "strict", which is most of what the deleted `mozilla.cfg` was setting. Alloy still ships it no configuration, and the estate does not come back.
198 +
199 + What changes is that honest description stops being a courtesy and becomes the obligation. Whatever offers the choice states what each browser does out of the box, so a user picking Gecko knows what they are picking rather than discovering it. Alloy describes rather than configures.
200 +
201 + This does not weaken the rule that an app earns a recommendation by not needing configuration. **That rule is a test for what Alloy picks as a default, not a bar on what it will offer as a bring-your-own candidate.** The test for a candidate is provenance and an accurate account of its behaviour. Otherwise the rule would force Alloy to either configure a browser it declined to pick or refuse to name the second engine at all, and both defeat the point of declining.
196 202
197 203 **This is a non-endorsement, not a pick.** Alloy is not claiming Blink is the better engine, and the monoculture argument that previously rejected Chromium as the default is recorded as overridden rather than withdrawn. Reinforcing one engine's dominance is a real cost and Alloy is paying it. What it lost to is the theming rule: the previous answer was "ship Gecko and fix it", and Alloy no longer fixes browsers. **Firefox remains one line in the Containerfile** for anyone who wants Gecko, which is what a builder-not-artifact distribution means by a choice, and it would ship with no Alloy configuration on it either.
198 204