{ lib, pkgs, osConfig, ... }: { programs = { firefox = { enable = true; languagePacks = [ "en-US" "de" ]; # https://mozilla.github.io/policy-templates/ policies = { DefaultDownloadDirectory = "\${home}/Downloads"; DisableFirefoxStudies = true; DisableAppUpdate = true; DisablePocket = true; DisableTelemetry = true; Extensions = { Install = [ "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi" ]; }; ExtensionSettings = { "uBlock0@raymondhill.net" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"; updates_disabled = false; }; }; FirefoxHome = { Search = true; TopSites = false; SponsoredTopSites = false; Highlights = false; Pocket = false; SponsoredPocket = false; Snippets = false; Locked = false; }; FirefoxSuggest = { WebSuggestions = false; SponsoredSuggestions = false; ImproveSuggest = false; Locked = false; }; HardwareAcceleration = true; RequestedLocales = "en-US,de"; SSLVersionMin = "tls1.2"; TranslateEnabled = false; UserMessaging = { ExtensionRecommendations = false; FeatureRecommendations = false; UrlbarInterventions = false; SkipOnboarding = true; MoreFromMozilla = false; FirefoxLabs = false; Locked = false; }; }; profiles = { default = { id = 0; name = "default"; isDefault = true; search = { force = true; default = "ddg"; engines = { "ddg".metaData.alias = "@ddg"; "Nix Packages" = { urls = [ { template = "https://search.nixos.org/packages"; params = [ { name = "type"; value = "packages"; } { name = "query"; value = "{searchTerms}"; } ]; } ]; icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; definedAliases = [ "@np" ]; }; "NixOS Wiki" = { urls = [ { template = "https://wiki.nixos.org/index.php?search={searchTerms}"; } ]; icon = "https://wiki.nixos.org/favicon.png"; updateInterval = 24 * 60 * 60 * 1000; # every day definedAliases = [ "@nw" ]; }; "wikipedia".metaData.alias = "@wiki"; }; }; settings = { "general.smoothScroll" = true; "signon.rememberSignons" = false; # Password Manager }; bookmarks = { force = true; settings = [ { toolbar = true; # <- global toolbar bookmarks = lib.mkMerge [[ { name = "kernel.org"; url = "https://www.kernel.org"; } (lib.mkIf osConfig.beancloud.software.nextcloud.server.enable { name = "Nextcloud"; url = "http://localhost"; }) (lib.mkIf osConfig.beancloud.software.gitlab { name = "Gitlab"; url = "http://192.168.100.11"; }) (lib.mkIf osConfig.beancloud.software.forgejo { name = "Forgejo"; url = "http://localhost:3000"; }) (lib.mkIf osConfig.beancloud.software.forgejo { name = "Splunk"; url = "http://localhost:8000"; }) ]]; } ]; }; }; }; }; }; }