summaryrefslogtreecommitdiffstats
path: root/lass/2configs/firefoxPatched.nix
diff options
context:
space:
mode:
authorlassulus <lass@aidsballs.de>2015-09-26 12:12:50 +0200
committerlassulus <lass@aidsballs.de>2015-09-26 12:12:50 +0200
commit0d806f61d2709f0ff8bf03ee431839035215e689 (patch)
treecb8fda99b540ca280ef5b45319f8d79e786039b0 /lass/2configs/firefoxPatched.nix
parent895971f21490222e7d4060d5ec1a6bb4395ff595 (diff)
lass: add firefoxPatched + firefoxPlugins
Diffstat (limited to 'lass/2configs/firefoxPatched.nix')
-rw-r--r--lass/2configs/firefoxPatched.nix58
1 files changed, 58 insertions, 0 deletions
diff --git a/lass/2configs/firefoxPatched.nix b/lass/2configs/firefoxPatched.nix
new file mode 100644
index 00000000..daf8a28b
--- /dev/null
+++ b/lass/2configs/firefoxPatched.nix
@@ -0,0 +1,58 @@
+{ 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
+ '';
+ }))
+ ];
+}
+