diff options
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/web/aria2/default.nix | 1 | ||||
| -rw-r--r-- | modules/web/brave/default.nix | 91 | ||||
| -rw-r--r-- | modules/web/chromium/browserpass.nix | 14 | ||||
| -rw-r--r-- | modules/web/chromium/default.nix | 83 | ||||
| -rw-r--r-- | modules/web/default.nix | 2 |
5 files changed, 99 insertions, 92 deletions
diff --git a/modules/web/aria2/default.nix b/modules/web/aria2/default.nix index 52664d2..3ec639e 100644 --- a/modules/web/aria2/default.nix +++ b/modules/web/aria2/default.nix @@ -18,6 +18,7 @@ settings = { dir = "${config.home.homeDirectory}/Downloads"; }; + systemd.enable = true; }; }; } diff --git a/modules/web/brave/default.nix b/modules/web/brave/default.nix deleted file mode 100644 index 5276f5a..0000000 --- a/modules/web/brave/default.nix +++ /dev/null @@ -1,91 +0,0 @@ -# Brave - Privacy-focused web browser configuration -{ - config, - lib, - pkgs, - ... -}: -{ - options.web.brave = { - enable = lib.mkEnableOption "Enables brave."; - }; - - config = lib.mkIf config.web.brave.enable { - programs.brave = { - enable = true; - package = pkgs.brave; - - commandLineArgs = [ - "--enable-features=BraveUltraDarkTheme" - "--force-device-scale-factor=1.15" - ]; - - extensions = [ - { id = "nngceckbapebfimnlniiiahkandclblb"; } - { id = "mpkodccbngfoacfalldjimigbofkhgjn"; } - { id = "eimadpbcbfnmbkopoojfekhnkhdbieeh"; } - { id = "hpejmncgbammabkkodflfeekpcicfjnk"; } - ]; - }; - - xdg.configFile."BraveSoftware/Brave-Browser/policies/managed/policy.json" = { - text = builtins.toJSON { - RestoreOnStartup = 1; - DefaultNotificationsSetting = 2; - ForceDarkMode = true; - DefaultCookiesSetting = 1; - PasswordManagerEnabled = false; - }; - }; - - xdg.mimeApps.defaultApplications = { - "x-scheme-handler/http" = "brave-browser.desktop"; - "x-scheme-handler/https" = "brave-browser.desktop"; - "x-scheme-handler/chrome" = "brave-browser.desktop"; - "text/html" = "brave-browser.desktop"; - "application/xhtml+xml" = "brave-browser.desktop"; - }; - - xdg.configFile."BraveSoftware/Brave-Browser/Default/Preferences" = { - force = true; - text = builtins.toJSON { - brave = { - darker_mode = false; - enable_window_closing_confirm = false; - tabs = { - vertical_tabs_enabled = true; - vertical_tabs_collapsed = true; - vertical_tabs_floating_enabled = false; - always_hide_tab_close_button = true; - }; - show_side_panel_button = false; - ai_chat = { - show_toolbar_button = false; - }; - wallet = { - show_wallet_icon_on_toolbar = false; - }; - }; - browser = { - show_full_urls = true; - }; - credentials_enable_service = false; - credentials_enable_autosignin = false; - extensions = { - pinned_extensions = [ - "nngceckbapebfimnlniiiahkandclblb" - "eimadpbcbfnmbkopoojfekhnkhdbieeh" - ]; - ui = { - developer_mode = true; - }; - }; - profile = { - default_content_setting_values = { - notifications = 2; - }; - }; - }; - }; - }; -} diff --git a/modules/web/chromium/browserpass.nix b/modules/web/chromium/browserpass.nix new file mode 100644 index 0000000..a07b1d7 --- /dev/null +++ b/modules/web/chromium/browserpass.nix @@ -0,0 +1,14 @@ +# Browserpass - browser extension providing it access to your password store +{ + lib, + config, + ... +}: +{ + config = lib.mkIf (config.web.chromium.enable && config.security.gopass.enable) { + programs.browserpass = { + enable = true; + browsers = [ "chromium" ]; + }; + }; +} diff --git a/modules/web/chromium/default.nix b/modules/web/chromium/default.nix new file mode 100644 index 0000000..4296430 --- /dev/null +++ b/modules/web/chromium/default.nix @@ -0,0 +1,83 @@ +# Chromium - Web browser configuration +{ + config, + lib, + ... +}: +{ + imports = [ + ./browserpass.nix + ]; + + options.web.chromium = { + enable = lib.mkEnableOption "Enables chromium."; + package = lib.mkOption { + type = lib.types.package; + default = config.programs.chromium.finalPackage; + defaultText = lib.literalExpression "config.programs.chromium.finalPackage"; + description = "Package to use for chromium. Defaults to the wrapped finalPackage from programs.chromium."; + }; + }; + + config = lib.mkIf config.web.chromium.enable { + programs.chromium = { + enable = true; + + commandLineArgs = [ + "--force-device-scale-factor=1.15" + ]; + + extensions = [ + { id = "ddkjiahejlhfcafbddmgiahcphecmpfh"; } # uBlock Origin Lite + { id = "naepdomgkenhinolocfifgehidddafch"; } # Browserpass + { id = "mpkodccbngfoacfalldjimigbofkhgjn"; } # Dark Reader + { id = "eimadpbcbfnmbkopoojfekhnkhdbieeh"; } # Dark Reader + { id = "hpejmncgbammabkkodflfeekpcicfjnk"; } # Aria2 Explorer + ]; + }; + + xdg.mimeApps.defaultApplications = { + "x-scheme-handler/http" = "chromium-browser.desktop"; + "x-scheme-handler/https" = "chromium-browser.desktop"; + "x-scheme-handler/chrome" = "chromium-browser.desktop"; + "text/html" = "chromium-browser.desktop"; + "application/xhtml+xml" = "chromium-browser.desktop"; + }; + + xdg.configFile."chromium/Default/Preferences" = { + force = true; + text = builtins.toJSON { + browser = { + show_full_urls = true; + theme = { + follows_system_colors = true; + }; + }; + vertical_tabs = { + collapsed_state = true; + enabled = true; + enabled_first_time = true; + uncollapsed_width = 240; + }; + credentials_enable_service = false; + credentials_enable_autosignin = false; + extensions = { + pinned_extensions = [ + "ddkjiahejlhfcafbddmgiahcphecmpfh" + "naepdomgkenhinolocfifgehidddafch" + "eimadpbcbfnmbkopoojfekhnkhdbieeh" + ]; + ui = { + developer_mode = true; + }; + }; + profile = { + default_content_setting_values = { + notifications = 2; + }; + }; + high_efficiency_mode_enabled = true; + }; + }; + }; +} diff --git a/modules/web/default.nix b/modules/web/default.nix index 436241a..8529770 100644 --- a/modules/web/default.nix +++ b/modules/web/default.nix @@ -3,7 +3,7 @@ { imports = [ ./aria2 - ./brave + ./chromium ./w3m ]; } |
