diff options
author | Jan Malakhovski <oxij@oxij.org> | 2018-03-10 14:41:34 +0000 |
---|---|---|
committer | Jan Malakhovski <oxij@oxij.org> | 2018-03-10 20:38:13 +0000 |
commit | 7079e744d4666db3af186899fe2fc0ef3cbeb842 (patch) | |
tree | d65e951be75dab998ecd2e8337e1c30e7722e28c /nixos/modules/services/x11 | |
parent | 4eec6bc9c9cafac55dbf774a2fd30da7e5a79cc4 (diff) | |
parent | ddddca5c2fe1c93369404979ac194a1bc5d5fbaf (diff) | |
download | nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.gz nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.bz2 nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.lz nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.xz nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.zst nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.zip |
Merge branch 'master' into staging
Resolved the following conflicts (by carefully applying patches from the both branches since the fork point): pkgs/development/libraries/epoxy/default.nix pkgs/development/libraries/gtk+/3.x.nix pkgs/development/python-modules/asgiref/default.nix pkgs/development/python-modules/daphne/default.nix pkgs/os-specific/linux/systemd/default.nix
Diffstat (limited to 'nixos/modules/services/x11')
-rw-r--r-- | nixos/modules/services/x11/display-managers/lightdm.nix | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/nixos/modules/services/x11/display-managers/lightdm.nix b/nixos/modules/services/x11/display-managers/lightdm.nix index b5e936830918..9d30155a7234 100644 --- a/nixos/modules/services/x11/display-managers/lightdm.nix +++ b/nixos/modules/services/x11/display-managers/lightdm.nix @@ -9,6 +9,10 @@ let xEnv = config.systemd.services."display-manager".environment; cfg = dmcfg.lightdm; + dmDefault = xcfg.desktopManager.default; + wmDefault = xcfg.windowManager.default; + hasDefaultUserSession = dmDefault != "none" || wmDefault != "none"; + inherit (pkgs) stdenv lightdm writeScript writeText; # lightdm runs with clearenv(), but we need a few things in the enviornment for X to startup @@ -54,14 +58,13 @@ let autologin-user-timeout = ${toString cfg.autoLogin.timeout} autologin-session = ${defaultSessionName} ''} + ${optionalString hasDefaultUserSession '' + user-session=${defaultSessionName} + ''} ${cfg.extraSeatDefaults} ''; - defaultSessionName = - let - dm = xcfg.desktopManager.default; - wm = xcfg.windowManager.default; - in dm + optionalString (wm != "none") ("+" + wm); + defaultSessionName = dmDefault + optionalString (wmDefault != "none") ("+" + wmDefault); in { # Note: the order in which lightdm greeter modules are imported @@ -179,6 +182,14 @@ in default session: ${defaultSessionName} is not valid. ''; } + { assertion = hasDefaultUserSession -> elem defaultSessionName dmcfg.session.names; + message = '' + services.xserver.desktopManager.default and + services.xserver.windowMananger.default are not set to valid + values. The current default session: ${defaultSessionName} + is not valid. + ''; + } { assertion = !cfg.greeter.enable -> (cfg.autoLogin.enable && cfg.autoLogin.timeout == 0); message = '' LightDM can only run without greeter if automatic login is enabled and the timeout for it |