78 lines
1.8 KiB
Nix
78 lines
1.8 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
|
|
with lib;
|
|
let
|
|
cfg = config.modules.firefox;
|
|
in
|
|
{
|
|
options.modules.firefox = {
|
|
enable = lib.mkEnableOption "firefox";
|
|
default = lib.mkEnableOption "default";
|
|
};
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
default.browser = mkIf cfg.default "firefox.desktop";
|
|
|
|
programs.firefox = {
|
|
enable = true;
|
|
|
|
policies = {
|
|
AppAutoUpdate = false;
|
|
BlockAboutAddons = true;
|
|
BlockAboutConfig = true;
|
|
BlockAboutProfiles = true;
|
|
DisableAppUpdate = true;
|
|
DisableFeedbackCommands = true;
|
|
DisableMasterPasswordCreation = true;
|
|
DisablePocket = true;
|
|
DisableProfileImport = true;
|
|
DisableProfileRefresh = true;
|
|
DisableSetDesktopBackground = true;
|
|
DisableTelemetry = true;
|
|
DisplayBookmarksToolbar = "never";
|
|
DisplayMenuBar = "never";
|
|
DNSOverHTTPS = {
|
|
Enabled = false;
|
|
};
|
|
DontCheckDefaultBrowser = true;
|
|
PasswordManagerEnabled = false;
|
|
TranslateEnabled = true;
|
|
UseSystemPrintDialog = true;
|
|
};
|
|
|
|
profiles.nixos = {
|
|
search.default = "DuckDuckGo";
|
|
|
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
ublock-origin
|
|
];
|
|
|
|
# Theming
|
|
userChrome = readFile (
|
|
pkgs.substituteAll {
|
|
src = ./userChrome.css;
|
|
colors = config.theming.colorsCSS;
|
|
}
|
|
);
|
|
|
|
settings = {
|
|
"browser.tabs.inTitlebar" = 0;
|
|
"extensions.autoDisableScopes" = 0;
|
|
"devtools.chrome.enabled" = true;
|
|
"devtools.debugger.remote-enabled" = true;
|
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
|
};
|
|
|
|
# Force overwriting configuration file
|
|
search.force = true;
|
|
containersForce = true;
|
|
};
|
|
};
|
|
};
|
|
}
|