#977834 sddm: [X11] SessionLogFile option does not work, .xsession-errors used instead

Package:
sddm
Source:
sddm
Description:
modern display manager for X11
Submitter:
Iris Morelle
Date:
2020-12-21 17:39:04 UTC
Severity:
normal
#977834#5
Date:
2020-12-21 17:35:32 UTC
From:
To:
Dear Maintainer,

sddm in Debian is currently unable to honour the SessionLogFile= option in the
[X11] section of /etc/sddm.conf. Even when the option is not present, the
default is to use ~/.local/share/sddm/xorg-session.log to write stdout/stderr
for user-launched applications, but in practice the messages end up in
~/.xsession-errors -- which I might add is allowed to grow indefinitely, as I
found the file for my user account to be approximately 28.4 GB in size after
almost 4 years.

From a quick glance at the startup scripts after noticing that this issue does
not occur in other distributions (e.g. openSUSE), I found out that
/etc/X11/Xsession (which I assume gets sourced by sddm some way or another
during login) redirects both file descriptors to ~/.xsession-errors in append
mode without any mechanism within the script or elsewhere for changing the file
path or respecting sddm's options. I believe that this script does not count as
a configuration file so any local changes would be overwritten by apt any time
its parent package (x11-common) gets upgraded.

I can see that whether I set [X11] SessionLogFile= to a non-default value or
leave it unspecified, the file that *should* be used will be created but ends
up abandoned with a size of 0 bytes while messages get written to ~/.xsession-
errors instead.

The reason I'm filing this bug against sddm instead of x11-common is that I'm
not entirely sure if this is a bug in the sddm packaging (e.g. a Debian-
specific factor about x11-common that isn't taken into account in sddm). Since
I haven't used a different display manager in years myself I also ignore if
other display managers suffer from this same bug or deal with this situation in
a different fashion. Feel free to reassign to any other package as needed.