Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 633920 - x11-misc/sddm-0.16.0 fails to start with sys-auth/consolekit
Summary: x11-misc/sddm-0.16.0 fails to start with sys-auth/consolekit
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal major with 1 vote (vote)
Assignee: LxQt maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-10 09:54 UTC by Mickaël Bucas
Modified: 2020-10-12 22:30 UTC (History)
24 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge-info.txt,6.42 KB, text/plain)
2017-10-10 09:54 UTC, Mickaël Bucas
Details
sddm-ck.patch (sddm-ck.patch,584 bytes, patch)
2017-10-14 03:00 UTC, Michael Palimaka (kensington)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mickaël Bucas 2017-10-10 09:54:12 UTC
Created attachment 498288 [details]
emerge --info

"/etc/init.d/xdm start" terminates with success, but no sddm greeter appears.

In "/var/log/sddm.log", there is the following error message :
[10:22:33.751] (II) DAEMON: Initializing...                                                                                                                                             
[10:22:33.754] (II) DAEMON: Console kit interface found                                                                                                                                 
[10:22:33.754] (WW) DAEMON: QDBusConnection: error: could not send message to service "org.freedesktop.ConsoleKit" path "/org/freedesktop/ConsoleKit/Manager" interface "/org.freedeskto
p.ConsoleKit.Manager" member "ListSeats": Invalid interface class: /org.freedesktop.ConsoleKit.Manager
[10:22:33.754] (II) DAEMON: Starting...    

After looking at ConsoleKit and logind documentation :
 - The "ListSeats" method belongs to logind
 - the corresponding method in ConsoleKit is "GetSeats"

The call to the "ListSeats" method appeared in sddm-0.16.0 in "src/daemon/SeatManager.cpp" line 105

I downgraded to sddm-0.15.0 for now, and it works as expected.

If ConsoleKit is not supported any more by the SDDM project, maybe the USE flag and dependencies should be removed. In this case I would like to know how to migrate from ConsoleKit to logind or elogind.

emerge -pv sddm

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ~] x11-misc/sddm-0.15.0::gentoo  USE="consolekit pam -elogind -systemd" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
Comment 1 Oleh 2017-10-10 18:12:34 UTC
https://github.com/sddm/sddm/issues/903
Comment 2 email200202 2017-10-11 04:13:55 UTC
Same here on ~amd64. I had to downgrade back to sddm-0.15.0 to be able to use the computer.
Comment 3 Pryka 2017-10-11 10:11:16 UTC
Same 

~amd64
Comment 4 Michal Jakubowski 2017-10-11 16:09:41 UTC
Confirm
Comment 5 Matt Whitlock 2017-10-11 17:28:07 UTC
By the way, this problem also occurs with sys-auth/consolekit-1.2.0.

Downgrading to x11-misc/sddm-0.15.0 restored my ability to log in to an X session.
Comment 6 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2017-10-12 06:38:25 UTC

*** This bug has been marked as a duplicate of bug 633942 ***
Comment 7 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2017-10-12 06:38:45 UTC
Sorry wrong bug...
Comment 8 Robert Crawford 2017-10-12 23:27:28 UTC
I just got this after I updated to qt-5.9.2, and rebuilt kde stuff, then after today's newest kde-apps and frameworks updates I still have the sddm problem.  Could previous updates need a Plasma update for sddm-0.16.0 to function again?

