{ pkgs, inputs, ... }: let firefox-addons = with pkgs; inputs.firefox-addons.packages.${system}; in { programs.floorp = { enable = true; nativeMessagingHosts = [ pkgs.firefoxpwa pkgs.gnome-browser-connector ]; policies = { AIControls.Default = { Value = "blocked"; Locked = true; }; AutofillAddressEnabled = false; AutofillCreditCardEnabled = false; DisableAppUpdate = true; DisableFeedbackCommands = true; DisableFirefoxStudies = true; DisablePocket = true; DisableTelemetry = true; NoDefaultBookmarks = true; EnableTrackingProtection = { Value = true; Locked = true; Cryptomining = true; Fingerprinting = true; }; }; profiles.default = { extensions = { packages = with firefox-addons; [ adnauseam bitwarden indie-wiki-buddy pwas-for-firefox gnome-shell-integration ]; settings = { ${firefox-addons.adnauseam.addonId} = { force = true; settings = { "firstInstall" = false; "hidingAds" = true; "clickingAds" = true; "blockingMalware" = true; "disableClickingForDNT" = true; "clickProbability" = 0.75; selectedFilterLists = [ "user-filters" "adnauseam-filters" "eff-dnt-whitelist" "ublock-filters" "ublock-badware" "ublock-privacy" "ublock-quick-fixes" "ublock-unbreak" "easylist" "easyprivacy" "urlhaus-1" "fanboy-cookiemonster" "ublock-cookies-easylist" "adguard-cookies" "ublock-cookies-adguard" "fanboy-ai-suggestions" "easylist-chat" "easylist-newsletters" "easylist-notifications" "easylist-annoyances" "adguard-mobile-app-banners" "adguard-other-annoyances" "adguard-popup-overlays" "adguard-widgets" "ublock-annoyances" ]; }; }; }; }; settings = { "signon.rememberSignons" = false; "signon.autofillForms" = false; "floorp.panelSidebar.enabled" = false; "floorp.workspaces.enabled" = false; "browser.toolbars.bookmarks.visibility" = "newtab"; "floorp.browser.welcome.page.shown" = true; "browser.newtabpage.activity-stream.feeds.topsites" = false; "browser.newtabpage.activity-stream.feeds.section.topstories" = false; "browser.newtabpage.activity-stream.feeds.adsfeed" = false; "browser.newtabpage.activity-stream.feeds.telemetry" = false; "browser.newtabpage.activity-stream.feeds.weatherfeed" = false; "browser.newtabpage.activity-stream.newtabWallpapers.user.enabled" = true; "browser.newtabpage.activity-stream.widgets.enabled" = false; "browser.newtabpage.activity-stream.discoverystream.enabled" = false; "browser.newtabpage.activity-stream.newtabWallpapers.wallpaper" = "suspension-bridge"; "floorp.design.configs" = { globalConfigs = { userInterface = "proton"; uiCustomization = { qrCode.disableButton = true; disableFloorpStart = true; }; }; }; "floorp.keyboardshortcut.enabled" = true; "floorp.keyboardshortcut.config" = { enabled = true; shortcuts = { gecko-close-tab = { modifiers = { alt = true; ctrl = false; meta = false; shift = false; }; key = "Q"; action = "gecko-close-tab"; }; gecko-open-new-tab = { modifiers = { alt = true; ctrl = false; meta = false; shift = false; }; key = "Enter"; action = "gecko-open-new-tab"; }; }; }; }; search = { force = true; default = "ddg-noai"; engines = { ddg-noai = { name = "DuckDuckGo No-AI"; urls = [ { template = "https://noai.duckduckgo.com/?q={searchTerms}"; } ]; icon = "https://duckduckgo.com/favicon.ico"; definedAliases = ["@noai"]; }; nixpkgs = { name = "nixpkgs packages"; urls = [ { template = "https://search.nixos.org/packages?query={searchTerms}"; } ]; icon = "https://wiki.nixos.org/favicon.ico"; definedAliases = ["@np"]; }; nixos-options = { name = "NixOS options"; urls = [ { template = "https://search.nixos.org/options?query={searchTerms}"; } ]; icon = "https://wiki.nixos.org/favicon.ico"; definedAliases = ["@no"]; }; nixos-wiki = { name = "NixOS Wiki"; urls = [ { template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; } ]; icon = "https://wiki.nixos.org/favicon.ico"; definedAliases = ["@nw"]; }; }; }; }; }; }