The purpose of this side is to provide information to the apt backend of PackageKit and the integration in Debian. PackageKit tries to make simple and common software management tasks easier and smoother among all/most distributions. Therefor it provides a distribution neutral DBus interface.
The smart based backend is not covered here.
Current State
The backend is already shipped in Ubuntu Universe and seems to accomplish the basic tasks. The list of supported features can be found in the PackageKit FAQ: http://packagekit.org/pk-faq.html
Code
The development takes place in the git repository of PackageKit:
git clone git://anongit.freedesktop.org/git/packagekit/PackageKit
The packaging for Ubuntu can be found here:
https://code.launchpad.net/packagekit/
Packages
Binary and source packages for Ubuntu can be obtained here:
https://edge.launchpad.net/~packagekit/+archive
Packages for Debian experimental are in work: ITP #468132
Discussion
The main place for discussion is the PackageKit mailing list:
http://lists.freedesktop.org/mailman/listinfo/packagekit
The discussion of unresolved issues was archived to wiki:/Discussion.
Debian Integration
In the following you will find a list of unique dpkg/apt features and how they are addressed.
Non-Interactiveness
By Hughsie's Law a running task (PackageKit transaction) is not allowed to wait for user input. But this is the case in several situations using dpkg/apt.
Standard In
By Debian Policy it is no longer supported to prompt for input on stdin in maintainer scripts. The apt backend has got a time out of 10 minutes before it cancels a hanging script to handle broken packages.
Configuration File Conflict
PackageKit defaults to keep the current configuration and showing a message to the user about the configuration file conflict.
Media Changes
Using CD-ROM or DVD as installation source is currently not supported by PackageKit. The backend errors out if a media change is required.
Debconf
There is currently a discussion about the debconf integration on the mailing list. Generally Hughsie agrees to add a configuration dialog/method to PackageKit. But the configuration has to be done before or after a transaction. So the EULA acceptance design could be adopted for configuration.
Codec Installation
The corresponding bits of the apt backend reuse the gnome-app-install infrastructure. So it requires the manually updated database of app-data.
Applications
Currently there isn't any application in Debian which makes use of PackageKit.
There is a prototype of gnome-app-install using PackageKit instead of Synaptic. A screencast can be found here.
