Description of problem:
# package-cleanup --cleandupes
This command will remove the lower version for each pair of duplicates that it finds. When it removes the lower version, it can also remove dependencies of those packages. That happens when the dependency isn't a duplicate.
Version-Release number of selected component (if applicable):
Everytime a duplicate package is a requirement of a non-duplicate package.
Steps to Reproduce:
####This is just an example with NetworkManager.
####It can happen with any packages that depend on each other.
1. # rpm -qa NetworkManager-libnm
2. # rpm -ivh --force --justdb NetworkManager-libnm-1.4.0-19.el7_3.x86_64.rpm
3. # package-cleanup --dupes
Loaded plugins: langpacks, product-id
4. # package-cleanup --cleandupes
NetworkManager-libnm x86_64 1:1.0.0-14.git20150121.b4ea599c.el7 @anaconda/7.1 1.4 M
Removing for dependencies:
NetworkManager x86_64 1:1.0.0-14.git20150121.b4ea599c.el7 @anaconda/7.1 8.8 M
NetworkManager-team x86_64 1:1.0.0-14.git20150121.b4ea599c.el7 @anaconda/7.1 32 k
NetworkManager-tui x86_64 1:1.0.0-14.git20150121.b4ea599c.el7 @anaconda/7.1 258 k
package-cleanup verifies if it should remove the lower or the higher version duplicate. Potentially it would judge which version would cause the least amount of damage to the system. Verifying the files against both duplicates to see which package is actually installed.
Or if it could have a flag to affect only the rpm database, or ignore package dependencies.
cleandupes has no warnings to customers. Especially customers who have duplicates and GNOME installed, the issue becomes much much worst and removes majority of the system.
The only thing that forces it to stop, is if it tries to remove yum.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.