0

I'm using Mate on Parabola GNU/Linux (based on Arch). I have the polkit-mate-authentication-agent installed and it is supposed to be autostarting on login to the desktop; however, it doesn't seem to be starting, either automatically or manually. In my ~/.xsession-errors file, I see the following error:

(polkit-mate-authentication-agent-1:24207): dbind-WARNING **: 07:13:53.904: Couldn't register with
accessibility bus: Did not receive a reply. Possible causes include: the remote application did
not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or 
the network connection was broken.
Cannot register authentication agent: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Cannot 
determine user of subject

I see a very similar error if I try to start it from the terminal, either as a regular user or as root. The errors file also shows dbind warnings for a lot of other packages - I don't know if that has anything to do with it. I am using openrc, not systemd.

The problem seems similar to this existing question; however, starting manually seems to work there, so the underlying problem may not be the same:

polkit-gnome-authentication-agent-1 doesn't auto start after upgrade

Any ideas or suggestions?

Edit:

The output of ps -Af | grep dbus seems to show dbus is running and a daemon is owned by the logged-in user:

$ ps -Af | grep dbus
dbus      1332     1  0 Mar21 ?        00:00:14 /usr/bin/dbus-daemon --system
john     15835 26842  0 10:18 pts/0    00:00:00 grep --color=auto dbus
lightdm  24087     1  0 07:13 ?        00:00:00 dbus-launch --autolaunch 91d1384971b9deaa251b73355e5436ad --binary-syntax --close-stderr
lightdm  24088     1  0 07:13 ?        00:00:00 /usr/bin/dbus-daemon --syslog-only --fork --print-pid 5 --print-address 7 --session
lightdm  24096 24090  0 07:13 ?        00:00:00 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
john     24117     1  0 07:13 ?        00:00:00 dbus-launch --exit-with-session mate-session
john     24118     1  0 07:13 ?        00:00:00 /usr/bin/dbus-daemon --syslog --fork --print-pid 5 --print-address 7 --session

dbus also seems to be running and working, according to the output of busctl.

I also tried installing the Gnome authentication agent (polkit-gnome) and I get the exact same error when I try to run it from the terminal.

4
  • Is dbus running? It seems to try to connect to it and fails.
    – Ned64
    Commented Mar 23, 2020 at 16:02
  • @Ned64 rc-status indicates that dbus is running.
    – Time4Tea
    Commented Mar 23, 2020 at 16:08
  • Is dbus running for the user who logs in? (ps auxfw and have a look at the output)
    – Ned64
    Commented Mar 23, 2020 at 17:35
  • @Ned64 I ran ps -Af | grep dbus and it seems to show a dbus-daemon belonging to the logged-in user. I will add the output in the question.
    – Time4Tea
    Commented Mar 23, 2020 at 18:20

1 Answer 1

0

I have resolved this issue, thanks to some advice from one of the elogind devs and I want to close this out, in case anyone else experiences similar issues:

The issue was incorrect PAM configuration for the display manager, when running with elogind, as opposed to systemd. The default configuration for my distro seemed not to be compatible with elogind. The files sddm-greeter and system-login in /etc/pam.d need to be modified to call elogind, rather than systemd:

session optional pam_elogind.so

For example, I changed sddm-greeter to:

#%PAM-1.0

# Load environment from /etc/environment and ~/.pam_environment
auth            required pam_env.so

# Always let the greeter start without authentication
auth            required pam_permit.so

# No action required for account management
account         required pam_permit.so

# Can't change password
password        required pam_deny.so

# Setup session
session         required pam_unix.so
#-session               optional pam_systemd.so
session         optional pam_elogind.so
sddm-greeter (END)

and system-login to:

#%PAM-1.0

auth       required   pam_tally2.so        onerr=succeed file=/var/log/tallylog
auth       required   pam_shells.so
auth       requisite  pam_nologin.so
auth       include    system-auth

account    required   pam_tally2.so 
account    required   pam_access.so
account    required   pam_nologin.so
account    include    system-auth

password   include    system-auth

session    optional   pam_loginuid.so
session    optional   pam_keyinit.so       force revoke
session    include    system-auth
session    optional   pam_motd.so          motd=/etc/motd
session    optional   pam_mail.so          dir=/var/spool/mail standard quiet
#-session   optional   pam_systemd.so
session    optional   pam_elogind.so
session    required   pam_env.so
system-login (END)

Basically, I commented out the systemd lines and replaced with the elogind equivalents. After that, polkit agent authentication worked fine.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .