1 |
On Monday, 28 October 2019 08:25:06 GMT Neil Bothwick wrote: |
2 |
> On Mon, 28 Oct 2019 02:46:45 -0500, Dale wrote: |
3 |
> > Thanks much for the info. Maybe the switch will go well for me too. |
4 |
> |
5 |
> If it works for you it will be good news for the rest of us ;-) |
6 |
|
7 |
If hald's list of devices has anything to do with it, Dale is bound to nail it |
8 |
on the first (re)boot! :-) |
9 |
|
10 |
The consolekit framework is responsible switching between users on a system. |
11 |
As I understand it, when you go to 'Plasma/Leave/Switch User' menu option, |
12 |
console kit daemon is responsible for: |
13 |
|
14 |
1. Looking at PAM and any processes you own as a user in a login session. |
15 |
2. Checking which seat (local or remote) you are logged in as and associating |
16 |
the hardware you are using with it (e.g. keyboard, mouse, monitor, etc.). |
17 |
3. Connecting to the d-bus system bus to manage the local login session and |
18 |
pass control of hardware devices to the new user. |
19 |
4. When the new user enters their credentials at the Display Manager, check |
20 |
with PAM what processes the new user is authorised to access/use in their |
21 |
login session. |
22 |
|
23 |
I should have the above mostly correct. You may ask if any of this control |
24 |
framework complexity is *necessary* for a single user called Dale, who won't |
25 |
allow anyone else to take his 'seat' at the PC without a fight. The answer is |
26 |
probably no, and this is why simpler desktop environments like *box, |
27 |
Enlightenment, etc. do not offer the facility to switch users and therefore do |
28 |
not ultimately need consolekit. |
29 |
|
30 |
There are no screenshots of consolekit/elogind because AFAIK neither offer a |
31 |
GUI application. However, when you run 'ck-list-sessions' in a terminal |
32 |
you'll see your local session, as well as any other login sessions you may be |
33 |
running at the time, e.g. /dev/tt1, remote logins over ssh and which of these |
34 |
are active at the time. |
35 |
|
36 |
Since consolekit is no longer under development and systemd appears to have |
37 |
taken over most of the Linux distros, elogind is the current service which can |
38 |
run as stand alone on openrc (just as udev of systemd does). |
39 |
|
40 |
When elogind is running you can use 'loginctl list-sessions' in a terminal to |
41 |
see who's running a session. The man page gives more options. |
42 |
|
43 |
You don't *have* to add elogind as a boot service, because any applications |
44 |
which need it will launch it themselves. However, don't be surprised if some |
45 |
desktop functions are not working as expected. For example, the SDDM Display |
46 |
Manager's shutdown/reboot buttons may not be displayed and even if they are |
47 |
displayed they'll do nothing when you click on them after a reboot. If after |
48 |
a reboot you login/out into your Plasma desktop, then elogind will be running |
49 |
and the SDDM buttons should function again normally. |
50 |
|
51 |
I have converted a number of systems to elogind. It should be as easy as |
52 |
setting in your make.conf: |
53 |
|
54 |
USE="elogind -consolekit" |
55 |
|
56 |
grep consolekit -r /etc/portage |
57 |
|
58 |
to find and remove/replace any USE flags still asking for consolekit to be |
59 |
emerged. Then, |
60 |
|
61 |
emerge --depclean -v -a consolekit |
62 |
|
63 |
emerge -uaNDv @world |
64 |
|
65 |
emerge @preserved-rebuild -v -a |
66 |
|
67 |
rc-update del consolekit |
68 |
rc-update add elogind boot |
69 |
|
70 |
reboot |
71 |
|
72 |
From memory that's all there is to it. |
73 |
-- |
74 |
Regards, |
75 |
|
76 |
Mick |