1 |
Title: Desktop profile switching USE default to elogind |
2 |
Author: Andreas Sturmlechner <asturm@g.o> |
3 |
Posted: 2019-10-31 |
4 |
Revision: 1 |
5 |
News-Item-Format: 2.0 |
6 |
Display-If-Installed: sys-auth/consolekit |
7 |
Display-If-Profile: default/linux/alpha/17.0/desktop |
8 |
Display-If-Profile: default/linux/amd64/17.0/desktop |
9 |
Display-If-Profile: default/linux/amd64/17.0/desktop/plasma |
10 |
Display-If-Profile: default/linux/amd64/17.1/desktop |
11 |
Display-If-Profile: default/linux/amd64/17.1/desktop/plasma |
12 |
Display-If-Profile: default/linux/arm/17.0/armv4/desktop |
13 |
Display-If-Profile: default/linux/arm/17.0/armv4/desktop/plasma |
14 |
Display-If-Profile: default/linux/arm/17.0/armv4t/desktop |
15 |
Display-If-Profile: default/linux/arm/17.0/armv4t/desktop/plasma |
16 |
Display-If-Profile: default/linux/arm/17.0/armv5te/desktop |
17 |
Display-If-Profile: default/linux/arm/17.0/armv5te/desktop/plasma |
18 |
Display-If-Profile: default/linux/arm/17.0/armv6j/desktop |
19 |
Display-If-Profile: default/linux/arm/17.0/armv6j/desktop/plasma |
20 |
Display-If-Profile: default/linux/arm/17.0/armv7a/desktop |
21 |
Display-If-Profile: default/linux/arm/17.0/armv7a/desktop/plasma |
22 |
Display-If-Profile: default/linux/arm/17.0/desktop |
23 |
Display-If-Profile: default/linux/arm/17.0/desktop/plasma |
24 |
Display-If-Profile: default/linux/arm64/17.0/desktop |
25 |
Display-If-Profile: default/linux/arm64/17.0/desktop/plasma |
26 |
Display-If-Profile: default/linux/hppa/17.0/desktop |
27 |
Display-If-Profile: default/linux/ia64/17.0/desktop |
28 |
Display-If-Profile: default/linux/m68k/17.0/desktop |
29 |
Display-If-Profile: default/linux/powerpc/ppc32/17.0/desktop |
30 |
Display-If-Profile: default/linux/powerpc/ppc64/17.0/32bit-userland/desktop |
31 |
Display-If-Profile: default/linux/powerpc/ppc64/17.0/64bit-userland/desktop |
32 |
Display-If-Profile: default/linux/sh/17.0/desktop |
33 |
Display-If-Profile: default/linux/sparc/17.0/64ul/desktop |
34 |
Display-If-Profile: default/linux/sparc/17.0/desktop |
35 |
Display-If-Profile: default/linux/x86/17.0/desktop |
36 |
Display-If-Profile: default/linux/x86/17.0/desktop/plasma |
37 |
|
38 |
Modern desktop environments make use of PAM session tracking for users, login |
39 |
sessions and seats. [1] The most user-visible part of that is device and file |
40 |
permissions management and reboot/shutdown handling without superuser rights. |
41 |
|
42 |
Users with systemd can stop reading here and continue with their daily routine. |
43 |
|
44 |
ConsoleKit2 is unmaintained upstream for almost two years [2]. There are many |
45 |
longstanding bugs and papercuts with consumers that aren't being fixed, not |
46 |
least because these code paths receive very little testing. |
47 |
|
48 |
Enter the elogind project [3], which is a standalone logind implementation |
49 |
based on systemd code, currently maintained by a fellow Gentoo user. We have |
50 |
had sys-auth/elogind available in Gentoo since the beginning of 2017, and |
51 |
meanwhile it has gained support [4] in KDE Plasma, Gnome [5], Cinnamon, MATE |
52 |
and Xfce, as well as most other former consolekit consumers. |
53 |
|
54 |
Consequently, the desktop profile is switching away from consolekit to elogind. |
55 |
Users of sys-auth/consolekit who selected a different profile should consider |
56 |
doing the same. A guide is available [6]. Migration is easy, but if run from |
57 |
within a consolekit session that session may become broken. |
58 |
|
59 |
Rely either on the profile, or set USE="elogind -consolekit" in make.conf |
60 |
yourself. Make sure there is no consolekit debris in /etc/portage/package.use: |
61 |
|
62 |
# grep -R consolekit /etc/portage/package.use |
63 |
|
64 |
Rebuild all affected consumers and remove sys-auth/consolekit: |
65 |
|
66 |
# emerge --ask --changed-use --deep @world |
67 |
# emerge --depclean consolekit |
68 |
|
69 |
Optional, but recommended in case of trouble such as missing reboot/shutdown |
70 |
capabilities in the DM: |
71 |
|
72 |
# rc-update add elogind boot |
73 |
|
74 |
For users of startx instead of one of the supported DMs, do not forget to |
75 |
update ~/.xinitrc accordingly (ck-launch-session is gone without replacement). |
76 |
|
77 |
PS: Subsequently, this will lead to the last-riting of sys-power/pm-utils [7] |
78 |
which is dead even longer than the original ConsoleKit(1) project. KDE Plasma |
79 |
users sticking with sys-auth/consolekit are then going to lose suspend from |
80 |
GUI without superuser rights. |
81 |
|
82 |
[1] https://wiki.gentoo.org/wiki/ConsoleKit |
83 |
[2] https://github.com/ConsoleKit2/ConsoleKit2 |
84 |
[3] https://github.com/elogind/elogind/blob/master/README.md |
85 |
[4] https://bugs.gentoo.org/show_bug.cgi?id=elogind-support |
86 |
[5] https://blogs.gentoo.org/leio/2019/03/26/gnome-3-30/ |
87 |
[6] https://wiki.gentoo.org/wiki/Elogind |
88 |
[7] https://bugs.gentoo.org/659616 |