FS#22680 - [consolekit] new consolekit breaks most of nm-applet functions
Attached to Project:
Arch Linux
Opened by Vladimir (Psycho_zs) - Monday, 31 January 2011, 12:14 GMT
Last edited by Ionut Biru (wonder) - Saturday, 30 April 2011, 15:26 GMT
Opened by Vladimir (Psycho_zs) - Monday, 31 January 2011, 12:14 GMT
Last edited by Ionut Biru (wonder) - Saturday, 30 April 2011, 15:26 GMT
|
Details
Description:
After upgrade to consolekit 0.4.3-1 the following features of nm-applet are blocked: Editing system connections, creating system connections, switching network management on/off. Also, activating user connections is impossible due to error "No user settings service available". Downgrading to 0.4.1-4 fixes the problem. |
This task depends upon
Closed by Ionut Biru (wonder)
Saturday, 30 April 2011, 15:26 GMT
Reason for closing: Not a bug
Additional comments about closing: configuration problem
Saturday, 30 April 2011, 15:26 GMT
Reason for closing: Not a bug
Additional comments about closing: configuration problem
exec ck-launch-session dbus-launch openbox-session
relogin, reboot are not helping while consolekit 0.4.3-1 is installed.
consolekit 0.4.3-1 without the shadow update is useless
I will check ck-list-sessions soon...
and after:
Session1:
unix-user = '1000'
realname = ''
seat = 'Seat2'
session-type = ''
active = FALSE
x11-display = ':0'
x11-display-device = '/dev/tty3'
display-device = ''
remote-host-name = ''
is-local = FALSE
on-since = '2011-01-31T18:18:32.746262Z'
login-session-id = ''
paste it
#%PAM-1.0
auth required pam_securetty.so
auth requisite pam_nologin.so
auth required pam_unix.so nullok
auth required pam_tally.so onerr=succeed file=/var/log/faillog
# use this to lockout accounts for 10 minutes after 3 failed attempts
#auth required pam_tally.so deny=2 unlock_time=600 onerr=succeed file=/var/log/faillog
account required pam_access.so
account required pam_time.so
account required pam_unix.so
#password required pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3
#password required pam_unix.so md5 shadow use_authtok
session required pam_unix.so
session required pam_env.so
session required pam_motd.so
session required pam_limits.so
session optional pam_mail.so dir=/var/spool/mail standard
session optional pam_lastlog.so
session optional pam_loginuid.so
-session optional pam_ck_connector.so nox11
[2011-01-29 10:12] upgraded consolekit (0.4.1-4 -> 0.4.3-1) -> nm-applet still worked after this update
[2011-01-30 17:19] upgraded kernel26 (2.6.36.3-2 -> 2.6.37-5) -> nm-applet stopped working (problems described in bug report)
[2011-01-31 11:41] upgraded consolekit (0.4.3-1 -> 0.4.1-4) -> nm-applet returns to expected behavior
Setup: using Slim as a login manager, Xfce as desktop environment, .xinitrc contains:
syndaemon -t -k -i 1 -d &
exec dbus-launch ck-launch-session startxfce4
One way to workaround this empty value is adding "session required pam_loginuid.so" to /etc/pam.d/login, in this way the attribute will be set with numbers (not provided by /proc/$pid/sessionid), so consolekit will marks session as local.
@Gerardo we have "session optional pam_loginuid.so" in /etc/pam.d/login. What are you saying is that the "required" would change the behavior?
setup:slim + xfce
.xinitrc : exec ck-launch-session startxfce4
DAEMONS=(syslog-ng netfs crond hal networkmanager cpufreq ufw alsa cups gpm)
ck-list-sessions:
Session2:
unix-user = '1000'
realname = '(null)'
seat = 'Seat1'
session-type = ''
active = TRUE
x11-display = ':0.0'
x11-display-device = '/dev/tty7'
display-device = ''
remote-host-name = ''
is-local = TRUE
on-since = '2011-01-31T22:09:35.805202Z'
login-session-id = '4294967295'
nm-applet from that terminal : ** (nm-applet:2266): WARNING **: <WARN> activate_connection_cb(): Connection
activation failed: Not authorized to control networking.
downgrade consolekit (0.4.3-1 -> 0.4.1-4) > work
After this upgrade, ck-list-sessions shows
Session1:
unix-user = '1000'
realname = '(null)'
seat = 'Seat1'
session-type = ''
active = FALSE
x11-display = ''
x11-display-device = ''
display-device = '/dev/tty1'
remote-host-name = ''
is-local = TRUE
on-since = '2011-02-02T17:50:13.566715Z'
login-session-id = ''
idle-since-hint = '2011-02-02T17:50:48.002981Z'
Session2:
unix-user = '1000'
realname = '(null)'
seat = 'Seat2'
session-type = ''
active = FALSE
x11-display = ':0'
x11-display-device = '/dev/tty7'
display-device = '/dev/tty1'
remote-host-name = ''
is-local = FALSE
on-since = '2011-02-02T17:50:21.496353Z'
login-session-id = ''
The 'is-local = FALSE' in Session2 basically breaks the nm-applet functionality.
I am not doing anything other than:
(.xinitrc):
#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
# exec gnome-session
# exec startkde
exec ck-launch-session startxfce4
# ...or the Window Manager of your choice
I do not recall messing with any of the consolekit files.
login_cmd exec ck-launch-session /bin/sh - ~/.xinitrc %session
The line in slim.conf
login_cmd exec ck-launch-session /bin/sh - ~/.xinitrc %session
*will* solve all your issues, if you *remove* in .xinitrc the ck-launch-session command, like so:
#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
# exec gnome-session
# exec startkde
exec startxfce4
# ...or the Window Manager of your choice
If you do not do that, there will still be limitations due to consolekit. But in general,
it may be worth it to investigate whether it would make sense to include the ck-launch-session
permanently in the slim.conf file.
Thanks for the input everybody.
However, I have edited the wiki to reflect this; see: https://wiki.archlinux.org/index.php/SLiM#PolicyKit
Thanks for updating the wiki. Cheers.