96 lines
3.7 KiB
Nix
96 lines
3.7 KiB
Nix
# https://discourse.nixos.org/t/declare-firefox-extensions-and-settings/36265
|
|
{ pkgs, ... }:
|
|
|
|
let
|
|
lock-false = {
|
|
Value = false;
|
|
Status = "locked";
|
|
};
|
|
lock-true = {
|
|
Value = true;
|
|
Status = "locked";
|
|
};
|
|
in
|
|
{
|
|
environment.variables = rec {
|
|
MOZ_GMP_PATH = "${pkgs.widevine-firefox}/gmp-widevinecdm/system-installed";
|
|
};
|
|
|
|
programs = {
|
|
firefox = {
|
|
enable = true;
|
|
nativeMessagingHosts.packages = [ pkgs.firefoxpwa ];
|
|
languagePacks = [ "en-US" ];
|
|
|
|
# ---- POLICIES ----
|
|
# Check about:policies#documentation for options.
|
|
policies = {
|
|
DisableTelemetry = true;
|
|
DisableFirefoxStudies = true;
|
|
EnableTrackingProtection = {
|
|
Value = true;
|
|
Locked = true;
|
|
Cryptomining = true;
|
|
Fingerprinting = true;
|
|
};
|
|
DisablePocket = true;
|
|
DisableFirefoxAccounts = true;
|
|
DisableAccounts = true;
|
|
DisableFirefoxScreenshots = true;
|
|
OverrideFirstRunPage = "";
|
|
OverridePostUpdatePage = "";
|
|
DontCheckDefaultBrowser = true;
|
|
DisplayBookmarksToolbar = "newtab"; # alternatives: "always" or "newtab"
|
|
DisplayMenuBar = "always"; # alternatives: "always", "never" or "default-on"
|
|
SearchBar = "unified"; # alternative: "separate"
|
|
|
|
# ---- EXTENSIONS ----
|
|
# Check about:support for extension/add-on ID strings.
|
|
# Valid strings for installation_mode are "allowed", "blocked",
|
|
# "force_installed" and "normal_installed".
|
|
# ExtensionSettings = {
|
|
# # blocks all addons except the ones specified below
|
|
# "*".installation_mode = "blocked";
|
|
# };
|
|
|
|
# ---- PREFERENCES ----
|
|
# Check about:config for options.
|
|
Preferences = {
|
|
"browser.contentblocking.category" = {
|
|
Value = "strict";
|
|
Status = "locked";
|
|
};
|
|
"widget.use-xdg-desktop-portal.file-picker" = 1;
|
|
"widget.gtk.global-menu.enabled" = lock-true;
|
|
"widget.gtk.global-menu.wayland.enabled" = lock-true;
|
|
"browser.tabs.inTitlebar" = 0;
|
|
"extensions.pocket.enabled" = lock-false;
|
|
"extensions.screenshots.disabled" = lock-true;
|
|
"browser.topsites.contile.enabled" = lock-false;
|
|
"browser.formfill.enable" = lock-false;
|
|
"browser.search.suggest.enabled" = lock-false;
|
|
"browser.search.suggest.enabled.private" = lock-false;
|
|
"browser.urlbar.suggest.searches" = lock-false;
|
|
"browser.urlbar.showSearchSuggestionsFirst" = lock-false;
|
|
"browser.newtabpage.activity-stream.feeds.section.topstories" = lock-false;
|
|
"browser.newtabpage.activity-stream.feeds.snippets" = lock-false;
|
|
"browser.newtabpage.activity-stream.section.highlights.includePocket" = lock-false;
|
|
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = lock-false;
|
|
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = lock-false;
|
|
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = lock-false;
|
|
"browser.newtabpage.activity-stream.showSponsored" = lock-false;
|
|
"browser.newtabpage.activity-stream.system.showSponsored" = lock-false;
|
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false;
|
|
|
|
"media.gmp-widevinecdm.version" = "system-installed";
|
|
"media.gmp-widevinecdm.visible" = lock-true;
|
|
"media.gmp-widevinecdm.enabled" = lock-true;
|
|
"media.gmp-widevinecdm.autoupdate" = lock-false;
|
|
|
|
"media.eme.enabled" = lock-true;
|
|
"media.eme.encrypted-media-encryption-scheme.enabled" = lock-true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|