{ pkgs, inputs, ... }: { home.packages = with pkgs; [ librewolf ]; programs.librewolf = { enable = true; settings = { "webgl.disabled" = false; "privacy.resistFingerprinting" = false; "privacy.clearOnShutdown.history" = false; "privacy.clearOnShutdown.cookies" = false; "network.cookie.lifetimePolicy" = 0; "general.useragent.compatMode.firefox" = true; "identity.fxaccounts.enabled" = true; "services.sync.prefs.sync.privacy.clearOnShutdown.cookies" = false; "services.sync.prefs.sync.privacy.clearOnShutdown_v2.cookiesAndStorage" = false; "general.useragent.override" = "Mozilla/5.0 (X11; Linux x86_64; rv:${pkgs.firefox.version}) Gecko/20100101 Firefox/${pkgs.firefox.version}"; "extensions.activeThemeID" = "firefox-compact-dark@mozilla.org"; # For themeing "toolkit.legacyUserProfileCustomizations.stylesheets" = true; "browser.tabs.drawInTitlebar" = true; "svg.context-properties.content.enabled" = true; #fake location, FIT (just about) "geo.provider.network.url" = "data:application/json," + builtins.toJSON { location = { lat = 28.0749; lng = -80.6302; }; accuracy = 1.0; }; }; }; home.file = let chromeTheme = ".librewolf/tckj7njq.default-release/chrome"; firefoxThemeFile = file: src: { target = "${chromeTheme}/${file}"; source = "${inputs.firefox-mod-theme}/${src}/${file}"; recursive = true; }; baseThemeFile = { file = ""; src = ""; }; modThemeFiles = [ { file = "userChrome.css"; } { file = "userContent.css"; } { file = "ASSETS"; } ]; in builtins.listToAttrs ( map (f: { name = "firefox-theme-${f.file}"; value = firefoxThemeFile f.file f.src; }) (map (f: baseThemeFile // f) modThemeFiles) ); home.sessionVariables = { BROWSER = "librewolf"; }; }