summary refs log tree commit diff
path: root/nixos/modules
diff options
context:
space:
mode:
authorRostislav Beneš <r.dee.b.b@gmail.com>2017-05-07 22:27:02 +0200
committerFranz Pletz <fpletz@fnordicwalking.de>2017-09-28 00:18:57 +0200
commit4ef82339c9a32548d2432ca71e8aac87abe79777 (patch)
tree219dfd2e5def33e0d8afb25325c5b4cdb54a05ce /nixos/modules
parent4f91397c987739cc96e1dd418f79fc0d94326485 (diff)
downloadnixlib-4ef82339c9a32548d2432ca71e8aac87abe79777.tar
nixlib-4ef82339c9a32548d2432ca71e8aac87abe79777.tar.gz
nixlib-4ef82339c9a32548d2432ca71e8aac87abe79777.tar.bz2
nixlib-4ef82339c9a32548d2432ca71e8aac87abe79777.tar.lz
nixlib-4ef82339c9a32548d2432ca71e8aac87abe79777.tar.xz
nixlib-4ef82339c9a32548d2432ca71e8aac87abe79777.tar.zst
nixlib-4ef82339c9a32548d2432ca71e8aac87abe79777.zip
nixos/gdm,nvidia: new options to enable GDM on Wayland and disabling it for nvidia drivers.
Diffstat (limited to 'nixos/modules')
-rw-r--r--nixos/modules/hardware/video/nvidia.nix6
-rw-r--r--nixos/modules/services/x11/display-managers/gdm.nix9
2 files changed, 15 insertions, 0 deletions
diff --git a/nixos/modules/hardware/video/nvidia.nix b/nixos/modules/hardware/video/nvidia.nix
index 2bad50d65e7a..52f1773e9c45 100644
--- a/nixos/modules/hardware/video/nvidia.nix
+++ b/nixos/modules/hardware/video/nvidia.nix
@@ -40,6 +40,12 @@ in
 {
 
   config = mkIf enabled {
+    assertions = [
+      {
+        assertion = services.xserver.displayManager.gdm.wayland;
+        message = "NVidia drivers don't support wayland";
+      }
+    ];
 
     services.xserver.drivers = singleton
       { name = "nvidia"; modules = [ nvidia_x11.bin ]; libPath = [ nvidia_x11 ]; };
diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix
index b0a3ff1bb753..e68bc816aad2 100644
--- a/nixos/modules/services/x11/display-managers/gdm.nix
+++ b/nixos/modules/services/x11/display-managers/gdm.nix
@@ -64,6 +64,14 @@ in
         };
       };
 
+      wayland = mkOption {
+        default = true;
+        description = ''
+          Allow GDM run on Wayland instead of Xserver
+        '';
+        type = types.bool;
+      };
+
     };
 
   };
@@ -139,6 +147,7 @@ in
     # presented and there's a little delay.
     environment.etc."gdm/custom.conf".text = ''
       [daemon]
+      WaylandEnable=${if cfg.gdm.wayland then "true" else "false"}
       ${optionalString cfg.gdm.autoLogin.enable (
         if cfg.gdm.autoLogin.delay > 0 then ''
           TimedLoginEnable=true