PackageKit so far:

What I've done:

  • Defined a DBUS API
  • A system daemon that manages asynchronous jobs, and sends out notifications of job status changed
  • A dummy backend doing all the actions but just time-wasting (acts as a nice self-test)
  • A yum backend that can do async searching (nothing else yet)
  • An APT backend that can do async searching (nothing else yet)
  • A client gobject library for easy integration for GNOME stuff
  • A command line client that can work async or sync.

What's left to do:

  • Full API for yum and apt
  • A better apt backend that can do percentage completion signals (requires using libapt-pkg and C++…)
  • Other backends (portage, smart, urpmi etc)
  • Better documentation
  • Update applet proof-of-concept (should be easy using the gobject library)
  • Simple application installer proof-of-concept

So basically the idea works. Or at least I've not come up against any insurmountable problems so far. Expect the code to hit fd.o in the next week or so when I've polished up the hacks and got rid of a few FIXME's.
I'm away from an Internet connection for the next few days, so if you send me mail it will take me a few days to reply.

Published by


Richard has over 10 years of experience developing open source software. He is the maintainer of GNOME Software, PackageKit, GNOME Packagekit, GNOME Power Manager, GNOME Color Manager, colord, and UPower and also contributes to many other projects and opensource standards. Richard has three main areas of interest on the free desktop, color management, package management, and power management. Richard graduated a few years ago from the University of Surrey with a Masters in Electronics Engineering. He now works for Red Hat in the desktop group, and also manages a company selling open source calibration equipment. Richard's outside interests include taking photos and eating good food.