December 7th Fedora update breaks PackageKit, gives failed to get a TID Error

Sathya | December 9th, 2008 - 9:03 am


Well I’d just shifted to Fedora couple of days ago, and yesterday I’d applied the latest updates. Later on I thought I’ll explore the system a bit and decided to use the package manager KPackageKit (I’m on KDE). KPackageKit though, was not returning any packages. I thought I might have screwed up KPackgeKit, so I installed the Gnome version of PackageKit. Only then I realized, that something was wrong.

On querying for a package I got this error:

failed to get a TID: A security policy in place prevents this sender from sending this message to this recipient, see message bus configuration file (rejected message had interface “org.freedesktop.PackageKit.Transaction” member “GetUpdates” error name “(unset)” destination “org.freedesktop.PackageKit”)

Googled for this error, and immediately came to know lot more people were facing the same problem, and its because of a dbus security update: This update modifies the config file to reject all requests coming from packagekit, and hence KPackageKit wasn’t returning any packages. Atleast Gnome-PackageKit returned the error message, if I hadn’t tried that(gnome-packagekit) I wouldn’t know what the problem was!
Anyways a temporary fix is mentioned here. If it isn’t too clear, edit /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf to include

<allow send_interface="org.freedesktop.PackageKit.Transaction"/>

in the file after <policy context="default">

ie, the file should look like this now

<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>

<!– This configuration file specifies the required security policies
for the PackageKit to work. –>

<!– Only user root can own the PackageKit service –>
<policy user=”root”>
<allow own=”org.freedesktop.PackageKit”/>
</policy>

<!– Allow anyone to call into the service – we’ll reject callers using PolicyKit –>
<policy context=”default”>
<allow send_interface=”org.freedesktop.PackageKit”/>
<allow send_interface=”org.freedesktop.PackageKit.Transaction”/>
</policy>
</busconfig>

Hope that helps.

EDIT: As Janus & MH mention, do reboot the system or restart the dbus service for changes to take effect.

If you enjoyed this post, make sure you subscribe to my RSS feed!

19 Responses to “December 7th Fedora update breaks PackageKit, gives failed to get a TID Error”

  1. Heber Vazquez says:

    Thanks it help me.

  2. Janus Lindblad says:

    Thanks alot Sathya. This worked for me.

    I had to reboot for the changes to take affect though.

  3. Sathya says:

    Janus – yes I forgot to mention that

  4. MH says:

    This worked great, thanks. Make sure you reboot after!

  5. Javier says:

    Thank you very much!! (for the reboot tip, too)

  6. SD.Plox says:

    Thank you vey much man

  7. Kfir says:

    Hi,
    For some reason I can’t get it to work.
    After editing the file and rebooting, when starting system message bus I get an error message about:
    “error in file…: not well-formed (invalid token)”

    I’m running a 64 bit Fedora 10.

    What am I doing wrong??

    Thanks,

    Kfir

  8. Sathya says:

    Kfir – can you post here the contents of /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf (I assume you edited that)

  9. Rob Stewart says:

    Hi,

    I’ve posted an entry on my blog about this mix up. It isn’t very positive, but really any positives in future can only be a good thing right?

    check it out here:
    http://linuxsoftwareblog.com

  10. dipstick says:

    hi

    get locale error now?

    any suggestions?

    Dip

  11. Tshepiso says:

    Thanks for the info. You’ve been of great help. My system started this on the 9th Dec and I didn’t understand what exactly was going on. It does work now..

  12. Jan says:

    Thanks mate

  13. dino says:

    Hi,
    I am running Fedora 10, 64 bits. After I edited my file exactly as mentioned above by editing file

    /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf
    , I can not do anything any more.

    I rebooted after editing file and my F10 at first seam to start booting process fine but all I get is black screen with a blinking cursor at the top left corner. And that is how it stays. I can not do anything.
    I can not even go to the same file to edit it back to what it was before. Anyone knows how to do at least this?

    Much appreciated.

    Please Help!

    • Sathya says:

      Hi, seems you might have made a mistake while editing the file.
      Anyways when you get the boot selection screen, just press e, scroll to the end of the line, type [code]single[/code] and press b now you will get the command prompt, and do the required changes

  14. dino says:

    Sathya,
    I see your solution worked for some but not for me. In fact, it created even more grief because after reboot of my F10 (86_64) system (on Sony VAIO laptop VGN FE780G), I was not even able to go to log in screen. All I had was black screen.
    Anyways, I found solution to black screen in the case someone else run into it. Here is how to reverse change in file suggested by Sathya and be able to go back to log in screen again:

    1. do Ctrl Alt F2 (or F3, or F4, not sure exactly). This brings you to command line screen and prompts you for user name and password to log in. Enter your user name then enter, then password, then enter
    2. once logged in, log as super user by issuing:
    su
    then enter your super user password when prompted

    3. edit your
    /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf
    file so it looks like originally. To do this do:
    vim /etc/dbus-1/system.d/org.freedesktop.PackageKit.conf this opens the file in vim editor
    here I removed the line :

    , so my policy block looks like originally did before my change in above post:

    4. Save, then reboot and you will be back in log in screen like before.

    Still have not found solution to the TID error

  15. dino says:

    OK, found solution to TID error, too.

    Just go to your command line and issue:
    su -c ‘yum update’

    This will start full system update and solve your TID error. After you finish update, reboot, and try to update your system by going to System -> Administration -> Update System
    You will see that TID error does not occur any more.
    Thanks,
    Dino Buljubasic

You can leave a response, or trackback from your own site.

Leave a Reply