treewide: rename renamed sddm/displayManager settings

+1 -1
nixos/doc/manual/configuration/modularity.section.md
···
{ config, pkgs, ... }:
{ services.xserver.enable = true;
-
services.xserver.displayManager.sddm.enable = true;
+
services.displayManager.sddm.enable = true;
services.xserver.desktopManager.plasma5.enable = true;
environment.systemPackages = [ pkgs.vim ];
}
+1 -1
nixos/doc/manual/configuration/profiles/demo.section.md
···
# Demo {#sec-profile-demo}
This profile just enables a `demo` user, with password `demo`, uid `1000`, `wheel` group and
-
[autologin in the SDDM display manager](#opt-services.xserver.displayManager.autoLogin).
+
[autologin in the SDDM display manager](#opt-services.displayManager.autoLogin).
+1 -1
nixos/doc/manual/configuration/profiles/graphical.section.md
···
graphical installation CD.
It sets [](#opt-services.xserver.enable),
-
[](#opt-services.xserver.displayManager.sddm.enable),
+
[](#opt-services.displayManager.sddm.enable),
[](#opt-services.xserver.desktopManager.plasma5.enable),
and [](#opt-services.xserver.libinput.enable) to true. It also
includes glxinfo and firefox in the system packages list.
+4 -4
nixos/doc/manual/configuration/x-windows.chapter.md
···
```nix
{
-
services.xserver.displayManager.sddm.enable = true;
+
services.displayManager.sddm.enable = true;
services.xserver.displayManager.gdm.enable = true;
}
```
···
```nix
{
-
services.xserver.displayManager.defaultSession = "none+i3";
+
services.displayManager.defaultSession = "none+i3";
}
```
···
```nix
{
services.xserver.displayManager.lightdm.enable = true;
-
services.xserver.displayManager.autoLogin.enable = true;
-
services.xserver.displayManager.autoLogin.user = "alice";
+
services.displayManager.autoLogin.enable = true;
+
services.displayManager.autoLogin.user = "alice";
}
```
+1 -1
nixos/doc/manual/configuration/xfce.chapter.md
···
```nix
{
services.xserver.desktopManager.xfce.enable = true;
-
services.xserver.displayManager.defaultSession = "xfce";
+
services.displayManager.defaultSession = "xfce";
}
```
+14 -15
nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-gnome.nix
···
QT_QPA_PLATFORM = "$([[ $XDG_SESSION_TYPE = \"wayland\" ]] && echo \"wayland\")";
};
-
services.xserver.displayManager = {
-
gdm = {
-
enable = true;
-
# autoSuspend makes the machine automatically suspend after inactivity.
-
# It's possible someone could/try to ssh'd into the machine and obviously
-
# have issues because it's inactive.
-
# See:
-
# * https://github.com/NixOS/nixpkgs/pull/63790
-
# * https://gitlab.gnome.org/GNOME/gnome-control-center/issues/22
-
autoSuspend = false;
-
};
-
autoLogin = {
-
enable = true;
-
user = "nixos";
-
};
+
services.xserver.displayManager.gdm = {
+
enable = true;
+
# autoSuspend makes the machine automatically suspend after inactivity.
+
# It's possible someone could/try to ssh'd into the machine and obviously
+
# have issues because it's inactive.
+
# See:
+
# * https://github.com/NixOS/nixpkgs/pull/63790
+
# * https://gitlab.gnome.org/GNOME/gnome-control-center/issues/22
+
autoSuspend = false;
+
};
+
+
services.displayManager.autoLogin = {
+
enable = true;
+
user = "nixos";
};
}
+9 -11
nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma5.nix
···
isoImage.edition = "plasma5";
-
services.xserver = {
-
desktopManager.plasma5 = {
-
enable = true;
-
};
+
services.xserver.desktopManager.plasma5 = {
+
enable = true;
+
};
-
# Automatically login as nixos.
-
displayManager = {
-
sddm.enable = true;
-
autoLogin = {
-
enable = true;
-
user = "nixos";
-
};
+
# Automatically login as nixos.
+
services.displayManager = {
+
sddm.enable = true;
+
autoLogin = {
+
enable = true;
+
user = "nixos";
};
};
+7 -9
nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix
···
isoImage.edition = "plasma6";
-
services.xserver = {
-
desktopManager.plasma6.enable = true;
+
services.desktopManager.plasma6.enable = true;
-
# Automatically login as nixos.
-
displayManager = {
-
sddm.enable = true;
-
autoLogin = {
-
enable = true;
-
user = "nixos";
-
};
+
# Automatically login as nixos.
+
services.displayManager = {
+
sddm.enable = true;
+
autoLogin = {
+
enable = true;
+
user = "nixos";
};
};
+13 -15
nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
···
enable = true;
};
-
services.xserver.displayManager = {
-
gdm = {
-
enable = true;
-
# autoSuspend makes the machine automatically suspend after inactivity.
-
# It's possible someone could/try to ssh'd into the machine and obviously
-
# have issues because it's inactive.
-
# See:
-
# * https://github.com/NixOS/nixpkgs/pull/63790
-
# * https://gitlab.gnome.org/GNOME/gnome-control-center/issues/22
-
autoSuspend = false;
-
};
-
autoLogin = {
-
enable = true;
-
user = "nixos";
-
};
+
services.xserver.displayManager.gdm = {
+
enable = true;
+
# autoSuspend makes the machine automatically suspend after inactivity.
+
# It's possible someone could/try to ssh'd into the machine and obviously
+
# have issues because it's inactive.
+
# See:
+
# * https://github.com/NixOS/nixpkgs/pull/63790
+
# * https://gitlab.gnome.org/GNOME/gnome-control-center/issues/22
+
autoSuspend = false;
};
+
services.displayManager.autoLogin = {
+
enable = true;
+
user = "nixos";
+
};
}
+9 -11
nixos/modules/installer/cd-dvd/installation-cd-graphical-plasma5.nix
···
isoImage.edition = "plasma5";
-
services.xserver = {
-
desktopManager.plasma5 = {
-
enable = true;
-
};
+
services.xserver.desktopManager.plasma5 = {
+
enable = true;
+
};
-
# Automatically login as nixos.
-
displayManager = {
-
sddm.enable = true;
-
autoLogin = {
-
enable = true;
-
user = "nixos";
-
};
+
# Automatically login as nixos.
+
services.displayManager = {
+
sddm.enable = true;
+
autoLogin = {
+
enable = true;
+
user = "nixos";
};
};
+1 -1
nixos/modules/installer/virtualbox-demo.nix
···
# If you prefer another desktop manager or display manager, you may want
# to disable the default.
# services.xserver.desktopManager.plasma5.enable = lib.mkForce false;
-
# services.xserver.displayManager.sddm.enable = lib.mkForce false;
+
# services.displayManager.sddm.enable = lib.mkForce false;
# Enable GDM/GNOME by uncommenting above two lines and two lines below.
# services.xserver.displayManager.gdm.enable = true;
+1 -1
nixos/modules/programs/miriway.nix
···
programs.xwayland.enable = lib.mkDefault true;
# To make the Miriway session available if a display manager like SDDM is enabled:
-
services.xserver.displayManager.sessionPackages = [ pkgs.miriway ];
+
services.displayManager.sessionPackages = [ pkgs.miriway ];
};
meta.maintainers = with lib.maintainers; [ OPNA2608 ];
+1 -1
nixos/modules/programs/steam.nix
···
};
programs.gamescope.enable = mkDefault cfg.gamescopeSession.enable;
-
services.xserver.displayManager.sessionPackages = mkIf cfg.gamescopeSession.enable [ gamescopeSessionFile ];
+
services.displayManager.sessionPackages = mkIf cfg.gamescopeSession.enable [ gamescopeSessionFile ];
# optionally enable 32bit pulseaudio support if pulseaudio is enabled
hardware.pulseaudio.support32Bit = config.hardware.pulseaudio.enable;
+1 -1
nixos/modules/programs/wayland/cardboard.nix
···
environment.systemPackages = [ cfg.package ];
# To make a cardboard session available for certain DMs like SDDM
-
services.xserver.displayManager.sessionPackages = [ cfg.package ];
+
services.displayManager.sessionPackages = [ cfg.package ];
}
(import ./wayland-session.nix { inherit lib pkgs; })
]);
+1 -1
nixos/modules/programs/wayland/hyprland.nix
···
security.polkit.enable = true;
-
services.xserver.displayManager.sessionPackages = [ cfg.finalPackage ];
+
services.displayManager.sessionPackages = [ cfg.finalPackage ];
xdg.portal = {
enable = mkDefault true;
+1 -1
nixos/modules/programs/wayland/labwc.nix
···
xdg.portal.config.wlroots.default = lib.mkDefault [ "wlr" "gtk" ];
# To make a labwc session available for certain DMs like SDDM
-
services.xserver.displayManager.sessionPackages = [ cfg.package ];
+
services.displayManager.sessionPackages = [ cfg.package ];
}
(import ./wayland-session.nix { inherit lib pkgs; })
]);
+1 -1
nixos/modules/programs/wayland/river.nix
···
environment.systemPackages = optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
# To make a river session available if a display manager like SDDM is enabled:
-
services.xserver.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ];
+
services.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ];
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
xdg.portal.config.river.default = mkDefault [ "wlr" "gtk" ];
+1 -1
nixos/modules/programs/wayland/sway.nix
···
xdg.portal.config.sway.default = mkDefault [ "wlr" "gtk" ];
# To make a Sway session available if a display manager like SDDM is enabled:
-
services.xserver.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ]; }
+
services.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ]; }
(import ./wayland-session.nix { inherit lib pkgs; })
]);
+1 -1
nixos/modules/programs/wayland/wayfire.nix
···
finalPackage
];
-
services.xserver.displayManager.sessionPackages = [ finalPackage ];
+
services.displayManager.sessionPackages = [ finalPackage ];
xdg.portal = {
enable = lib.mkDefault true;
+1 -1
nixos/modules/rename.nix
···
The services.xserver.displayManager.auto module has been removed
because it was only intended for use in internal NixOS tests, and gave the
false impression of it being a special display manager when it's actually
-
LightDM. Please use the services.xserver.displayManager.autoLogin options
+
LightDM. Please use the services.displayManager.autoLogin options
instead, or any other display manager in NixOS as they all support auto-login.
'')
(mkRemovedOptionModule [ "services" "xserver" "multitouch" ] ''
+2 -2
nixos/modules/services/desktop-managers/plasma6.nix
···
xdg.portal.configPackages = mkDefault [kdePackages.xdg-desktop-portal-kde];
services.pipewire.enable = mkDefault true;
-
services.xserver.displayManager = {
+
services.displayManager = {
sessionPackages = [kdePackages.plasma-workspace];
defaultSession = mkDefault "plasma";
};
-
services.xserver.displayManager.sddm = {
+
services.displayManager.sddm = {
package = kdePackages.sddm;
theme = mkDefault "breeze";
wayland.compositor = "kwin";
+2 -2
nixos/modules/services/display-managers/default.nix
···
check = d:
lib.assertMsg (d != null -> (lib.types.str.check d && lib.elem d config.services.displayManager.sessionData.sessionNames)) ''
Default graphical session, '${d}', not found.
-
Valid names for 'services.xserver.displayManager.defaultSession' are:
+
Valid names for 'services.displayManager.defaultSession' are:
${lib.concatStringsSep "\n " cfg.displayManager.sessionData.sessionNames}
'';
};
···
systemd.services.display-manager.enable =
let dmConf = config.services.xserver.displayManager;
noDmUsed = !(dmConf.gdm.enable
-
|| dmConf.sddm.enable
+
|| cfg.sddm.enable
|| dmConf.xpra.enable
|| dmConf.lightdm.enable);
in lib.mkIf noDmUsed (lib.mkDefault false);
+7 -7
nixos/modules/services/display-managers/sddm.nix
···
let
xcfg = config.services.xserver;
-
dmcfg = xcfg.displayManager;
+
dmcfg = config.services.displayManager;
cfg = config.services.displayManager.sddm;
xEnv = config.systemd.services.display-manager.environment;
···
xserverWrapper = pkgs.writeShellScript "xserver-wrapper" ''
${concatMapStrings (n: "export ${n}=\"${getAttr n xEnv}\"\n") (attrNames xEnv)}
-
exec systemd-cat -t xserver-wrapper ${dmcfg.xserverBin} ${toString dmcfg.xserverArgs} "$@"
+
exec systemd-cat -t xserver-wrapper ${xcfg.displayManager.xserverBin} ${toString xcfg.displayManager.xserverArgs} "$@"
'';
Xsetup = pkgs.writeShellScript "Xsetup" ''
${cfg.setupScript}
-
${dmcfg.setupCommands}
+
${xcfg.displayManager.setupCommands}
'';
Xstop = pkgs.writeShellScript "Xstop" ''
···
Numlock = if cfg.autoNumlock then "on" else "none"; # on, off none
# Implementation is done via pkgs/applications/display-managers/sddm/sddm-default-session.patch
-
DefaultSession = optionalString (dmcfg.defaultSession != null) "${dmcfg.defaultSession}.desktop";
+
DefaultSession = optionalString (config.services.displayManager.defaultSession != null) "${config.services.displayManager.defaultSession}.desktop";
DisplayServer = if cfg.wayland.enable then "wayland" else "x11";
} // optionalAttrs (cfg.wayland.compositor == "kwin") {
···
{
assertion = xcfg.enable || cfg.wayland.enable;
message = ''
-
SDDM requires either services.xserver.enable or services.xserver.displayManager.sddm.wayland.enable to be true
+
SDDM requires either services.xserver.enable or services.displayManager.sddm.wayland.enable to be true
'';
}
{
-
assertion = dmcfg.autoLogin.enable -> autoLoginSessionName != null;
+
assertion = config.services.displayManager.autoLogin.enable -> autoLoginSessionName != null;
message = ''
-
SDDM auto-login requires that services.xserver.displayManager.defaultSession is set.
+
SDDM auto-login requires that services.displayManager.defaultSession is set.
'';
}
];
+1 -1
nixos/modules/services/system/nix-daemon.nix
···
users.users = nixbldUsers;
-
services.xserver.displayManager.hiddenUsers = attrNames nixbldUsers;
+
services.displayManager.hiddenUsers = attrNames nixbldUsers;
# Legacy configuration conversion.
nix.settings = mkMerge [
+1 -1
nixos/modules/services/x11/desktop-managers/budgie.nix
···
};
config = mkIf cfg.enable {
-
services.xserver.displayManager.sessionPackages = with pkgs; [
+
services.displayManager.sessionPackages = with pkgs; [
budgie.budgie-desktop
];
+1 -1
nixos/modules/services/x11/desktop-managers/cinnamon.nix
···
config = mkMerge [
(mkIf cfg.enable {
-
services.xserver.displayManager.sessionPackages = [ pkgs.cinnamon.cinnamon-common ];
+
services.displayManager.sessionPackages = [ pkgs.cinnamon.cinnamon-common ];
services.xserver.displayManager.lightdm.greeters.slick = {
enable = mkDefault true;
+2 -2
nixos/modules/services/x11/desktop-managers/deepin.nix
···
config = mkIf cfg.enable
{
-
services.xserver.displayManager.sessionPackages = [ pkgs.deepin.dde-session ];
-
services.xserver.displayManager.defaultSession = mkDefault "dde-x11";
+
services.displayManager.sessionPackages = [ pkgs.deepin.dde-session ];
+
services.displayManager.defaultSession = mkDefault "dde-x11";
# Update the DBus activation environment after launching the desktop manager.
services.xserver.displayManager.sessionCommands = ''
+1 -1
nixos/modules/services/x11/desktop-managers/default.nix
···
default = null;
example = "none";
description = lib.mdDoc ''
-
**Deprecated**, please use [](#opt-services.xserver.displayManager.defaultSession) instead.
+
**Deprecated**, please use [](#opt-services.displayManager.defaultSession) instead.
Default desktop manager loaded if none have been chosen.
'';
+1 -1
nixos/modules/services/x11/desktop-managers/enlightenment.nix
···
"/share/locale"
];
-
services.xserver.displayManager.sessionPackages = [ pkgs.enlightenment.enlightenment ];
+
services.displayManager.sessionPackages = [ pkgs.enlightenment.enlightenment ];
services.xserver.displayManager.sessionCommands = ''
if test "$XDG_CURRENT_DESKTOP" = "Enlightenment"; then
+2 -2
nixos/modules/services/x11/desktop-managers/gnome.nix
···
services.gnome.core-shell.enable = true;
services.gnome.core-utilities.enable = mkDefault true;
-
services.xserver.displayManager.sessionPackages = [ pkgs.gnome.gnome-session.sessions ];
+
services.displayManager.sessionPackages = [ pkgs.gnome.gnome-session.sessions ];
environment.extraInit = ''
${concatMapStrings (p: ''
···
})
(mkIf flashbackEnabled {
-
services.xserver.displayManager.sessionPackages =
+
services.displayManager.sessionPackages =
let
wmNames = map (wm: wm.wmName) flashbackWms;
namesAreUnique = lib.unique wmNames == wmNames;
+1 -1
nixos/modules/services/x11/desktop-managers/lumina.nix
···
config = mkIf cfg.enable {
-
services.xserver.displayManager.sessionPackages = [
+
services.displayManager.sessionPackages = [
pkgs.lumina.lumina
];
+2 -2
nixos/modules/services/x11/desktop-managers/mate.nix
···
config = mkMerge [
(mkIf (cfg.enable || cfg.enableWaylandSession) {
-
services.xserver.displayManager.sessionPackages = [
+
services.displayManager.sessionPackages = [
pkgs.mate.mate-session-manager
];
···
environment.sessionVariables.NIX_GSETTINGS_OVERRIDES_DIR = "${pkgs.mate.mate-gsettings-overrides}/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas";
environment.systemPackages = [ pkgs.mate.mate-wayland-session ];
-
services.xserver.displayManager.sessionPackages = [ pkgs.mate.mate-wayland-session ];
+
services.displayManager.sessionPackages = [ pkgs.mate.mate-wayland-session ];
})
];
}
+2 -2
nixos/modules/services/x11/desktop-managers/pantheon.nix
···
pkgs.pantheon.pantheon-agent-geoclue2
] config.environment.pantheon.excludePackages;
-
services.xserver.displayManager.sessionPackages = [ pkgs.pantheon.elementary-session-settings ];
+
services.displayManager.sessionPackages = [ pkgs.pantheon.elementary-session-settings ];
# Ensure lightdm is used when Pantheon is enabled
# Without it screen locking will be nonfunctional because of the use of lightlocker
···
# Without this, elementary LightDM greeter will pre-select non-existent `default` session
# https://github.com/elementary/greeter/issues/368
-
services.xserver.displayManager.defaultSession = mkDefault "pantheon";
+
services.displayManager.defaultSession = mkDefault "pantheon";
services.xserver.displayManager.sessionCommands = ''
if test "$XDG_CURRENT_DESKTOP" = "Pantheon"; then
+1 -1
nixos/modules/services/x11/desktop-managers/phosh.nix
···
services.gnome.core-shell.enable = true;
services.gnome.core-os-services.enable = true;
-
services.xserver.displayManager.sessionPackages = [ cfg.package ];
+
services.displayManager.sessionPackages = [ cfg.package ];
environment.etc."phosh/phoc.ini".source =
if builtins.isPath cfg.phocConfig then cfg.phocConfig
+6 -6
nixos/modules/services/x11/desktop-managers/plasma5.nix
···
pkgs.media-player-info
];
-
services.xserver.displayManager.sddm = {
+
services.displayManager.sddm = {
theme = mkDefault "breeze";
};
···
system.nixos-generate-config.desktopConfiguration = [
''
# Enable the Plasma 5 Desktop Environment.
-
services.xserver.displayManager.sddm.enable = true;
+
services.displayManager.sddm.enable = true;
services.xserver.desktopManager.plasma5.enable = true;
''
];
-
services.xserver.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-workspace ];
+
services.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-workspace ];
# Default to be `plasma` (X11) instead of `plasmawayland`, since plasma wayland currently has
# many tiny bugs.
# See: https://github.com/NixOS/nixpkgs/issues/143272
-
services.xserver.displayManager.defaultSession = mkDefault "plasma";
+
services.displayManager.defaultSession = mkDefault "plasma";
environment.systemPackages =
with pkgs.plasma5Packages;
···
};
};
-
services.xserver.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-mobile ];
+
services.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-mobile ];
})
# Plasma Bigscreen
···
kdeconnect-kde
];
-
services.xserver.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-bigscreen ];
+
services.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-bigscreen ];
# required for plasma-remotecontrollers to work correctly
hardware.uinput.enable = true;
+1 -1
nixos/modules/services/x11/desktop-managers/surf-display.nix
···
};
config = mkIf cfg.enable {
-
services.xserver.displayManager.sessionPackages = [
+
services.displayManager.sessionPackages = [
pkgs.surf-display
];
+3 -3
nixos/modules/services/x11/display-managers/default.nix
···
source ~/.xprofile
fi
-
${optionalString cfg.displayManager.job.logToJournal ''
+
${optionalString config.services.displayManager.logToJournal ''
if [ -z "$_DID_SYSTEMD_CAT" ]; then
export _DID_SYSTEMD_CAT=1
exec ${config.systemd.package}/bin/systemd-cat -t xsession "$0" "$@"
fi
''}
-
${optionalString cfg.displayManager.job.logToFile ''
+
${optionalString config.services.displayManager.logToFile ''
exec &> >(tee ~/.xsession-errors)
''}
···
assertions = [
{
assertion = cfg.desktopManager.default != null || cfg.windowManager.default != null -> cfg.displayManager.defaultSession == defaultSessionFromLegacyOptions;
-
message = "You cannot use both services.xserver.displayManager.defaultSession option and legacy options (services.xserver.desktopManager.default and services.xserver.windowManager.default).";
+
message = "You cannot use both services.displayManager.defaultSession option and legacy options (services.xserver.desktopManager.default and services.xserver.windowManager.default).";
}
];
+9 -11
nixos/modules/services/x11/display-managers/gdm.nix
···
load-module module-position-event-sounds
'';
-
defaultSessionName = config.services.xserver.displayManager.defaultSession;
+
defaultSessionName = config.services.displayManager.defaultSession;
setSessionScript = pkgs.callPackage ./account-service-util.nix { };
in
···
imports = [
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "gdm" "autoLogin" "enable" ] [
"services"
-
"xserver"
"displayManager"
"autoLogin"
"enable"
])
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "gdm" "autoLogin" "user" ] [
"services"
-
"xserver"
"displayManager"
"autoLogin"
"user"
···
services.xserver.display = null;
services.xserver.verbose = null;
-
services.xserver.displayManager.job =
+
services.displayManager =
{
environment = {
GDM_X_SERVER_EXTRA_ARGS = toString
(filter (arg: arg != "-terminate") cfg.xserverArgs);
XDG_DATA_DIRS = lib.makeSearchPath "share" [
gdm # for gnome-login.session
-
cfg.sessionData.desktops
+
config.services.displayManager.sessionData.desktops
pkgs.gnome.gnome-control-center # for accessibility icon
pkgs.gnome.adwaita-icon-theme
pkgs.hicolor-icon-theme # empty icon theme as a base
···
execCmd = "exec ${gdm}/bin/gdm";
preStart = optionalString (defaultSessionName != null) ''
# Set default session in session chooser to a specified values – basically ignore session history.
-
${setSessionScript}/bin/set-session ${cfg.sessionData.autologinSession}
+
${setSessionScript}/bin/set-session ${config.services.displayManager.sessionData.autologinSession}
'';
};
···
daemon = mkMerge [
{ WaylandEnable = cfg.gdm.wayland; }
# nested if else didn't work
-
(mkIf (cfg.autoLogin.enable && cfg.gdm.autoLogin.delay != 0 ) {
+
(mkIf (config.services.displayManager.autoLogin.enable && cfg.gdm.autoLogin.delay != 0 ) {
TimedLoginEnable = true;
-
TimedLogin = cfg.autoLogin.user;
+
TimedLogin = config.services.displayManager.autoLogin.user;
TimedLoginDelay = cfg.gdm.autoLogin.delay;
})
-
(mkIf (cfg.autoLogin.enable && cfg.gdm.autoLogin.delay == 0 ) {
+
(mkIf (config.services.displayManager.autoLogin.enable && cfg.gdm.autoLogin.delay == 0 ) {
AutomaticLoginEnable = true;
-
AutomaticLogin = cfg.autoLogin.user;
+
AutomaticLogin = config.services.displayManager.autoLogin.user;
})
];
debug = mkIf cfg.gdm.debug {
···
environment.etc."gdm/custom.conf".source = configFile;
-
environment.etc."gdm/Xsession".source = config.services.xserver.displayManager.sessionData.wrapper;
+
environment.etc."gdm/Xsession".source = config.services.displayManager.sessionData.wrapper;
# GDM LFS PAM modules, adapted somehow to NixOS
security.pam.services = {
+1 -1
nixos/modules/services/x11/display-managers/lightdm-greeters/mini.nix
···
Note that this greeter starts only the default X session.
You can configure the default X session using
-
[](#opt-services.xserver.displayManager.defaultSession).
+
[](#opt-services.displayManager.defaultSession).
'';
};
+2 -2
nixos/modules/services/x11/display-managers/lightdm-greeters/tiny.nix
···
Note that this greeter starts only the default X session.
You can configure the default X session using
-
[](#opt-services.xserver.displayManager.defaultSession).
+
[](#opt-services.displayManager.defaultSession).
'';
};
···
{
assertion = dmcfg.defaultSession != null;
message = ''
-
Please set: services.xserver.displayManager.defaultSession
+
Please set: services.displayManager.defaultSession
'';
}
];
+9 -11
nixos/modules/services/x11/display-managers/lightdm.nix
···
let
xcfg = config.services.xserver;
-
dmcfg = xcfg.displayManager;
+
dmcfg = config.services.displayManager;
xEnv = config.systemd.services.display-manager.environment;
-
cfg = dmcfg.lightdm;
+
cfg = xcfg.displayManager.lightdm;
sessionData = dmcfg.sessionData;
setSessionScript = pkgs.callPackage ./account-service-util.nix { };
···
else additionalArgs="-logfile /var/log/X.$display.log"
fi
-
exec ${dmcfg.xserverBin} ${toString dmcfg.xserverArgs} $additionalArgs "$@"
+
exec ${xcfg.displayManager.xserverBin} ${toString xcfg.displayManager.xserverArgs} $additionalArgs "$@"
'';
usersConf = writeText "users.conf"
···
autologin-user-timeout = ${toString cfg.autoLogin.timeout}
autologin-session = ${sessionData.autologinSession}
''}
-
${optionalString (dmcfg.setupCommands != "") ''
+
${optionalString (xcfg.displayManager.setupCommands != "") ''
display-setup-script=${pkgs.writeScript "lightdm-display-setup" ''
#!${pkgs.bash}/bin/bash
-
${dmcfg.setupCommands}
+
${xcfg.displayManager.setupCommands}
''}
''}
${cfg.extraSeatDefaults}
···
./lightdm-greeters/mobile.nix
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "lightdm" "autoLogin" "enable" ] [
"services"
-
"xserver"
"displayManager"
"autoLogin"
"enable"
])
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "lightdm" "autoLogin" "user" ] [
"services"
-
"xserver"
"displayManager"
"autoLogin"
"user"
···
}
{ assertion = dmcfg.autoLogin.enable -> sessionData.autologinSession != null;
message = ''
-
LightDM auto-login requires that services.xserver.displayManager.defaultSession is set.
+
LightDM auto-login requires that services.displayManager.defaultSession is set.
'';
}
{ assertion = !cfg.greeter.enable -> (dmcfg.autoLogin.enable && cfg.autoLogin.timeout == 0);
···
# Set default session in session chooser to a specified values – basically ignore session history.
# Auto-login is already covered by a config value.
-
services.xserver.displayManager.job.preStart = optionalString (!dmcfg.autoLogin.enable && dmcfg.defaultSession != null) ''
+
services.displayManager.preStart = optionalString (!dmcfg.autoLogin.enable && dmcfg.defaultSession != null) ''
${setSessionScript}/bin/set-session ${dmcfg.defaultSession}
'';
# setSessionScript needs session-files in XDG_DATA_DIRS
-
services.xserver.displayManager.job.environment.XDG_DATA_DIRS = "${dmcfg.sessionData.desktops}/share/";
+
services.displayManager.environment.XDG_DATA_DIRS = "${dmcfg.sessionData.desktops}/share/";
# setSessionScript wants AccountsService
systemd.services.display-manager.wants = [
···
];
# lightdm relaunches itself via just `lightdm`, so needs to be on the PATH
-
services.xserver.displayManager.job.execCmd = ''
+
services.displayManager.execCmd = ''
export PATH=${lightdm}/sbin:$PATH
exec ${lightdm}/sbin/lightdm
'';
+1 -1
nixos/modules/services/x11/display-managers/xpra.nix
···
VideoRam 192000
'';
-
services.xserver.displayManager.job.execCmd = ''
+
services.displayManager.execCmd = ''
${optionalString (cfg.pulseaudio)
"export PULSE_COOKIE=/run/pulse/.config/pulse/cookie"}
exec ${pkgs.xpra}/bin/xpra ${if cfg.desktop == null then "start" else "start-desktop --start=${cfg.desktop}"} \
+1 -1
nixos/modules/services/x11/window-managers/default.nix
···
default = null;
example = "wmii";
description = lib.mdDoc ''
-
**Deprecated**, please use [](#opt-services.xserver.displayManager.defaultSession) instead.
+
**Deprecated**, please use [](#opt-services.displayManager.defaultSession) instead.
Default window manager loaded if none have been chosen.
'';
+1 -1
nixos/modules/services/x11/window-managers/ragnarwm.nix
···
###### implementation
config = mkIf cfg.enable {
-
services.xserver.displayManager.sessionPackages = [ cfg.package ];
+
services.displayManager.sessionPackages = [ cfg.package ];
environment.systemPackages = [ cfg.package ];
};
+4 -4
nixos/modules/services/x11/xserver.nix
···
services.xserver.displayManager.lightdm.enable =
let dmConf = cfg.displayManager;
default = !(dmConf.gdm.enable
-
|| dmConf.sddm.enable
+
|| config.services.displayManager.sddm.enable
|| dmConf.xpra.enable
|| dmConf.sx.enable
|| dmConf.startx.enable
···
environment =
optionalAttrs config.hardware.opengl.setLdLibraryPath
{ LD_LIBRARY_PATH = lib.makeLibraryPath [ pkgs.addOpenGLRunpath.driverLink ]; }
-
// cfg.displayManager.job.environment;
+
// config.services.displayManager.environment;
preStart =
''
-
${cfg.displayManager.job.preStart}
+
${config.services.displayManager.preStart}
rm -f /tmp/.X0-lock
'';
# TODO: move declaring the systemd service to its own mkIf
-
script = mkIf (config.systemd.services.display-manager.enable == true) "${cfg.displayManager.job.execCmd}";
+
script = mkIf (config.systemd.services.display-manager.enable == true) "${config.services.displayManager.execCmd}";
# Stop restarting if the display manager stops (crashes) 2 times
# in one minute. Starting X typically takes 3-4s.
+1 -1
nixos/modules/testing/test-instrumentation.nix
···
# uses credentials to set passwords on users.
users.users.root.hashedPasswordFile = mkOverride 150 "${pkgs.writeText "hashed-password.root" ""}";
-
services.xserver.displayManager.job.logToJournal = true;
+
services.displayManager.logToJournal = true;
# Make sure we use the Guest Agent from the QEMU package for testing
# to reduce the closure size required for the tests.
+1 -1
nixos/release.nix
···
kde = makeClosure ({ ... }:
{ services.xserver.enable = true;
-
services.xserver.displayManager.sddm.enable = true;
+
services.displayManager.sddm.enable = true;
services.xserver.desktopManager.plasma5.enable = true;
});
+1 -1
nixos/tests/ayatana-indicators.nix
···
services.xserver = {
enable = true;
desktopManager.mate.enable = true;
-
displayManager.defaultSession = lib.mkForce "mate";
};
+
services.displayManager.defaultSession = lib.mkForce "mate";
services.ayatana-indicators = {
enable = true;
+1 -1
nixos/tests/cinnamon-wayland.nix
···
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
services.xserver.desktopManager.cinnamon.enable = true;
-
services.xserver.displayManager = {
+
services.displayManager = {
autoLogin.enable = true;
autoLogin.user = nodes.machine.users.users.alice.name;
defaultSession = "cinnamon-wayland";
+4 -6
nixos/tests/common/auto.nix
···
###### implementation
config = lib.mkIf cfg.enable {
-
services.xserver.displayManager = {
-
lightdm.enable = true;
-
autoLogin = {
-
enable = true;
-
user = cfg.user;
-
};
+
services.xserver.displayManager.lightdm.enable = true;
+
services.displayManager.autoLogin = {
+
enable = true;
+
user = cfg.user;
};
# lightdm by default doesn't allow auto login for root, which is
+1 -1
nixos/tests/common/x11.nix
···
# Use IceWM as the window manager.
# Don't use a desktop manager.
-
services.xserver.displayManager.defaultSession = lib.mkDefault "none+icewm";
+
services.displayManager.defaultSession = lib.mkDefault "none+icewm";
services.xserver.windowManager.icewm.enable = true;
}
+6 -5
nixos/tests/gnome-flashback.nix
···
services.xserver.displayManager = {
gdm.enable = true;
gdm.debug = true;
-
autoLogin = {
-
enable = true;
-
user = user.name;
-
};
+
};
+
+
services.displayManager.autoLogin = {
+
enable = true;
+
user = user.name;
};
services.xserver.desktopManager.gnome.enable = true;
services.xserver.desktopManager.gnome.debug = true;
services.xserver.desktopManager.gnome.flashback.enableMetacity = true;
-
services.xserver.displayManager.defaultSession = "gnome-flashback-metacity";
+
services.displayManager.defaultSession = "gnome-flashback-metacity";
};
testScript = { nodes, ... }: let
+6 -5
nixos/tests/gnome-xorg.nix
···
services.xserver.displayManager = {
gdm.enable = true;
gdm.debug = true;
-
autoLogin = {
-
enable = true;
-
user = user.name;
-
};
+
};
+
+
services.displayManager.autoLogin = {
+
enable = true;
+
user = user.name;
};
services.xserver.desktopManager.gnome.enable = true;
services.xserver.desktopManager.gnome.debug = true;
-
services.xserver.displayManager.defaultSession = "gnome-xorg";
+
services.displayManager.defaultSession = "gnome-xorg";
systemd.user.services = {
"org.gnome.Shell@x11" = {
+5 -4
nixos/tests/gnome.nix
···
services.xserver.displayManager = {
gdm.enable = true;
gdm.debug = true;
-
autoLogin = {
-
enable = true;
-
user = "alice";
-
};
+
};
+
+
services.displayManager.autoLogin = {
+
enable = true;
+
user = "alice";
};
services.xserver.desktopManager.gnome.enable = true;
+1 -1
nixos/tests/herbstluftwm.nix
···
nodes.machine = { pkgs, lib, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
-
services.xserver.displayManager.defaultSession = lib.mkForce "none+herbstluftwm";
+
services.displayManager.defaultSession = lib.mkForce "none+herbstluftwm";
services.xserver.windowManager.herbstluftwm.enable = true;
environment.systemPackages = [ pkgs.dzen2 ]; # needed for upstream provided panel
};
+1 -1
nixos/tests/i3wm.nix
···
nodes.machine = { lib, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
-
services.xserver.displayManager.defaultSession = lib.mkForce "none+i3";
+
services.displayManager.defaultSession = lib.mkForce "none+i3";
services.xserver.windowManager.i3.enable = true;
};
+1 -1
nixos/tests/lightdm.nix
···
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
services.xserver.displayManager.lightdm.enable = true;
-
services.xserver.displayManager.defaultSession = "none+icewm";
+
services.displayManager.defaultSession = "none+icewm";
services.xserver.windowManager.icewm.enable = true;
};
+6 -3
nixos/tests/maestral.nix
···
gui = { ... }: common {
services.xserver = {
enable = true;
-
displayManager.sddm.enable = true;
-
displayManager.defaultSession = "plasma";
desktopManager.plasma5.enable = true;
desktopManager.plasma5.runUsingSystemd = true;
-
displayManager.autoLogin = {
+
};
+
+
services.displayManager = {
+
sddm.enable = true;
+
defaultSession = "plasma";
+
autoLogin = {
enable = true;
user = "alice";
};
+1 -1
nixos/tests/mate-wayland.nix
···
];
services.xserver.enable = true;
-
services.xserver.displayManager = {
+
services.displayManager = {
sddm.enable = true; # https://github.com/canonical/lightdm/issues/63
sddm.wayland.enable = true;
defaultSession = "MATE";
+2 -4
nixos/tests/miriway.nix
···
user = "alice";
};
-
services.xserver = {
-
enable = true;
-
displayManager.defaultSession = lib.mkForce "miriway";
-
};
+
services.xserver.enable = true;
+
services.displayManager.defaultSession = lib.mkForce "miriway";
programs.miriway = {
enable = true;
+1 -1
nixos/tests/nimdow.nix
···
nodes.machine = { lib, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
-
services.xserver.displayManager.defaultSession = lib.mkForce "none+nimdow";
+
services.displayManager.defaultSession = lib.mkForce "none+nimdow";
services.xserver.windowManager.nimdow.enable = true;
};
+3 -3
nixos/tests/plasma-bigscreen.nix
···
{
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
-
services.xserver.displayManager.sddm.enable = true;
-
services.xserver.displayManager.defaultSession = "plasma-bigscreen-x11";
+
services.displayManager.sddm.enable = true;
+
services.displayManager.defaultSession = "plasma-bigscreen-x11";
services.xserver.desktopManager.plasma5.bigscreen.enable = true;
-
services.xserver.displayManager.autoLogin = {
+
services.displayManager.autoLogin = {
enable = true;
user = "alice";
};
+6 -3
nixos/tests/plasma5-systemd-start.nix
···
imports = [ ./common/user-account.nix ];
services.xserver = {
enable = true;
-
displayManager.sddm.enable = true;
-
displayManager.defaultSession = "plasma";
desktopManager.plasma5.enable = true;
desktopManager.plasma5.runUsingSystemd = true;
-
displayManager.autoLogin = {
+
};
+
+
services.displayManager = {
+
sddm.enable = true;
+
defaultSession = "plasma";
+
autoLogin = {
enable = true;
user = "alice";
};
+3 -3
nixos/tests/plasma5.nix
···
{
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
-
services.xserver.displayManager.sddm.enable = true;
-
services.xserver.displayManager.defaultSession = "plasma";
+
services.displayManager.sddm.enable = true;
+
services.displayManager.defaultSession = "plasma";
services.xserver.desktopManager.plasma5.enable = true;
environment.plasma5.excludePackages = [ pkgs.plasma5Packages.elisa ];
-
services.xserver.displayManager.autoLogin = {
+
services.displayManager.autoLogin = {
enable = true;
user = "alice";
};
+4 -4
nixos/tests/plasma6.nix
···
{
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
-
services.xserver.displayManager.sddm.enable = true;
+
services.displayManager.sddm.enable = true;
# FIXME: this should be testing Wayland
-
services.xserver.displayManager.defaultSession = "plasmax11";
-
services.xserver.desktopManager.plasma6.enable = true;
+
services.displayManager.defaultSession = "plasmax11";
+
services.desktopManager.plasma6.enable = true;
environment.plasma6.excludePackages = [ pkgs.kdePackages.elisa ];
-
services.xserver.displayManager.autoLogin = {
+
services.displayManager.autoLogin = {
enable = true;
user = "alice";
};
+1 -1
nixos/tests/ragnarwm.nix
···
nodes.machine = { pkgs, lib, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
-
services.xserver.displayManager.defaultSession = lib.mkForce "ragnar";
+
services.displayManager.defaultSession = lib.mkForce "ragnar";
services.xserver.windowManager.ragnarwm.enable = true;
# Setup the default terminal of Ragnar
+4 -4
nixos/tests/sddm.nix
···
nodes.machine = { ... }: {
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
-
services.xserver.displayManager.sddm.enable = true;
-
services.xserver.displayManager.defaultSession = "none+icewm";
+
services.displayManager.sddm.enable = true;
+
services.displayManager.defaultSession = "none+icewm";
services.xserver.windowManager.icewm.enable = true;
};
···
nodes.machine = { ... }: {
imports = [ ./common/user-account.nix ];
services.xserver.enable = true;
-
services.xserver.displayManager = {
+
services.displayManager = {
sddm.enable = true;
autoLogin = {
enable = true;
user = "alice";
};
};
-
services.xserver.displayManager.defaultSession = "none+icewm";
+
services.displayManager.defaultSession = "none+icewm";
services.xserver.windowManager.icewm.enable = true;
};
+1 -1
nixos/tests/wmderland.nix
···
nodes.machine = { lib, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
-
services.xserver.displayManager.defaultSession = lib.mkForce "none+wmderland";
+
services.displayManager.defaultSession = lib.mkForce "none+wmderland";
services.xserver.windowManager.wmderland.enable = true;
systemd.services.setupWmderlandConfig = {
+4 -6
nixos/tests/xfce.nix
···
];
services.xserver.enable = true;
+
services.xserver.displayManager.lightdm.enable = true;
-
services.xserver.displayManager = {
-
lightdm.enable = true;
-
autoLogin = {
-
enable = true;
-
user = "alice";
-
};
+
services.displayManager.autoLogin = {
+
enable = true;
+
user = "alice";
};
services.xserver.desktopManager.xfce.enable = true;
+1 -1
nixos/tests/xmonad-xdg-autostart.nix
···
nodes.machine = { pkgs, config, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
-
services.xserver.displayManager.defaultSession = "none+xmonad";
+
services.displayManager.defaultSession = "none+xmonad";
services.xserver.windowManager.xmonad.enable = true;
services.xserver.desktopManager.runXdgAutostartIfNone = true;
+1 -1
nixos/tests/xmonad.nix
···
nodes.machine = { pkgs, ... }: {
imports = [ ./common/x11.nix ./common/user-account.nix ];
test-support.displayManager.auto.user = "alice";
-
services.xserver.displayManager.defaultSession = "none+xmonad";
+
services.displayManager.defaultSession = "none+xmonad";
services.xserver.windowManager.xmonad = {
enable = true;
enableConfiguredRecompile = true;