diff options
author | Gabriel Ebner <gebner@gebner.org> | 2016-08-05 18:29:02 +0200 |
---|---|---|
committer | Gabriel Ebner <gebner@gebner.org> | 2016-08-05 18:31:04 +0200 |
commit | 5e6ac5fcf30be007ab38c1b5588a24d8ed048db6 (patch) | |
tree | 199615d1b7621f6d8e0b26ec538d62385ce3983b /nixos/modules/services/x11/xserver.nix | |
parent | 632f9060f1257f3cb45df2a64709cd48efa4238c (diff) | |
download | nixlib-5e6ac5fcf30be007ab38c1b5588a24d8ed048db6.tar nixlib-5e6ac5fcf30be007ab38c1b5588a24d8ed048db6.tar.gz nixlib-5e6ac5fcf30be007ab38c1b5588a24d8ed048db6.tar.bz2 nixlib-5e6ac5fcf30be007ab38c1b5588a24d8ed048db6.tar.lz nixlib-5e6ac5fcf30be007ab38c1b5588a24d8ed048db6.tar.xz nixlib-5e6ac5fcf30be007ab38c1b5588a24d8ed048db6.tar.zst nixlib-5e6ac5fcf30be007ab38c1b5588a24d8ed048db6.zip |
nixos/x11: output sections for modesetting driver
See #17487.
Diffstat (limited to 'nixos/modules/services/x11/xserver.nix')
-rw-r--r-- | nixos/modules/services/x11/xserver.nix | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix index e7df2e6b4690..51f55322ca61 100644 --- a/nixos/modules/services/x11/xserver.nix +++ b/nixos/modules/services/x11/xserver.nix @@ -14,6 +14,9 @@ let # Map video driver names to driver packages. FIXME: move into card-specific modules. knownVideoDrivers = { virtualbox = { modules = [ kernelPackages.virtualboxGuestAdditions ]; driverName = "vboxvideo"; }; + + # modesetting does not have a xf86videomodesetting package as it is included in xorgserver + modesetting = {}; }; fontsForXServer = @@ -435,15 +438,14 @@ in services.xserver.videoDrivers = mkIf (cfg.videoDriver != null) [ cfg.videoDriver ]; - # FIXME: somehow check for unknown driver names. - services.xserver.drivers = flip concatMap cfg.videoDrivers (name: + services.xserver.drivers = flip map cfg.videoDrivers (name: let driver = attrByPath [name] (if xorg ? ${"xf86video" + name} then { modules = [xorg.${"xf86video" + name}]; } - else null) + else throw "Unknown video driver: ${name}") knownVideoDrivers; - in optional (driver != null) ({ inherit name; driverName = name; } // driver)); + in { inherit name; modules = []; driverName = name; } // driver); assertions = [ { assertion = config.security.polkit.enable; |