You are not logged in.

#1 2012-02-25 02:27:17

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

[SOLVED] polkit-kde not working

I just installed apper, and I am unable to install any new packages using it.
It just says "Waiting for authentication", and stays like that for a long time.

I started investigating further, and when I try to install anything using
pkcon from packagekit the same thing happens - it just says
"Waiting for authentication", shows a moving progress bar
and nothing else happens.

When I kill /usr/lib/kde4/libexec/polkit-kde-authentication-agent-1,
run /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
and try to use pkcon again, the authentication dialog pops up
and I am able to authenticate.

Can anybody confirm whether it's a problem with my setup,
or the polkit-kde is simply broken?

I'm running these versions of relevant packages:
dbus 1.4.16-1
dbus-core 1.4.16-1
dbus-glib 0.98-1
dbus-python 0.84.0-1
kdelibs 4.8.0-3
kdebase-workspace 4.8.0-2
polkit 0.104-1
polkit-gnome 0.105-1
polkit-kde 0.99.0-2
polkit-qt 0.103.0-1packagekit 0.6.21-2
packagekit-qt2 0.6.21-2
apper 0.7.1-2

Last edited by sjakub (2012-02-28 07:23:21)

Offline

#2 2012-02-26 07:01:16

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

Re: [SOLVED] polkit-kde not working

Offline

#3 2012-02-26 07:08:35

Avant-texte
Member
Registered: 2012-02-13
Posts: 136

Re: [SOLVED] polkit-kde not working

When loged in, before you start playing with authentication agents, what does `ck-list-sessions` output?

What method do you start X with? Startx or display manager. If startx, what's in your xinitrc? If a DM, which one and what's in your xsession file?

Offline

#4 2012-02-26 07:13:43

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

Re: [SOLVED] polkit-kde not working

$ ck-list-sessions
Session1:
        unix-user = '1000'
        realname = 'Xyz'
        seat = 'Seat1'
        session-type = ''
        active = TRUE
        x11-display = ':0'
        x11-display-device = '/dev/tty7'
        display-device = ''
        remote-host-name = ''
        is-local = TRUE
        on-since = '2012-02-26T07:14:57.723628Z'
        login-session-id = '4294967295'

I start X using kdm.

xsession:

#!/bin/sh

#
# ~/.xsession
#
# Executed by xdm/gdm/kdm at login
#

/bin/bash --login -i ~/.xinitrc

I actually created a new user, with empty KDE configuration and all defaults used, and the problem is still there.

Does your response mean that the polkit-kde works in your case?

Last edited by sjakub (2012-02-26 07:16:02)

Offline

#5 2012-02-26 07:19:24

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

Re: [SOLVED] polkit-kde not working

I'm not sure how relevant it is, but when I kill polkit-kde-authentication-agent-1 and run it manually, it shows the following error message:
QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave.

However, when I kill polkit-kde-authentication-agent-1 and don't restart it, "pkcon install" fails right away with following error message:
The transaction failed: not-authorized, Failed to obtain authentication.

Also, when it is running, the gnome version refuses to start. So it is registering somehow in dbus.

Last edited by sjakub (2012-02-26 07:21:16)

Offline

#6 2012-02-26 08:14:11

Avant-texte
Member
Registered: 2012-02-13
Posts: 136

Re: [SOLVED] polkit-kde not working

sjakub wrote:
$ ck-list-sessions
Session1:
        unix-user = '1000'
        realname = 'Xyz'
        seat = 'Seat1'
        session-type = ''
        active = TRUE
        x11-display = ':0'
        x11-display-device = '/dev/tty7'
        display-device = ''
        remote-host-name = ''
        is-local = TRUE
        on-since = '2012-02-26T07:14:57.723628Z'
        login-session-id = '4294967295'

I start X using kdm.

Well, the ck output looks right for an active session. That means you should be getting the proper rights from your authentication client and a comprehensive DM like KDM should start everything needed for a fully funtional session anyway.

sjakub wrote:
/bin/bash --login -i ~/.xinitrc

This makes me want to see your xinit than (I forgot to mention they often are linked, lol), but I'm not sure it matters given your seemingly properly set up session.

sjakub wrote:

Does your response mean that the polkit-kde works in your case?

No, I use polkit-gnome for my sessions. Actually, I don't use KDE. ...I do have too much experience with ConsoleKit and PolKit. -________-

What your describing sounds like it could be a bug, but I'm enclined to think it's a configuration problem that croped up somewhere. I haven't recently heard the kind of noise that one would expect if there was a bug with something such as this.

