{ config, pkgs, ... }: { stylix.targets.firefox.profileNames = [ "default" ]; programs = { browserpass = { enable = true; browsers = [ "firefox" ]; }; firefox = { enable = true; policies = { BlockAboutProfiles = true; Cookies = { Behavior = "reject-tracker-and-partition-foreign"; BehaviorPrivateBrowsing = "reject"; Locked = true; }; DefaultDownloadDirectory = config.xdg.userDirs.download; DisableAppUpdate = true; DisableFirefoxAccounts = true; DisableFirefoxScreenshots = true; DisableFirefoxStudies = true; DisableFormHistory = true; DisablePocket = true; DisableProfileImport = true; DisableSetDesktopBackground = true; DisableSystemAddonUpdate = true; DisableTelemetry = true; DisplayMenuBar = "default-off"; DontCheckDefaultBrowser = true; EnableTrackingProtection = { Value = true; Locked = true; Cryptomining = true; Fingerprinting = true; }; ExtensionSettings = { "queryamoid@kaply.com" = { installation_mode = "force_installed"; install_url = "https://github.com/mkaply/queryamoid/releases/download/v0.1/query_amo_addon_id-0.1-fx.xpi"; }; # uBlock Origin "uBlock0@raymondhill.net" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"; }; # Browserpass "browserpass@maximbaz.com" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/browserpass-ce/latest.xpi"; }; # SimpleLogin "addon@simplelogin" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/simplelogin/latest.xpi"; }; # Consent-O-Matic "gdpr@cavi.au.dk" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/consent-o-matic/latest.xpi"; }; # ClearURLs "{74145f27-f039-47ce-a470-a662b129930a}" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/clearurls/latest.xpi"; }; }; FirefoxHome = { Search = true; TopSites = false; SponsoredTopSites = false; Highlights = false; Pocket = false; SponsoredPocket = false; Snippets = false; Locked = true; }; FirefoxSuggest = { WebSuggestions = false; SponsoredSuggestions = false; ImproveSuggest = false; Locked = true; }; HardwareAcceleration = true; Homepage = { Locked = true; StartPage = "homepage-locked"; }; NewTabPage = true; NoDefaultBookmarks = false; OfferToSaveLogins = false; PasswordManagerEnabled = false; PDFjs = { Enabled = false; }; Permissions = { Autoplay = { Default = "block-audio-video"; }; }; PictureInPicture = { Enabled = true; }; PopupBlocking = { Default = true; }; RequestedLocales = [ "en-GB" ]; SearchBar = "unified"; ShowHomeButton = true; StartDownloadsInTempDirectory = true; }; profiles.default = { bookmarks = builtins.fromJSON (builtins.readFile ./bookmarks.json); settings = { "app.shield.optoutstudies.enabled" = false; "browser.tabs.inTitlebar" = 0; "browser.bookmarks.addedImportButton" = false; "browser.bookmarks.showMobileBookmarks" = false; "browser.toolbars.bookmarks.visibility" = "never"; "browser.contentblocking.category" = "strict"; "browser.search.region" = "GB"; "browser.search.isUS" = false; "browser.warnOnQuitShortcut" = false; "browser.zoom.siteSpecific" = false; "distribution.searchplugins.defaultLocale" = "en-GB"; "doh-rollout.home-region" = "GB"; "dom.private-attribution.submission.enabled" = false; "extensions.activeThemeID" = "default-theme@mozilla.org"; "extensions.formautofill.creditCards.enabled" = false; "general.useragent.locale" = "en-GB"; "intl.accept_languages" = "en-gb,en"; "intl.locale.requested" = "en-gb,en"; "intl.regional_prefs.use_os_locales" = true; "media.eme.enabled" = true; "privacy.webrtc.legacyGlobalIndicator" = false; "signon.management.page.breach-alerts.enabled" = false; "signon.rememberSignons" = false; "widget.use-xdg-desktop-portal.file-picker" = 1; "widget.use-xdg-desktop-portal.mime-handler" = 1; "widget.use-xdg-desktop-portal.open-uri" = 1; "browser.newtabpage.pinned" = [ { title = "NixOS Wiki"; url = "https://wiki.nixos.org"; } { title = "Arch Wiki"; url = "https://wiki.archlinux.org"; } ]; }; search = rec { default = "DuckDuckGo"; privateDefault = default; force = true; order = [ "DuckDuckGo" "Atlas SearXNG" ]; engines = { "Atlas SearXNG" = { urls = [ { template = "https://search.atlas.engineer/searxng/search?q={searchTerms}"; } ]; definedAliases = [ "@atlas" ]; }; "NixOS Wiki" = { urls = [ { template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; } ]; icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; definedAliases = [ "@nix" "@nixos" "@nixoswiki" ]; }; "Arch Wiki" = { urls = [ { template = "https://wiki.archlinux.org/index.php?search={searchTerms}"; } ]; definedAliases = [ "@aw" "@arch" "@archwiki" ]; }; "GitHub" = { urls = [ { template = "https://github.com/search?q={searchTerms}"; } ]; definedAliases = [ "@gh" "@git" "@github" ]; }; "FlatHub" = { url = [ { template = "https://flathub.org/apps/search?q={searchTerms}"; } ]; definedAliases = [ "@flat" "@fthub" "@flathub" ]; }; "NixOS Packages" = { urls = [ { template = "http://search.nixos.org/packages?channel=unstable&size=50&sort=relevance&type=packages&query={searchTerms}"; } ]; icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; definedAliases = [ "@nixpkgs" ]; }; "PyPI packages" = { urls = [ { template = "https://pypi.org/search/?q={searchTerms}"; } ]; definedAliases = [ "@pypi" ]; }; }; }; }; }; }; }