PackageKit 0.8.x

Registered by Jason Warner

There have been many changes on PackageKit recently. The 0.8.x series
broke API, so we are now able to do very clever cache handling in
PackageKit backends, also we changed the DBus interaction to be a lot
faster and did some improvements on the core, which will also result
in increased speed due to less overhead.
The new PackageKit also contains the possibility to run transactions
in parallel, which provides another speed gain. The frontend API has
been simplified, so it is now easier to use and more extendable.
Also PackageKit now contains a few cool new features - like
systemd-interaction. (inhibiting shutdown on upgrade & showing error
messages) Also offline-upgrades are possible, if a recent enough
Plymouth version is present. I don't know if these features are wanted
in Ubuntu, but at least for the huge improvements made in PackageKit
0.8.x I suggest upgrading it to 0.8.x in the next cycle.

Also, it would be very cool if the Aptcc backend of PackageKit (the
current default backend) would receive the same improvements on
Ubuntu-specific stuff like Aptdaemon did, so that most Ubuntu tools
are usable with Aptdaemon and PackageKit.
Most Aptd features are already present in PackageKit for a long time
and just need implementation in the Aptcc backend. (which currently
doesn't cover all features of PackageKit)
The most recent PackageKit, including dependent packages, is available
in Debian Experimental for testing. Aptd would need to be updated,
because it's compatibility-layers will most likely not work with the
changes done in PK.
Kind regards,

Blueprint information

Not started
Sebastien Bacher
Matthias Klumpp
Needs approval
Series goal:
Milestone target:

Related branches



* Recent PackageKit is packaged for Debian and available in Experimental. It is not in Unstable because we are in freeze at time and I can't do a package transition during freeze. The package itself is perfectly usable.

* The 0.8 brach is still in active development and further API breaks should be expected. It should be discussed with Richard when he declares 0.8.x as stable.
 => No, the 0.8 branch has stable public APIs. Of course it is in active development (it's the PackageKit main branch), but at this stage, no more changes in the public GObject-APIs will occur. This is not yet true for the Qt bindings, which will get some more changes to work better with QML. A version from the 0.8.x series (probably 0.8.6) will be included in Fedora 18 and the next RHEL.
       --- Matthias Klumpp

* The port of aptdaemon to the 0.8 packagekit interface has been started on and can be found in the following branch: lp:~aptdaemon-developers/aptdaemon/pk-0.8 (not yet working)

* Parallel transactions are not yet supported by either the aptcc backend nor the yum one. Aptdaemon allows parallel packagekit transactions by design. It was decided to serialize transactions to keep compatibility with the 0.7 branch of packagekit.
 => Yum will never support this, because it's design doesn't allow it. However, the Zif backend supports it and Aptcc will get support soon (at time there's only experimental code available) The main problem is that Apt is not threadsafe, but there are some good plans to work around and maybe fix this issue.
   --- Matthias Klumpp

* It would be helpful to setup a comparision table with features that you miss in packagekit or aptdaemon.


Work Items

This blueprint contains Public information 
Everyone can see this information.