Some more troubleshooting questions:
     Have you tried reinstalling the problem packages?
     While still under the KDE authenticater, can you shutdow, reboot, suspend, control the network, and mount/unmound drives through the GUI? I find it odd that this would be your only problem if your authenication isn't working.
     If pokit-gnome works and polkit-kde doesn't, have you tried pulling polkit-kde's .desktop out of /etc/xdg/autostart/ and adding polkit-gnome's instead? See if the problem apears with polkit-gnome if it's run from the start and if kde's turns into the one that works? Also, if you try, check for polkit-kde.desktop is in there too. I don't know if that's thrown in there too.

EDIT:
You might want to see if the problem persists with another DM. Incidentaly, I've seen large WMs broken by updates before.
EDIT2:
Damn typos.

Last edited by Avant-texte (2012-02-26 08:51:10)

Offline

#7 2012-02-26 08:21:45

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

Re: [SOLVED] polkit-kde not working

$ cat .xinitrc 
#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

# exec gnome-session
# exec startkde
# exec startxfce4
# ...or the Window Manager of your choice
$ ls /etc/X11/xinit/xinitrc.d
30-dbus  40-libcanberra-gtk-module
$ cat /etc/X11/xinit/xinitrc.d/30-dbus 
#!/bin/bash

# launches a session dbus instance

dbuslaunch="`which dbus-launch 2>/dev/null`"
if [ -n "$dbuslaunch" ] && [ -x "$dbuslaunch" ] && [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then
  eval `$dbuslaunch --sh-syntax --exit-with-session`
fi
$ cat /etc/X11/xinit/xinitrc.d/40-libcanberra-gtk-module 
#!/bin/bash

case "$DESKTOP_SESSION" in
  gnome) # Done by gnome-settings-daemon
  ;;
  *)
    # Extra check in case DESKTOP_SESSION is not set correctly
    if [[ -z $GNOME_DESKTOP_SESSION_ID ]]; then
      if [[ -z $GTK_MODULES ]]; then
        GTK_MODULES="canberra-gtk-module"
      else
        GTK_MODULES="$GTK_MODULES:canberra-gtk-module"
      fi
      export GTK_MODULES
    fi
  ;;
esac

Offline

#8 2012-02-26 08:22:46

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

Re: [SOLVED] polkit-kde not working

I'll try the other suggestions tomorrow, I can't really play with the desktop at the moment.

Offline

#9 2012-02-28 07:07:55

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

Re: [SOLVED] polkit-kde not working

Avant-texte wrote:

     Have you tried reinstalling the problem packages?

Yes, I reinstalled all the packages I mention, as well as the rest of KDE, it didn't change anything.

Avant-texte wrote:

     While still under the KDE authenticater, can you shutdow, reboot, suspend, control the network, and mount/unmound drives through the GUI? I find it odd that this would be your only problem if your authenication isn't working.

All of that works, I can reboot, suspend, switch networks, mount/umount, all of that.

Avant-texte wrote:

     If pokit-gnome works and polkit-kde doesn't, have you tried pulling polkit-kde's .desktop out of /etc/xdg/autostart/ and adding polkit-gnome's instead? See if the problem apears with polkit-gnome if it's run from the start and if kde's turns into the one that works? Also, if you try, check for polkit-kde.desktop is in there too. I don't know if that's thrown in there too.

There is no polkit-kde.desktop in that directory. I renamed the /usr/lib/kde4/libexec/polkit-kde-authentication-agent-1 and symlinked that file to gnome's version, rebooted, and now the authentication dialog shows up. Of course it's the Gnome version...

I also started the kde version through strace (strace /usr/lib/kde4/libexec/polkit-kde-authentication-agent-1 --nofork) (with and without the --sync option), and it just sits there on 'select'.
When, in the other window, I run the pkcon install command, there is no activity reported by strace...

I have no clue what to do next, or how to try to debug this... hmm

Offline

#10 2012-02-28 07:25:05

sjakub
Member
From: Canada/Poland
Registered: 2008-06-16
Posts: 84

Re: [SOLVED] polkit-kde not working

I finally figured out what was wrong.

I have QT_NO_GLIB=1 set in /etc/profile.d/
I don't remember what the reason was, but I had some issues with Qt, and that was the solution...
It works now, but I think it is still a bug. Or at least there should be a warning printed by the polkit agent...

Offline

Board footer

Powered by FluxBB