Package operations in GNOME Software fail, packagekitd uses a lot of CPU and spams the journal with errors if google-chrome repo is enabled

Problem

In Fedora 43 Beta, we have found substantial problems with PackageKit-based tools (including GNOME Software) if the google-chrome repository is enabled. The repository will be enabled if you choose to enable “third party repositories” during the first boot wizard (gnome-initial-setup), or if you later manually enable it in the GNOME Software configuration. If the repository is enabled, package operations in GNOME Software and any other PackageKit-based tool may fail, showing an error like failed to add subkeys for /var/cache/PackageKit/43/metadata/google-chrome-43-x86_64/linux_signing_key.pub to rpmdb, and you may notice the system is constantly under heavy load and similar “failed to add subkeys” errors keep piling up in the journal.

Cause

This problem is caused by changes in RPM 6 (a pre-release of which is included in Fedora 43 Beta). Specifically, RPM 6 now automatically imports these ‘subkeys’ when the main key is imported. RPM 4 did not do so. libdnf also attempts to import the subkeys after importing the main key. So now, libdnf imports the main key, RPM automatically imports the subkeys, then libdnf also tries to import the subkeys, and this seems to cause the errors.

Related Issues

Bugzilla report: #2372978

Solution

You can discuss this issue here.

Update to libdnf-0.74.0-8.fc43. It is verified as fixing this problem. If you cannot update with GNOME Software due to the bug, run dnf update libdnf at a console.