summaryrefslogtreecommitdiff
path: root/nix/programs/firefox
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2025-01-23 09:26:51 -0500
committerFreya Murphy <freya@freyacat.org>2025-01-23 09:26:51 -0500
commit1a51f2f555b182673e3f9b3e38fb2ab0e57dd6c2 (patch)
treeeecdad132615a4469c22ee6d4ccd1df087b6159d /nix/programs/firefox
parentuse base16 in neovim and starship (diff)
downloaddotfiles-nix-1a51f2f555b182673e3f9b3e38fb2ab0e57dd6c2.tar.gz
dotfiles-nix-1a51f2f555b182673e3f9b3e38fb2ab0e57dd6c2.tar.bz2
dotfiles-nix-1a51f2f555b182673e3f9b3e38fb2ab0e57dd6c2.zip
reconfigure
Diffstat (limited to '')
-rw-r--r--nix/programs/firefox/default.nix39
-rw-r--r--nix/programs/firefox/extraPrefs.nix22
-rw-r--r--nix/programs/firefox/policy.nix (renamed from modules/programs/firefox/policies.nix)4
-rw-r--r--nix/programs/firefox/policyExtensions.nix (renamed from modules/programs/firefox/extensions.nix)0
-rw-r--r--nix/programs/firefox/policyPrefs.nix (renamed from modules/programs/firefox/preferences.nix)0
-rw-r--r--nix/programs/firefox/userChrome.nix23
6 files changed, 86 insertions, 2 deletions
diff --git a/nix/programs/firefox/default.nix b/nix/programs/firefox/default.nix
new file mode 100644
index 0000000..7442b1a
--- /dev/null
+++ b/nix/programs/firefox/default.nix
@@ -0,0 +1,39 @@
+{ config, lib, pkgs, ... }:
+
+let
+
+ extraPrefs = import ./extraPrefs.nix;
+
+ userChrome = import ./userChrome.nix;
+
+ my-firefox = (pkgs.firefox.override {
+ extraPrefs = extraPrefs;
+ });
+
+in
+
+{
+ default.browser = lib.mkDefault "firefox";
+
+ home-manager.users.${config.user} = {
+ programs.firefox = {
+
+ enable = true;
+ package = my-firefox;
+
+ # import configuration
+ policies = import ./policy.nix;
+
+ # create profile for me :3
+ profiles.${config.user} = {
+ search = {
+ force = true;
+ default = "DuckDuckGo";
+ };
+
+ userChrome = userChrome;
+ };
+
+ };
+ };
+}
diff --git a/nix/programs/firefox/extraPrefs.nix b/nix/programs/firefox/extraPrefs.nix
new file mode 100644
index 0000000..b9e9ed2
--- /dev/null
+++ b/nix/programs/firefox/extraPrefs.nix
@@ -0,0 +1,22 @@
+# extra preferences that cannot be
+# set normally but have to instead
+# set in mosilla.cfg
+
+''//
+
+// Automatically click cookiebanners although uBlock Origin might block them
+lockPref("cookiebanners.bannerClicking.enabled", true);
+lockPref("cookiebanners.service.mode", 2);
+lockPref("cookiebanners.service.mode.privateBrowsing", 2);
+
+// DNT although PrivacyBadger from policy handles this
+lockPref("privacy.donottrackheader.enabled", true);
+lockPref("privacy.donottrackheader.value", 1);
+
+// New sidebar
+lockPref("sidebar.revamp", true);
+lockPref("sidebar.verticalTabs", true);
+lockPref("sidebar.visibility", "always-show");
+lockPref("sidebar.main.tools", "history,bookmarks");
+
+//''
diff --git a/modules/programs/firefox/policies.nix b/nix/programs/firefox/policy.nix
index 5b49f65..0d090cc 100644
--- a/modules/programs/firefox/policies.nix
+++ b/nix/programs/firefox/policy.nix
@@ -3,8 +3,8 @@
# policies to be set in firefox
# see: https://mozilla.github.io/policy-templates/
- ExtensionSettings = import ./extensions.nix;
- Preferences = import ./preferences.nix;
+ ExtensionSettings = import ./policyExtensions.nix;
+ Preferences = import ./policyPrefs.nix;
EnableTrackingProtection = {
Value = true;
diff --git a/modules/programs/firefox/extensions.nix b/nix/programs/firefox/policyExtensions.nix
index ebc3003..ebc3003 100644
--- a/modules/programs/firefox/extensions.nix
+++ b/nix/programs/firefox/policyExtensions.nix
diff --git a/modules/programs/firefox/preferences.nix b/nix/programs/firefox/policyPrefs.nix
index a8ac797..a8ac797 100644
--- a/modules/programs/firefox/preferences.nix
+++ b/nix/programs/firefox/policyPrefs.nix
diff --git a/nix/programs/firefox/userChrome.nix b/nix/programs/firefox/userChrome.nix
new file mode 100644
index 0000000..2deefb5
--- /dev/null
+++ b/nix/programs/firefox/userChrome.nix
@@ -0,0 +1,23 @@
+''
+/* sidebar hack to flip contents the way i want them (arrows on the left) */
+#nav-bar-customization-target {
+ flex-direction: row-reverse;
+}
+
+/* remove broken padding from sidebar hack */
+#unified-extensions-button {
+ padding-left: 0 !important;
+}
+
+/* remove padding beside search bar */
+toolbarspring {
+ display: none !important;
+}
+
+/* remove overflow menu and everything in it */
+#nav-bar-overflow-button,
+#firefox-view-button,
+#alltabs-button {
+ visibility: collapse;
+}
+''