[packagekit] Breaking git

Richard Hughes hughsient at gmail.com
Tue Apr 22 04:37:55 PDT 2008


On Tue, 2008-04-22 at 13:23 +0200, Duncan Mac-Vicar Prett wrote:
> Is there any information on "how was this done before", and "how it is
> done now".

Sure, I can explain on email or if you jump into IRC (#PackageKit on
freenode) I can explain there in real time too :-)

> openSUSE Factory is following PK 0.2, and with the API change, the kde
> applet we are developing broke completely. I am not complaining about 
> breakage, but we feel lost on what to change.

Okay, the basics:

The old interface used a tid to identify the different jobs, and
everything was on one interface on one path. This was quick to
prototype, but was not what DBUS is designed to do. It was a bitch to
debug and bind.

The new one has a generic interface that is used to create jobs and do
simple queries, and a transaction interface that is created on the
different paths for the different transactions.

You basically need to:

tid=org.freedesktop.PackageKit.GetTid() [PATH: /org/freedesktop/PackageKit]

org.freedesktop.PackageKit.Transaction.InstallPackage() [PATH: /tid]

If you see pk-client and pk-control in libpackagekit then you'll see
exactly what we do in the new world order. It should be much easier to
bind for you guys, ans it's now logically segmented into objects.

Richard.





More information about the PackageKit mailing list