diff options
Diffstat (limited to 'home/programs/firefox')
| -rw-r--r-- | home/programs/firefox/bookmarks.nix | 19 | ||||
| -rw-r--r-- | home/programs/firefox/containers.nix | 17 | ||||
| -rw-r--r-- | home/programs/firefox/default.nix | 28 | ||||
| -rw-r--r-- | home/programs/firefox/extensions.nix | 7 | ||||
| -rw-r--r-- | home/programs/firefox/policies.nix | 31 | ||||
| -rw-r--r-- | home/programs/firefox/settings.nix | 9 |
6 files changed, 111 insertions, 0 deletions
diff --git a/home/programs/firefox/bookmarks.nix b/home/programs/firefox/bookmarks.nix new file mode 100644 index 0000000..ede02bd --- /dev/null +++ b/home/programs/firefox/bookmarks.nix @@ -0,0 +1,19 @@ +{ + force = true; + settings = [ + { + name = "main"; + toolbar = true; + bookmarks = [ + { + name = "hackernews"; + url = "https://news.ycombinator.com/"; + } + { + name = "lobsters"; + url = "https://lobste.rs/"; + } + ]; + } + ]; +} diff --git a/home/programs/firefox/containers.nix b/home/programs/firefox/containers.nix new file mode 100644 index 0000000..c96ec1c --- /dev/null +++ b/home/programs/firefox/containers.nix @@ -0,0 +1,17 @@ +{ + personal = { + color = "red"; + icon = "tree"; + id = 1; + }; + work = { + color = "pink"; + icon = "briefcase"; + id = 2; + }; + google = { + color = "blue"; + id = 3; + icon = "circle"; + }; +} diff --git a/home/programs/firefox/default.nix b/home/programs/firefox/default.nix new file mode 100644 index 0000000..61fd457 --- /dev/null +++ b/home/programs/firefox/default.nix @@ -0,0 +1,28 @@ +{ pkgs, ... }: +let + extensions = import ./extensions.nix { inherit pkgs; }; + containers = import ./containers.nix; + settings = import ./settings.nix; + bookmarks = import ./bookmarks.nix; + policies = import ./policies.nix; +in +{ + programs.firefox = { + enable = true; + # we want to use a signed binary so that extensions like 1password work with it + package = pkgs.firefox-bin; + inherit policies; + profiles = { + franck = { + isDefault = true; + containersForce = false; + inherit containers; + inherit settings; + inherit bookmarks; + extensions = { + packages = extensions; + }; + }; + }; + }; +} diff --git a/home/programs/firefox/extensions.nix b/home/programs/firefox/extensions.nix new file mode 100644 index 0000000..9f641c9 --- /dev/null +++ b/home/programs/firefox/extensions.nix @@ -0,0 +1,7 @@ +{ pkgs, ... }: +with pkgs.nur.repos.rycee.firefox-addons; +[ + consent-o-matic + sponsorblock + ublock-origin +] diff --git a/home/programs/firefox/policies.nix b/home/programs/firefox/policies.nix new file mode 100644 index 0000000..4fba91b --- /dev/null +++ b/home/programs/firefox/policies.nix @@ -0,0 +1,31 @@ +{ + DisablePocket = true; + DisableFirefoxStudies = true; + AppAutoUpdate = false; # Disable automatic application update + ManualAppUpdateOnly = true; # No update prompts + DontCheckDefaultBrowser = true; + + DisableTelemetry = true; + EnableTrackingProtection = { + Value = true; + Cryptomining = true; + Fingerprinting = true; + EmailTracking = true; + }; + DisableSetDesktopBackground = true; + OfferToSaveLogins = false; + OfferToSaveLoginsDefault = false; + + NoDefaultBookmarks = true; + + PasswordManagerEnabled = false; # we use 1password + + FirefoxHome = { + TopSites = false; + SponsoredTopSites = false; + Highlights = false; + Pocket = false; + SponsoredPocket = false; + Snippets = false; + }; +} diff --git a/home/programs/firefox/settings.nix b/home/programs/firefox/settings.nix new file mode 100644 index 0000000..304c99f --- /dev/null +++ b/home/programs/firefox/settings.nix @@ -0,0 +1,9 @@ +{ + "browser.tabs.groups.enabled" = true; # https://support.mozilla.org/en-US/kb/tab-groups + "browser.tabs.groups.smart.enabled" = true; # https://support.mozilla.org/en-US/kb/tab-groups + "browser.toolbars.bookmarks.visibility" = "never"; # don't show bookmark tabs + "browser.urlbar.trimURLs" = false; # show the complete URL + "sidebar.main.tools" = "aichat,history,bookmarks"; + "sidebar.revamp" = true; + "sidebar.verticalTabs" = true; # vertical tabs +} |
