diff --git a/system/options.nix b/system/options.nix index 5fd90329e2b2..ac1262d7f9b3 100644 --- a/system/options.nix +++ b/system/options.nix @@ -145,6 +145,8 @@ description = '' A list of additional packages supplying kernel modules. ''; + merge = name: list: + pkgsArg: pkgs.lib.concatMap (f: f pkgsArg) list; }; kernelModules = mkOption { @@ -1764,6 +1766,15 @@ a package, or have an interactive process of extraction and cannot be redistributed. "; + merge = pkgs.lib.mergeListOption; + }; + + addUdevPkgs = mkOption { + default = []; + description = " + List of packages containing udev rules. + "; + merge = pkgs.lib.mergeListOption; }; sndMode = mkOption { @@ -2752,6 +2763,8 @@ root ALL=(ALL) SETENV: ALL packages. The function will be called with the Nix Packages collection as its argument for convenience. "; + merge = name: list: + pkgsArg: pkgs.lib.concatMap (f: f pkgsArg) list; }; nix = mkOption { diff --git a/upstart-jobs/default.nix b/upstart-jobs/default.nix index ce2cf17060d4..9882c5909305 100644 --- a/upstart-jobs/default.nix +++ b/upstart-jobs/default.nix @@ -100,7 +100,8 @@ let ++ config.services.udev.addFirmware; extraUdevPkgs = pkgs.lib.optional config.services.hal.enable pkgs.hal - ++ pkgs.lib.optional config.hardware.enableGo7007 kernelPackages.wis_go7007; + ++ pkgs.lib.optional config.hardware.enableGo7007 kernelPackages.wis_go7007 + ++ config.services.udev.addUdevPkgs; }) # Makes LVM logical volumes available.