I'm at  Plasma-5.10.5, and apparently Plasma-5.11.0 was supposed to be released on 10.10.17, but isn't in ~amd64 portage as of today.
Comment 9 Oleh 2017-10-13 01:15:32 UTC
i believe sddm-0.16.0 has to be masked.
Comment 10 Perfect Gentleman 2017-10-13 02:14:41 UTC
(In reply to Oleg from comment #9)
> i believe sddm-0.16.0 has to be masked.
Why? It works okay with elogind.
Comment 11 Robert Sebastian Gerus 2017-10-13 10:33:12 UTC
(In reply to Oleg from comment #9)
> i believe sddm-0.16.0 has to be masked.

Why? It works fine with systemd.
Comment 12 Robert Crawford 2017-10-13 14:30:18 UTC
The new 5.11.0 Plasma updates made no difference, so I masked sddm-0.16.0 and now sddm works normally (This is on an openrc system).  Besides, for some reason lightdm wouldn't let be log in to LXDE, or Xfce, or plasma, even if I selected one of them, and insisted on booting to kde-openbox (listed as first option at top of the DE list).
Comment 13 Oleh 2017-10-13 14:37:32 UTC
(In reply to Perfect Gentleman from comment #10)
> (In reply to Oleg from comment #9)
> > i believe sddm-0.16.0 has to be masked.
> Why? It works okay with elogind.
default gentoo linux comes with consolekit and openrc, unless i do use something manually set, such as elogind or systemd. Thats the very reason one may think.
Comment 14 frank 2017-10-13 19:53:09 UTC
isn't then as simple as enabling elogin use flag by default on -systemd systems?
Comment 15 Michael Palimaka (kensington) gentoo-dev 2017-10-14 03:00:03 UTC
Created attachment 498614 [details, diff]
sddm-ck.patch

Attached is an untested (I'm using elogind) patch, it would be interesting to know if it makes any difference for CK users.
Comment 16 jy6x2b32pie9 2017-10-14 04:11:19 UTC
(In reply to Michael Palimaka (kensington) from comment #15)
> Created attachment 498614 [details, diff] [details, diff]
> sddm-ck.patch
> 
> Attached is an untested (I'm using elogind) patch, it would be interesting
> to know if it makes any difference for CK users.

After patch sddm-0.16 doesn't fail for me, but patch looks flakey. Maybe it should instead change all "ListSeats" to "GetSeats" when CK is on.
Comment 17 Michael Palimaka (kensington) gentoo-dev 2017-10-14 04:18:39 UTC
(In reply to jy6x2b32pie9 from comment #16)
> (In reply to Michael Palimaka (kensington) from comment #15)
> > Created attachment 498614 [details, diff] [details, diff] [details, diff]
> > sddm-ck.patch
> > 
> > Attached is an untested (I'm using elogind) patch, it would be interesting
> > to know if it makes any difference for CK users.
> 
> After patch sddm-0.16 doesn't fail for me, but patch looks flakey. Maybe it
> should instead change all "ListSeats" to "GetSeats" when CK is on.

The intention of that patch is deliberately to try to fall back to 0.15.0/legacy behaviour. I have no way to test porting sddm to use CK2's interface names, if that's even the right fix. Someone's opened a bug against CK2 asking them to use logind-compatible names if they're claiming to support the interface.
Comment 18 Larry the Git Cow gentoo-dev 2017-10-14 04:26:57 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58f84fe4964a0bdd7e335c7819cdb9c03c52697c

commit 58f84fe4964a0bdd7e335c7819cdb9c03c52697c
Author:     Michael Palimaka <kensington@gentoo.org>
AuthorDate: 2017-10-14 04:24:32 +0000
Commit:     Michael Palimaka <kensington@gentoo.org>
CommitDate: 2017-10-14 04:26:47 +0000

    x11-misc/sddm: fix runtime failure when consolekit is used
    
    Bug: https://bugs.gentoo.org/633920
    Package-Manager: Portage-2.3.8, Repoman-2.3.3

 x11-misc/sddm/files/sddm-0.16.0-ck2-revert.patch | 20 +++++++
 x11-misc/sddm/sddm-0.16.0-r1.ebuild              | 66 ++++++++++++++++++++++++
 2 files changed, 86 insertions(+)}
Comment 19 Michael Palimaka (kensington) gentoo-dev 2017-10-14 04:28:48 UTC
Let's keep this bug open for a little bit to see if a more complete fix appears from either sddm or consolekit upstream.
Comment 20 ozhdfw 2017-10-19 04:37:13 UTC
Hello all, after reading the comments if you are having trouble starting a plasma/kde session due to this sddm "bug"  please use the temporary work workaround by starting x the old fashioned way.  In your home folder create or edit the .xinitrc file as such...  su then root password;  nano -w .xinitrc then add the following... 

#!/bin/sh
exec ck-launch-session dbus-launch --sh-syntax --exit-with-session startkde

That should allow you to have a fully functional and usable kde/plasma session to get your work done for now.
Comment 21 Matt Whitlock 2017-10-19 05:19:58 UTC
(In reply to ozhdfw from comment #20)
> In your home folder create
> or edit the .xinitrc file as such...  su then root password;  nano -w
> .xinitrc then add the following...

Or just mask sddm-0.16*, downgrade to 0.15, and continue living your life in peace.
Comment 22 ozhdfw 2017-10-19 05:22:38 UTC
I forgot to mention the obvious after you do the above, you can just do... startx from your user prompt/terminal.  This workaround will allow you to use your system without downgrading/ or missing a bug fix update when emerging.
Comment 23 ozhdfw 2017-10-19 05:25:52 UTC
Right Matt.  I just wanted to post an alternative option/workaround that might help in some cases.
Comment 24 Andreas Sturmlechner gentoo-dev 2017-10-19 08:38:59 UTC
(In reply to ozhdfw from comment #20)
> In your home folder create or edit the .xinitrc file as such...
> su then root password;  nano -w .xinitrc 
In your home folder you do not need root access rights at all.

Anyway, this bug is fixed.
Comment 25 Joakim Tjernlund 2017-10-20 08:26:21 UTC
(In reply to ozhdfw from comment #20)
> Hello all, after reading the comments if you are having trouble starting a
> plasma/kde session due to this sddm "bug"  please use the temporary work
> workaround by starting x the old fashioned way.  In your home folder create
> or edit the .xinitrc file as such...  su then root password;  nano -w
> .xinitrc then add the following... 
> 
> #!/bin/sh
> exec ck-launch-session dbus-launch --sh-syntax --exit-with-session startkde

So should sddm(all xdm's I think) do but most doesn't, see bug
https://bugs.gentoo.org/611210
Comment 26 Michele Alzetta 2017-10-20 20:52:28 UTC
I tried changing my system from consolekit to elogind and recompiled as needed.
Everything worked.

Except that elogind adds systemds crazy default behaviour: if I open a screen session and start a task and detach the session if I at any moment log into a graphical session with the same user and then logout - all that user's processes are killed. Including my screen session. Which pretty much defeats the purpose of using screen at all.

So I changed my use flags again, recompiled as needed, and went back to consolekit.

Except that sddm-0.16.0-r1 doesn't fix the problem for me.
Going back to sddm-0.15 does.

Is this a problem I have due to bad setup? Seems to me the problem is not fixed in -r1 after all.
Comment 27 Andreas Sturmlechner gentoo-dev 2017-10-21 11:45:52 UTC
(In reply to Michele Alzetta from comment #26)
> Except that elogind adds systemds crazy default behaviour: if I open a
> screen session and start a task and detach the session if I at any moment
> log into a graphical session with the same user and then logout - all that
> user's processes are killed. Including my screen session.
See also bug 628342?
Comment 28 Michele Alzetta 2017-10-21 17:20:55 UTC
... exactly
Comment 29 Michael Palimaka (kensington) gentoo-dev 2017-10-30 10:41:59 UTC
Upstream update:

https://github.com/ConsoleKit2/ConsoleKit2/pull/102 got landed and I've asked the Gentoo maintainer for a revbump, and https://github.com/sddm/sddm/pull/923 has appeared which we can look at backporting once something is heard from upstream.
Comment 30 Michael Palimaka (kensington) gentoo-dev 2017-10-30 10:51:17 UTC
If anyone is interested in testing those patches, that would definitely help speed up their inclusion.
Comment 31 Andreas Sturmlechner gentoo-dev 2018-06-23 21:01:47 UTC
No volunteers?