Recently I added support for asynchronous operations to the Python client of PackageKit. And on top of this a set of PyGTK widgets which make using PackageKit quite comfortable. The code is part of today’s 0.3.10 release.
The following widgets help to visualise the status and progress of a transaction:
- PackageKitStatusIcon
- PackageKitStatusAnimation
- PackageKitStatusLabel
- PackageKitProgressBar
- PackageKitCancelButton - allows to cancel a running transaction
- PackageKitProgressDialog - provides an all-in-one solution of the above widgets
- PackageKitMessageDialog - presents messages and errors from PackageKit
You can see a video of the demo application in action:
As a prove of concept I replaced the call of Synaptic in gnome-app-install by PackageKit. Here is the corresponding screencast:
The following code snippet installs the package xterm with a graphical progress dialog:
The API is not yet set into stone. So I am open for comments and feedback!