From 1efac91ca4d8df849f4f657c1879021671fd9302 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Hedin=20Br=C3=B8nner?= Date: Fri, 4 Oct 2019 22:34:18 +0200 Subject: [PATCH 1/2] nixos/gdm: make config dir for gnome-initial-setup Observed failure to lauch gdm in a VM due to missing /run/gdm.config. --- nixos/modules/services/x11/display-managers/gdm.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix index 9f76bba9980..46c57405c5c 100644 --- a/nixos/modules/services/x11/display-managers/gdm.nix +++ b/nixos/modules/services/x11/display-managers/gdm.nix @@ -152,6 +152,7 @@ in chown -R gdm:gdm /run/gdm/.config '' + optionalString config.services.gnome3.gnome-initial-setup.enable '' # Create stamp file for gnome-initial-setup to prevent run. + mkdir -p /run/gdm/.config cat - > /run/gdm/.config/gnome-initial-setup-done <<- EOF yes EOF From 9be5321097c16d10df0b41b92ccee0a682fb0bff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Hedin=20Br=C3=B8nner?= Date: Fri, 4 Oct 2019 22:39:43 +0200 Subject: [PATCH 2/2] nixos/gdm: follow upstream's service config --- nixos/modules/services/x11/display-managers/gdm.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix index 46c57405c5c..3b4723ce9fe 100644 --- a/nixos/modules/services/x11/display-managers/gdm.nix +++ b/nixos/modules/services/x11/display-managers/gdm.nix @@ -166,9 +166,15 @@ in "systemd-machined.service" "systemd-user-sessions.service" "getty@tty1.service" + "plymouth-quit.service" + "plymouth-start.service" ]; systemd.services.display-manager.conflicts = [ "getty@tty1.service" + "plymouth-quit.service" + ]; + systemd.services.display-manager.onFailure = [ + "plymouth-quit.service" ]; systemd.services.display-manager.serviceConfig = { @@ -178,6 +184,9 @@ in BusName = "org.gnome.DisplayManager"; StandardOutput = "syslog"; StandardError = "inherit"; + ExecReload = "${pkgs.coreutils}/bin/kill -SIGHUP $MAINPID"; + KeyringMode = "shared"; + EnvironmentFile = "-/etc/locale.conf"; }; systemd.services.display-manager.path = [ pkgs.gnome3.gnome-session ];