diff --git a/users/common/configs/firefox/default.nix b/users/common/configs/firefox/default.nix index e3b556b..a3dc3eb 100644 --- a/users/common/configs/firefox/default.nix +++ b/users/common/configs/firefox/default.nix @@ -1,3 +1,88 @@ +{ pkgs, ... }: + { - programs.firefox.enable = true; + programs.firefox = { + enable = true; + policies = { + DisableTelemetry = true; + DisableFirefoxStudies = true; + DontCheckDefaultBrowser = true; + DisablePocket = true; + DefaultDownloadDirectory = "\${HOME}/Downloads"; + OfferToSaveLogins = false; + AutofillAddressEnabled = false; + AutofillCreditCardEnabled = false; + Preferences = { + "browser.aboutConfig.showWarning" = false; + "browser.contentblocking.category" = "strict"; + "browser.download.useDownloadDir" = false; + "browser.newtabpage.activity-stream.feeds.section.topstories" = false; + "browser.newtabpage.activity-stream.showSponsored" = false; + "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; + "browser.toolbars.bookmarks.visibility" = true; + "browser.sessionstore.restore_on_demand" = true; + "browser.sessionstore.restore_pinned_tabs_on_demand" = false; + "browser.translations.automaticallyPopup" = false; + }; + }; + profiles.nick = { + search = { + default = "DuckDuckGo"; + privateDefault = "DuckDuckGo"; + order = [ + "DuckDuckGo" + "Google" + "Wikipedia (en)" + "Nix Packages" + "Nix Options" + "Home Manager Options" + ]; + force = true; + engines = { + "Google".metaData.alias = "@g"; + "DuckDuckGo".metaData.alias = "@d"; + "Wikipedia (en)".metaData.alias = "@w"; + + "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" ]; + }; + + "Nix Options" = { + urls = [{ + template = "https://search.nixos.org/options"; + params = [ + { name = "type"; value = "options"; } + { name = "query"; value = "{searchTerms}"; } + ]; + }]; + + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "@no" ]; + }; + + "Home Manager Options" = { + urls = [{ + template = "https://home-manager-options.extranix.com/"; + params = [ + { name = "query"; value = "{searchTerms}"; } + ]; + }]; + + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "@nh" ]; + }; + }; + }; + }; + }; } +