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


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!

Possibly Related posts:

If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.

19 Comments

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>