Всем привет. Такая, в общем, проблема: есть Gentoo, на которой есть SDDM, запускающий Plasma 5. Версия SDDM 0.16.0. В дереве portage есть 3 ревизии этой версии - r1, r2, r3. На версии 0.16.0-r1 у меня было все замечательно. С версии 0.16.0-r2 начались проблемы в виде сообщения «Couldn't sync environment to dbus» при попытке зайти в пользователя. Ревизия r3 по этому поводу не принесла никаких улучшений.
Собственно, были произведены некоторые раскопки, в ходе которых выяснилось, что причина такого поведения заключается в патче sddm-0.16.0-Xsession.patch
--- a/data/scripts/Xsession 2016-08-28 14:52:04.910181422 +0200
+++ b/data/scripts/Xsession 2017-10-21 15:25:47.668886596 +0200
@@ -50,6 +50,10 @@
;;
esac
+# Make D-Bus and ConsoleKit start properly, see:
+# /etc/X11/xinit/xinitrc.d/{80-dbus,90-consolekit}
+command="$@"
+
[ -f /etc/xprofile ] && . /etc/xprofile
[ -f $HOME/.xprofile ] && . $HOME/.xprofile
@@ -94,8 +98,8 @@
. "$USERXSESSION"
fi
-if [ -z "$@" ]; then
+if [ -z "$command" ]; then
exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
else
- exec $@
+ exec $command
fi
Патч патчит файл /usr/share/sddm/scripts/Xsession. После помещения модифицированного ebuild без этого патча в localrepo проблема как бы решилась, но... я не понимаю - почему этот патч ломает мне вход в систему? При этом на другой машине тоже с гентой, форкнутой когда-то давно от моей домашней, все работает как надо.
P.S. Каких-то разительных отличий в Environment и всяких скриптах в /home/user я не нашел. Приведение версий dbus к одинаковым тоже ничего не дало. Гуглеж по ошибке выдал много бедолаг с такой же проблемой, но другими причинами ее появления.