{ config, lib, pkgs, ... }: let cfg = config.feature.firefox; in { options.feature.firefox = { enable = lib.mkEnableOption "Set up firefox"; }; config = lib.mkIf cfg.enable { programs.firefox = { enable = true; # Firefox is expected to be installed as a system package package = null; profiles.irl = { extensions = { force = true; packages = with pkgs.nur.repos.rycee.firefox-addons; [ bitwarden granted kagi-search multi-account-containers privacy-badger recap rsf-censorship-detector ]; }; settings = { "browser.newtabpage.activity-stream.discoverystream.sendToPocket.enabled" = false; "browser.newtabpage.activity-stream.feeds.section.topstories" = false; "browser.newtabpage.activity-stream.showSponsored" = false; "browser.newtabpage.activity-stream.showSponsoredCheckboxes" = false; "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; "browser.search.suggest.enabled.private" = false; "datareporting.policy.firstRunURL" = "https://irl.xyz/"; "extensions.autoDisableScope" = 0; "extensions.pocket.enabled" = false; "identity.fxaccounts.enabled" = false; }; userContent = '' /* It's a dot not an interpunct */ .govuk-logo-dot { fill: #fff !important; transform: translate(0, 14.5px); } ''; }; }; }; }