Switching from the 'yum' PackageKit backend to the 'zif' backend (and back again) is really easy.
First, we install the optional zif backend using:
pkcon install -y PackageKit-zif
Then, we want to ask the daemon to quit as soon as it's safe to do so, so as a normal user, run:
gdbus call --system \ --dest org.freedesktop.PackageKit \ --object-path /org/freedesktop/PackageKit \ --method org.freedesktop.PackageKit.SuggestDaemonQuit
After this completes, we need to edit the main daemon config file as the root user, something like this:
sudo vim /etc/PackageKit/PackageKit.confThen scroll down until you see:
DefaultBackend=yumand change this to
DefaultBackend=zifIf you can already see "DefaultBackend=auto" then you don't need to change anything.
Then, you want to refresh any caches and databases kept by PackageKit. To do this, type (as the normal user):
pkcon refresh
Then, just use the normal graphical tools provided by your distribution (gnome-packagekit or kpackagekit) and it all should work much faster.
If you find any problems, be sure to file bugs in Red Hat bugzillla, under the component 'zif'.
In Fedora 14, the yum package maintainer added an artificial conflict for zif so that both systems could not be installed side-by-side.
Given zif used it own cache and locks, this seemed unfair to me, but to get the conflict removed I had to agree not to read the yumdb, a special database written by yum every transaction.
The reason I was given was that the format of the yumdb was not defined, and could change without notice and that is was not designed to be consumed by anything other than yum.
If you disagree with the crippling that I was required to do, then just edit the config file and change the defaults, something like this:
sudo vim /etc/zif/zif.confThen change...
yumdb_allow_read=true...and...
yumdb_allow_write=true
Now, please don't file bugs against yum if zif does indeed eat your yumdb for breakfast. If it's a datapoint, I've been using the yumdb support enabled for about two years now, without a single problem.
Then you can close the daemon and re-refresh like instructed above. The added yumdb support allows you to see where installed packages were installed from, and also prevents certain warnings when using yum.