desktop-gnome: ship BearBrowser as the default browser#188
Merged
Conversation
Wires BearBrowser into the SourceOS workstation (was entirely absent — the desktop shipped upstream Firefox). Three pieces: - packages/browser/bearbrowser.nix: prebuilt-binary wrapper (firefox-bin style) for the BearBrowser Gecko build WITH the anti-fingerprint engine patches (canvas text-metric quantization + audio farble in libxul), from the v0.1.0-alpha GitHub release. autoPatchelf + Gecko runtime libs + .desktop. - flake.nix: register packages.<system>.bearbrowser. - profiles/desktop-gnome: replace firefox with bearbrowser + set it as the default browser (xdg mime). x86_64 only for now; aarch64 falls back to firefox until an aarch64 build exists. Realizes the workstation-contract intent (PackageManifest + launcher + desktop profile) from SourceOS-Linux/sourceos-spec in Nix. NOT yet 'nix build'-verified (needs a x86_64-linux builder; this Mac can't). Parse-checked clean. autoPatchelf may surface additional runtime libs to add to buildInputs on first real build.
The boot VM tests evaluate the profile without 'self' in module args (only flake nixosConfigurations pass it) -> 'error: attribute self missing'. Use pkgs.callPackage ../../packages/browser/bearbrowser.nix instead, which works in any module-eval context. Verified: package evaluates locally (nix eval -> bearbrowser-0.1.0-alpha) and the profile parses.
Consistency follow-on to making BearBrowser the default browser: the Mac-on- Linux dock favorites seeded firefox.desktop, which no longer ships. Point it at bearbrowser.desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Integrates BearBrowser into the SourceOS workstation — it was entirely absent (the desktop shipped upstream Firefox;
source-oshad zero BearBrowser references).What this adds
packages/browser/bearbrowser.nix— prebuilt-binary wrapper for the BearBrowser Gecko build with the anti-fingerprint engine patches (canvas text-metric quantize + audio farble compiled into libxul), pulled from the v0.1.0-alpha release. autoPatchelf + Gecko runtime libs + a.desktopentry.flake.nix— registerspackages.<system>.bearbrowser.profiles/desktop-gnome— replaces Firefox with BearBrowser + sets it as the default browser (xdg mime). x86_64 only; aarch64 falls back to Firefox until an aarch64 build exists.This realizes the workstation-contract intent (PackageManifest + launcher + desktop profile) from
SourceOS-Linux/sourceos-specin Nix terms.Verification status
nix-instantiate --parse).nix build-verified — needs an x86_64-linux builder (couldn't run here).autoPatchelfHookwill surface any additional NEEDED runtime libs to add tobuildInputson first real build.🤖 Generated with Claude Code