{
  config,
  pkgs,
  lib,
  ...
}:
{
  home.packages = lib.mkIf config.programs.firefox.enable [
    #pkgs.tor-browser-bundle-bin
  ];
  programs.browserpass.browsers = [ "firefox" ];
  programs.firefox = {
    enable = lib.mkDefault true;
    /*
      extensions =
      with pkgs.nur.repos.rycee.firefox-addons; [
      https-everywhere
      privacy-badger
      ];
    */
    package = lib.mkDefault (
      pkgs.wrapFirefox pkgs.firefox-unwrapped {
        nativeMessagingHosts = [
          pkgs.browserpass
        ];
        cfg.speechSynthesisSupport = false;
        /*
            nixExtensions = [
          (pkgs.fetchFirefoxAddon {
            name = "ublock";
            url = "https://addons.mozilla.org/firefox/downloads/file/3679754/ublock_origin-latest-an+fx.xpi";
            sha256 = "0000000000000000000000000000000000000000000000000000";
          })
          (pkgs.fetchFirefoxAddon {
            name = "decentraleyes";
            url = "https://addons.mozilla.org/firefox/downloads/file/1671300/decentraleyes-latest-an+fx.xpi";
            sha256 = "0000000000000000000000000000000000000000000000000000";
          })
            ];
        */

        # about:policies#documentation
        extraPolicies = {
          CaptivePortal = false;
          DNSOverHTTPS = {
            Enabled = false;
            Locked = true;
          };
          DisableAppUpdate = true;
          DisableFirefoxAccounts = true;
          DisableFirefoxStudies = true;
          DisablePocket = true;
          DisableTelemetry = true;
          DontCheckDefaultBrowser = true;
          FirefoxHome = {
            Pocket = false;
            Snippets = false;
          };
          NetworkPrediction = false;
          PromptForDownloadLocation = true;
          SearchEngines = {
            PreventInstalls = true;
          };
          SearchSuggestEnabled = false;
          UserMessaging = {
            ExtensionRecommendations = false;
            SkipOnboarding = true;
          };
        };
        #extraNativeMessagingHosts = [ pkgs.passff-host ];
      }
    );
  };
}