X server: Log to the journal instead of /var/log/X.0.log
This ensures that "journalctl -u display-manager" does what you would expect in 2016. However, the main reason is to ensure that our VM tests show the output of the X server. A slight problem is that with KDE user switching, messages from the various X servers end up in the same place. However, that's an improvement over the previous situation, where the second X server would overwrite the /var/log/X.0.log of the first. (This was caused by the fact that we were passing a hard-coded value for -logfile.)
This commit is contained in:
parent
012313f253
commit
d84741a4bf
@ -139,7 +139,7 @@ in
|
||||
mkdir -m 0755 -p /var/lib/kdm
|
||||
chown kdm /var/lib/kdm
|
||||
${(optionalString (config.system.boot.loader.id == "grub" && config.system.build.grub != null) "PATH=${config.system.build.grub}/sbin:$PATH ") +
|
||||
"KDEDIRS=/run/current-system/sw exec ${kdebase_workspace}/bin/kdm -config ${kdmrc} -nodaemon"}
|
||||
"KDEDIRS=/run/current-system/sw exec ${kdebase_workspace}/bin/kdm -config ${kdmrc} -nodaemon -logfile /dev/stderr"}
|
||||
'';
|
||||
logsXsession = true;
|
||||
};
|
||||
|
@ -520,6 +520,7 @@ in
|
||||
serviceConfig = {
|
||||
Restart = "always";
|
||||
RestartSec = "200ms";
|
||||
SyslogIdentifier = "display-manager";
|
||||
};
|
||||
};
|
||||
|
||||
@ -527,10 +528,11 @@ in
|
||||
[ "-terminate"
|
||||
"-config ${configFile}"
|
||||
"-xkbdir" "${cfg.xkbDir}"
|
||||
# Log at the default verbosity level to stderr rather than /var/log/X.*.log.
|
||||
"-verbose" "3" "-logfile" "/dev/null"
|
||||
] ++ optional (cfg.display != null) ":${toString cfg.display}"
|
||||
++ optional (cfg.tty != null) "vt${toString cfg.tty}"
|
||||
++ optional (cfg.dpi != null) "-dpi ${toString cfg.dpi}"
|
||||
++ optionals (cfg.display != null) [ "-logfile" "/var/log/X.${toString cfg.display}.log" ]
|
||||
++ optional (!cfg.enableTCP) "-nolisten tcp";
|
||||
|
||||
services.xserver.modules =
|
||||
|
Loading…
Reference in New Issue
Block a user