xserver.displayManager: change default

Switch from slim to lightdm as the display-manager.
If plasma5 is used as desktop-manager use sdddm.
If gnome3 is used as desktop-manager use gdm.

Based on #12516

lassulus fc035da4 678695fd

+27 -10
+7
nixos/doc/manual/release-notes/rl-1809.xml
··· 521 521 all user units for each authenticated user. 522 522 </para> 523 523 </listitem> 524 + <listitem> 525 + <para> 526 + The default display manager is now LightDM. 527 + To use SLiM set <literal>services.xserver.displayManager.slim.enable</literal> 528 + to <literal>true</literal>. 529 + </para> 530 + </listitem> 524 531 </itemizedlist> 525 532 </section> 526 533 </section>
+3
nixos/modules/services/x11/desktop-managers/gnome3.nix
··· 132 132 133 133 fonts.fonts = [ pkgs.dejavu_fonts pkgs.cantarell-fonts ]; 134 134 135 + services.xserver.displayManager.gdm.enable = mkDefault true; 135 136 services.xserver.displayManager.extraSessionFilePackages = [ pkgs.gnome3.gnome-session ]; 136 137 137 138 services.xserver.displayManager.sessionCommands = '' ··· 160 161 # Let nautilus find extensions 161 162 # TODO: Create nautilus-with-extensions package 162 163 environment.variables.NAUTILUS_EXTENSION_DIR = "${config.system.path}/lib/nautilus/extensions-3.0"; 164 + 165 + services.xserver.updateDbusEnvironment = true; 163 166 164 167 environment.variables.GIO_EXTRA_MODULES = [ "${lib.getLib pkgs.gnome3.dconf}/lib/gio/modules" 165 168 "${pkgs.gnome3.glib-networking.out}/lib/gio/modules"
+5 -3
nixos/modules/services/x11/display-managers/auto.nix
··· 41 41 42 42 config = mkIf cfg.enable { 43 43 44 - services.xserver.displayManager.slim = { 44 + services.xserver.displayManager.lightdm = { 45 45 enable = true; 46 - autoLogin = true; 47 - defaultUser = cfg.user; 46 + autoLogin = { 47 + enable = true; 48 + user = cfg.user; 49 + }; 48 50 }; 49 51 50 52 };
+1 -1
nixos/modules/services/x11/display-managers/gdm.nix
··· 87 87 } 88 88 ]; 89 89 90 - services.xserver.displayManager.slim.enable = false; 90 + services.xserver.displayManager.lightdm.enable = false; 91 91 92 92 users.users.gdm = 93 93 { name = "gdm";
-2
nixos/modules/services/x11/display-managers/lightdm.nix
··· 191 191 } 192 192 ]; 193 193 194 - services.xserver.displayManager.slim.enable = false; 195 - 196 194 services.xserver.displayManager.job = { 197 195 logToFile = true; 198 196
-2
nixos/modules/services/x11/display-managers/sddm.nix
··· 206 206 } 207 207 ]; 208 208 209 - services.xserver.displayManager.slim.enable = false; 210 - 211 209 services.xserver.displayManager.job = { 212 210 logToFile = true; 213 211
+1 -1
nixos/modules/services/x11/display-managers/slim.nix
··· 49 49 50 50 enable = mkOption { 51 51 type = types.bool; 52 - default = config.services.xserver.enable; 52 + default = false; 53 53 description = '' 54 54 Whether to enable SLiM as the display manager. 55 55 '';
+9
nixos/modules/services/x11/xserver.nix
··· 535 535 536 536 config = mkIf cfg.enable { 537 537 538 + services.xserver.displayManager.lightdm.enable = 539 + let dmconf = cfg.displayManager; 540 + default = !( dmconf.auto.enable 541 + || dmconf.gdm.enable 542 + || dmconf.sddm.enable 543 + || dmconf.slim.enable 544 + || dmconf.xpra.enable ); 545 + in mkIf (default) true; 546 + 538 547 hardware.opengl.enable = mkDefault true; 539 548 540 549 services.xserver.videoDrivers = mkIf (cfg.videoDriver != null) [ cfg.videoDriver ];
-1
nixos/tests/gnome3-gdm.nix
··· 11 11 12 12 services.xserver.enable = true; 13 13 14 - services.xserver.displayManager.slim.enable = false; 15 14 services.xserver.displayManager.gdm = { 16 15 enable = true; 17 16 autoLogin = {
+1
nixos/tests/gnome3.nix
··· 11 11 12 12 services.xserver.enable = true; 13 13 14 + services.xserver.displayManager.gdm.enable = false; 14 15 services.xserver.displayManager.lightdm.enable = true; 15 16 services.xserver.displayManager.lightdm.autoLogin.enable = true; 16 17 services.xserver.displayManager.lightdm.autoLogin.user = "alice";