diff options
| author | Franck Cuny <franck@fcuny.net> | 2025-08-24 09:43:23 -0700 |
|---|---|---|
| committer | Franck Cuny <franck@fcuny.net> | 2025-08-24 09:43:23 -0700 |
| commit | 823e2e15c7300c038e38bcfdec8e540bbc152658 (patch) | |
| tree | 6fe7f86b7458fbf9a94a6f6544ece3ec70b851f9 | |
| parent | split-up firefox configuration (diff) | |
| download | infra-823e2e15c7300c038e38bcfdec8e540bbc152658.tar.gz | |
add to firefox more policies and settings
Diffstat (limited to '')
| -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 | 6 | ||||
| -rw-r--r-- | home/programs/firefox/policies.nix | 45 | ||||
| -rw-r--r-- | home/programs/firefox/search.nix | 90 | ||||
| -rw-r--r-- | home/programs/firefox/settings.nix | 74 |
6 files changed, 211 insertions, 40 deletions
diff --git a/home/programs/firefox/bookmarks.nix b/home/programs/firefox/bookmarks.nix deleted file mode 100644 index ede02bd..0000000 --- a/home/programs/firefox/bookmarks.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ - 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 index c96ec1c..a0b3e13 100644 --- a/home/programs/firefox/containers.nix +++ b/home/programs/firefox/containers.nix @@ -12,6 +12,21 @@ google = { color = "blue"; id = 3; - icon = "circle"; + icon = "fence"; + }; + media = { + color = "purple"; + id = 4; + icon = "fingerprint"; + }; + finance = { + id = 5; + color = "green"; + icon = "dollar"; + }; + shopping = { + id = 6; + color = "yellow"; + icon = "cart"; }; } diff --git a/home/programs/firefox/default.nix b/home/programs/firefox/default.nix index 61fd457..f878ecd 100644 --- a/home/programs/firefox/default.nix +++ b/home/programs/firefox/default.nix @@ -3,7 +3,7 @@ let extensions = import ./extensions.nix { inherit pkgs; }; containers = import ./containers.nix; settings = import ./settings.nix; - bookmarks = import ./bookmarks.nix; + search = import ./search.nix { inherit pkgs; }; policies = import ./policies.nix; in { @@ -15,10 +15,10 @@ in profiles = { franck = { isDefault = true; - containersForce = false; + containersForce = true; # ensure my container configuration is used inherit containers; inherit settings; - inherit bookmarks; + inherit search; extensions = { packages = extensions; }; diff --git a/home/programs/firefox/policies.nix b/home/programs/firefox/policies.nix index 4fba91b..e4b70eb 100644 --- a/home/programs/firefox/policies.nix +++ b/home/programs/firefox/policies.nix @@ -1,31 +1,44 @@ { - DisablePocket = true; - DisableFirefoxStudies = true; AppAutoUpdate = false; # Disable automatic application update - ManualAppUpdateOnly = true; # No update prompts - DontCheckDefaultBrowser = true; - + AutofillAddressEnabled = false; + AutofillCreditCardEnabled = false; + DisableFirefoxAccounts = true; + DisableFirefoxStudies = true; + DisableFormHistory = true; + DisablePocket = true; + DisableProfileImport = true; + DisableProfileRefresh = true; DisableTelemetry = true; + DontCheckDefaultBrowser = true; + DisableSetDesktopBackground = 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; + Search = false; Snippets = false; + SponsoredPocket = false; + SponsoredTopSites = false; + TopSites = false; + }; + FirefoxSuggest = { + WebSuggestions = false; + SponsoredSuggestions = false; + ImproveSuggest = false; + Locked = true; }; + Homepage = { + StartPage = "previous-session"; + }; + NewTabPage = false; + OfferToSaveLogins = false; + OfferToSaveLoginsDefault = false; + ManualAppUpdateOnly = true; # No update prompts + NoDefaultBookmarks = true; + PasswordManagerEnabled = false; # we use 1password } diff --git a/home/programs/firefox/search.nix b/home/programs/firefox/search.nix new file mode 100644 index 0000000..33aac55 --- /dev/null +++ b/home/programs/firefox/search.nix @@ -0,0 +1,90 @@ +{ pkgs, ... }: +{ + force = true; + default = "ddg"; + order = [ + "ddg" + "google" + "github" + ]; + + engines = { + "ddg" = { + urls = [ { template = "https://duckduckgo.com/?q={searchTerms}"; } ]; + definedAliases = [ "d" ]; + }; + + "github" = { + urls = [ { template = "https://github.com/search?q={searchTerms}&type=code"; } ]; + definedAliases = [ "ghc" ]; + }; + + "nix-packages" = { + urls = [ + { + template = "https://search.nixos.org/packages"; + params = [ + { + name = "channel"; + value = "unstable"; + } + { + name = "type"; + value = "packages"; + } + { + name = "query"; + value = "{searchTerms}"; + } + ]; + } + ]; + + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "np" ]; + }; + + "home-manager" = { + urls = [ { template = "https://rycee.gitlab.io/home-manager/options.html"; } ]; + definedAliases = [ "hm" ]; + }; + + "nixos-options" = { + urls = [ + { + template = "https://search.nixos.org/options"; + params = [ + { + name = "channel"; + value = "unstable"; + } + { + name = "type"; + value = "packages"; + } + { + name = "query"; + value = "{searchTerms}"; + } + ]; + } + ]; + + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "no" ]; + }; + + "nixos-wiki" = { + urls = [ { template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; } ]; + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "nw" ]; + }; + + "amazondotcom-us".metaData.hidden = true; + "bing".metaData.hidden = true; + "ebay".metaData.hidden = true; + "google".metaData.hidden = true; + "google".metaData.alias = "g"; + "wikipedia".metaData.hidden = true; + }; +} diff --git a/home/programs/firefox/settings.nix b/home/programs/firefox/settings.nix index 304c99f..27100a0 100644 --- a/home/programs/firefox/settings.nix +++ b/home/programs/firefox/settings.nix @@ -1,9 +1,81 @@ { + "accessibility.force_disabled" = 0; + "browser.aboutConfig.showWarning" = false; # don't need to show warnings for about config + "browser.discovery.enabled" = false; # disable making personalized extension recommendations + "browser.download.alwaysOpenPanel" = false; + "browser.download.autohideButton" = false; + "browser.formfill.enable" = false; + "browser.link.open_newwindow" = 3; + "browser.newtab.url" = "about:home"; + "browser.newtabpage.activity-stream.enabled" = true; + "browser.newtabpage.activity-stream.feeds.section.topstories" = false; + "browser.newtabpage.activity-stream.feeds.topsites" = false; + "browser.newtabpage.activity-stream.showSponsored" = false; + "browser.newtabpage.activity-stream.showWeather" = false; + "browser.newtabpage.activity-stream.telemetry" = false; + "browser.uiCustomization.state" = builtins.toJSON { + currentVersion = 20; + newElementCount = 5; + dirtyAreaCache = [ + "nav-bar" + "PersonalToolbar" + "toolbar-menubar" + "TabsToolbar" + "widget-overflow-fixed-list" + ]; + placements = { + PersonalToolbar = [ "personal-bookmarks" ]; + TabsToolbar = [ + "tabbrowser-tabs" + "new-tab-button" + "alltabs-button" + ]; + nav-bar = [ + "back-button" + "forward-button" + "stop-reload-button" + "urlbar-container" + "downloads-button" + "ublock0_raymondhill_net-browser-action" + "unified-extensions-button" + ]; + toolbar-menubar = [ "menubar-items" ]; + unified-extensions-area = [ ]; + widget-overflow-fixed-list = [ ]; + }; + seen = [ + "save-to-pocket-button" + "developer-button" + "ublock0_raymondhill_net-browser-action" + "_testpilot-containers-browser-action" + ]; + }; + "browser.newtabpage.enabled" = false; # disable new tab page + "browser.search.suggest.enabled.private" = true; + "browser.sessionstore.restore_pinned_tabs_on_demand" = true; + "browser.startup.page" = 3; "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.tabs.insertAfterCurrent" = true; + "browser.tabs.tabmanager.enabled" = false; + "browser.urlbar.scotchBonnet.enableOverride" = false; + "browser.urlbar.shortcuts.bookmarks" = false; + "browser.urlbar.shortcuts.history" = false; + "browser.urlbar.shortcuts.quickactions" = false; + "browser.urlbar.shortcuts.tabs" = false; + "browser.urlbar.suggest.engines" = false; + "browser.urlbar.suggest.history" = false; + "browser.urlbar.suggest.openpage" = false; + "browser.urlbar.suggest.quickactions" = false; + "browser.urlbar.suggest.topsites" = false; "browser.urlbar.trimURLs" = false; # show the complete URL + "browser.warnOnQuitShortcut" = false; + "datareporting.healthreport.uploadEnabled" = false; + "permissions.default.desktop-notification" = 2; + "permissions.default.geo" = 2; + "places.history.enabled" = false; "sidebar.main.tools" = "aichat,history,bookmarks"; "sidebar.revamp" = true; "sidebar.verticalTabs" = true; # vertical tabs + "signon.rememberSignons" = false; # we are using 1password } |
