I run into this problem while updating my system packages.
$ sudo dnf update -y
Last metadata expiration check: 0:23:01 ago on Sat 18 Nov 2023 10:28:31 PM EAT.
Problem 1: cannot install the best update candidate for package kf5-ki18n-5.105.0-1.el9.x86_64
- nothing provides libQt5Core.so.5(Qt_5_PRIVATE_API)(64bit) needed by kf5-ki18n-5.108.0-1.el9.x86_64
Problem 2: cannot install the best update candidate for package kf5-kiconthemes-5.105.0-1.el9.x86_64
- nothing provides libQt5Gui.so.5(Qt_5_PRIVATE_API)(64bit) needed by kf5-kiconthemes-5.108.0-1.el9.x86_64
Problem 3: cannot install the best update candidate for package kf5-kxmlgui-5.105.0-1.el9.x86_64
- nothing provides libQt5Core.so.5(Qt_5_PRIVATE_API)(64bit) needed by kf5-kxmlgui-5.108.0-1.el9.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
i know this might be a straight forward question, but how do we solve the commands that throws in “nothing provide” error?
Please help me understand.
@Jil as @nazunalika said, you have to wait for Rocky 9.3 to be released, since EPEL has the packages released that match RHEL 9.3. That package exists in Rocky 9.3 which isn’t released yet, and Rocky 9.2 doesn’t have it. So all you can do is wait until Rocky 9.3 is released and then update.
Not sure what you do mean by “other commands”, but …
Each RPM package contains two lists: “provides” and “requires” – what this package has and what it needs from some other packages
When you install a package, the dnf reads the “requires” from it and looks at the “provides” lists of all packages that are currently installed or available in enabled repositories
If an available package provides what is required, then it is added to packages to install and its “requires” are checked too
If no package provides what is required, then transaction is not possible and you do get the “nothing provides”
When you remove a package, the “requires” of all other installed packages are checked
If the removed package is the only one to provide what some other package requires, then that other package must be removed too
The “nothing provides” shows that no enabled repo has package that would provide what is required.
The required packages may be in different repo. Typical example is that some packages in EPEL do depend on packages that are in CRB and CRB was disabled by default. (Occasionally EPEL releases packages that depend on other EPEL packages that are not released yet; EPEL has many maintainers.)
In this case the “different repo” is Rocky 9.3 that does not exist quite yet (because EPEL package has been built with/for RHEL 9.3)
I think there is a problem with the app discover which installs the packages without the missing dependencies and makes the system fail to boot which happened to my laptop.
Only on my pc I used terminal instead and noticed these messages of missing depencies/packages so I was not able to install and my pc is still running.