aboutsummaryrefslogtreecommitdiff
path: root/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'default.nix')
-rw-r--r--default.nix80
1 files changed, 80 insertions, 0 deletions
diff --git a/default.nix b/default.nix
new file mode 100644
index 0000000..e2b0656
--- /dev/null
+++ b/default.nix
@@ -0,0 +1,80 @@
+{ pkgs ? import <nixpkgs> {} }:
+
+with pkgs;
+
+# Where to find documentation:
+# http://kb.mozillazine.org/About:config_entries
+# https://www.privacy-handbuch.de/download/moderat/user.js
+# https://github.com/mozilla/policy-templates, about:policies#documentation
+
+let
+ directory = callPackage nix/directory.nix {};
+ ffLib = callPackage nix/lib.nix {};
+ search = callPackage nix/search.nix {};
+
+ callProfile = p: lib.callPackageWith (pkgs // {
+ inherit ffLib;
+ }) p {};
+in rec {
+ profiles = directory.listDirectory callProfile ./profiles;
+
+ disableErrorReporting.preferences = {
+ breakpad.reportUrl = "";
+ };
+
+ activeProfiles = with profiles; [
+ defaults
+
+ addons.disableExtensionSignatureChecking
+ addons.privacybadger addons.noscript
+ addons.borderify
+
+ minimalConnections
+ minimalHome
+ noAccounts
+ noClutter
+ noMedia
+ noNormandy
+ noUpdates
+ noStudies
+ noPocket
+ noTunnels
+ noLocation
+ noSafebrowsing
+ restrict
+ # distrustUser
+
+ forgetActivity
+
+ { policies.RequestedLocales = [ "de-DE" "en-US" ]; }
+ ];
+
+ config = ffLib.mergeProfiles activeProfiles;
+ bundleConfig = {
+ inherit (config) policies;
+ preferences = ffLib.flattenAttrs config.preferences;
+ };
+
+ bundle = ffLib.bundle bundleConfig;
+ launcher = ffLib.launcher bundle;
+
+/*
+ bundle = profiles.bundle {
+ policies = {
+ Preferences = profiles.flattenAttrs {
+ dom.event.contextmenu.enabled = false;
+
+ extensions = {
+ blocklist.enabled = false;
+ getAddons.showPane = false;
+ htmlaboutaddons.recommendations.enabled = false;
+ };
+
+ security.ssl.errorReporting.enabled = false;
+ };
+
+ SearchBar = "separate";
+ };
+ };
+ */
+}