stockholm/lass/2configs/firefoxPatched.nix

59 lines
1.6 KiB
Nix

{ config, lib, pkgs, ... }:
let
lpkgs = import ../5pkgs { inherit pkgs; };
inherit (lib)
concatMapStrings
;
plugins = with lpkgs.firefoxPlugins; [
noscript
ublock
vimperator
];
copyXpi = plugin:
"cp ${plugin}/*.xpi $out/usr/lib/firefox-*/browser/extensions/";
preferences = pkgs.writeText "autoload.js" ''
pref('general.config.filename', 'firefox.cfg');
pref('general.config.obscure_value', 0);
'';
config = pkgs.writeText "firefox.cfg" ''
//
lockPref("app.update.enabled", false);
lockPref("extensions.update.enabled", false);
lockPref("autoadmin.global_config_url", "");
lockPref("extensions.checkUpdateSecurity", false);
lockPref("services.sync.enabled", false);
lockPref("browser.shell.checkDefaultBrowser", false);
lockPref("layout.spellcheckDefault", 0);
lockPref("app.update.auto", false);
lockPref("browser.newtabpage.enabled", false);
lockPref("noscript.firstRunRedirection", false);
lockPref("noscript.hoverUI", false);
lockPref("noscript.notify", false);
defaultPref("extensions.newAddons", false);
defaultPref("extensions.autoDisableScopes", 0);
defaultPref("plugin.scan.plid.all", false);
'';
in {
environment.systemPackages = [
(pkgs.lib.overrideDerivation pkgs.firefox-bin (original : {
installPhase = ''
${original.installPhase}
find $out/usr/lib
${concatMapStrings copyXpi plugins}
cd $out/usr/lib/firefox-*/
mkdir -p browser/defaults/preferences
cp ${preferences} browser/defaults/preferences/autoload.js
cp ${config} ./firefox.cfg
'';
}))
];
}