FS#61177 - [systemd] systemd 240 breaks graphical login
Attached to Project:
Arch Linux
Opened by figue (figue) - Wednesday, 26 December 2018, 15:42 GMT
Last edited by Dave Reisner (falconindy) - Friday, 04 January 2019, 17:20 GMT
Opened by figue (figue) - Wednesday, 26 December 2018, 15:42 GMT
Last edited by Dave Reisner (falconindy) - Friday, 04 January 2019, 17:20 GMT
|
Details
Description:
(reference https://forum.manjaro.org/t/systemd-240-update-breaks-graphical-login/69396) When I login from lightdm or tty (using startxfce4), this message appears: Failed to connect to socket /tmp/dbus-gZSu5AMyoH: Connection refused XFCE doesn't start. Revert systemd to 239.370 and XFCE works normally. Additional info: * systemd 240.0 from [testing] * lightdm + XFCE Steps to reproduce: Upgrade to systemd 240. Restart lightdm. XFCE doesn't start. Patches to solve the issue, thanks to Manjaro forum: 'https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11244.patch' 'https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11265.patch' 'https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11266.patch' 'https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11270.patch' also these commits need to be reverted: _reverts=( # https://src.fedoraproject.org/cgit/rpms/systemd.git/log/ '64d7f7b4a15f1534fb19fda6b601fec50783bee4' # https://forum.manjaro.org/t/69396 '2b2b7228bffef626fe8e9f131095995f3d50ee3b' ) |
This task depends upon
Closed by Dave Reisner (falconindy)
Friday, 04 January 2019, 17:20 GMT
Reason for closing: Fixed
Additional comments about closing: testing/systemd-240.0-2
Friday, 04 January 2019, 17:20 GMT
Reason for closing: Fixed
Additional comments about closing: testing/systemd-240.0-2
https://bbs.archlinux.org/viewtopic.php?id=242932
Or should I make new ticket for that?
https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11244.patch https://github.com/systemd/systemd/pull/11244 udev
https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11265.patch https://github.com/systemd/systemd/issues/11264 udev
https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11266.patch https://github.com/systemd/systemd/issues/11261 switch-root: error message
https://patch-diff.githubusercontent.com/raw/systemd/systemd/pull/11270.patch https://github.com/systemd/systemd/issues/11255 udev/lvm
https://github.com/systemd/systemd/commit/64d7f7b4a15f1534fb19fda6b601fec50783bee4 fedora reverted this commit that requires selinux policy update https://src.fedoraproject.org/cgit/rpms/systemd.git/commit/?id=b80d668d9e132c1fc2eb3229b52ff7f45fc48cb5
https://github.com/systemd/systemd/commit/2b2b7228bffef626fe8e9f131095995f3d50ee3b pam_systemd: drop setting DBUS_SESSION_BUS_ADDRESS are applications not checking $XDG_RUNTIME_DIR/bus ?
If it helps:
figue@pluto ~ % echo $DBUS_SESSION_BUS_ADDRESS
unix:path=/run/user/1000/bus
The second patch should not be needed as xfce4-session supplies usr/bin/xfce4-session.
xfce4-session2.patch (1 KiB)
I think lxde-common will be affected as well by https://git.archlinux.org/svntogit/community.git/tree/trunk/dbus-update-environment.patch?h=packages/lxde-common
Wondering if we should assign this to all *-session maintainers or split this bug for the effected packages...
What should be changed in each desktop sessions?
session managers are exec'ing dbus-launcher if $DBUS_SESSION_BUS_ADDRESS is not set
Recommendations for desktop sessions
Desktop sessions may execute dbus-launch if they are started with
DBUS_SESSION_BUS_ADDRESS absent from the environment, and either
XDG_RUNTIME_DIR unset, or a socket named $XDG_RUNTIME_DIR/bus not existing
or owned by the wrong uid.
My understanding is libdbus will provide the right session bus according to the above rules if the whole code block is commented but it does not seem ideal.
I think we need an /etc/X11/xinit/xinitrc.d script that sets DBUS_SESSION_BUS_ADDRESS. (Debian and Ubuntu do this. [2])
(Trying to "fix" each individual component that depends on DBUS_SESSION_BUS_ADDRESS is an exercise in futility IMO.)
[1] https://lists.archlinux.org/pipermail/arch-commits/2018-December/566518.html
[2] https://paste.xinu.at/vs22aV/bash
[1] https://crbug.com/918234
When using startx/sx to start X.Org from the tty, cinnamon starts fine, although DBUS_SESSION_BUS_ADDRESS is "unix:abstract=/tmp/dbus-JJcsstx152,guid=3c6e16344be5812d943a5e645c294a46". chromium does not report any bus issues on stderr, didn't check further as I don't typically use chromium.
DBUS_SESSION_BUS_ADDRESS DEFAULT="unix:path=${XDG_RUNTIME_DIR}/bus"
to ~/.pam_environment
My graphical login with sddm to kde using NIS provided users is failing as well with 240.0
relevant lines from journalctl:
Starting User Manager for UID 1000...
user@1000.service: Failed to determine user credentials: Invalid argument
user@1000.service: Failed at step USER spawning /usr/lib/systemd/systemd: Invalid argument
user@1000.service: Failed with result 'protocol'.
Failed to start User Manager for UID 1000.
https://bbs.archlinux.org/viewtopic.php?pid=1824062#p1824062