From 7a0e9a67824aa05f972459aefc2caafe6fdc0f88 Mon Sep 17 00:00:00 2001 From: ThinkChaos Date: Sat, 1 Jul 2023 09:41:37 -0400 Subject: [PATCH] chromium: fix `commandLineArgs` to use the user specified package (#4175) --- modules/programs/chromium.nix | 34 ++++++++++++++-------------------- 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/modules/programs/chromium.nix b/modules/programs/chromium.nix index 646d84730..c97fd0599 100644 --- a/modules/programs/chromium.nix +++ b/modules/programs/chromium.nix @@ -42,9 +42,6 @@ let description = '' List of command-line arguments to be passed to ${name}. - Note this option does not have any effect when using a - custom package for . - For a list of common switches, see Chrome switches. @@ -162,21 +159,19 @@ let }); }; + package = if cfg.commandLineArgs != [ ] then + cfg.package.override { + commandLineArgs = concatStringsSep " " cfg.commandLineArgs; + } + else + cfg.package; + in mkIf cfg.enable { - home.packages = [ cfg.package ]; + home.packages = [ package ]; home.file = optionalAttrs (!isProprietaryChrome) (listToAttrs (map extensionJson cfg.extensions)); }; - browserPkgs = genAttrs supportedBrowsers (browser: - let cfg = config.programs.${browser}; - in if cfg.commandLineArgs != [ ] then - pkgs.${browser}.override { - commandLineArgs = concatStringsSep " " cfg.commandLineArgs; - } - else - pkgs.${browser}); - in { # Extensions do not work with the proprietary Google Chrome version # see https://github.com/nix-community/home-manager/issues/1383 @@ -188,15 +183,14 @@ in { ]; options.programs = { - chromium = browserModule browserPkgs.chromium "Chromium" true; - google-chrome = - browserModule browserPkgs.google-chrome "Google Chrome" false; + chromium = browserModule pkgs.chromium "Chromium" true; + google-chrome = browserModule pkgs.google-chrome "Google Chrome" false; google-chrome-beta = - browserModule browserPkgs.google-chrome-beta "Google Chrome Beta" false; + browserModule pkgs.google-chrome-beta "Google Chrome Beta" false; google-chrome-dev = - browserModule browserPkgs.google-chrome-dev "Google Chrome Dev" false; - brave = browserModule browserPkgs.brave "Brave Browser" false; - vivaldi = browserModule browserPkgs.vivaldi "Vivaldi Browser" false; + browserModule pkgs.google-chrome-dev "Google Chrome Dev" false; + brave = browserModule pkgs.brave "Brave Browser" false; + vivaldi = browserModule pkgs.vivaldi "Vivaldi Browser" false; }; config = mkMerge