[Yum] Removing obsolete packages from install transaction

Ed Swierk eswierk at arastra.com
Wed Nov 22 19:47:00 UTC 2006


In this scenario I have two repositories: an FC4 mirror and a repo
with homegrown packages.  I am using yum (2.4.1) to install a system
from scratch from these two repos.

The MySystem package requires all the packages I want on the system,
including things like initscripts and python as well as other
homegrown packages.  I install the system by running yum install
MySystem.

Everything is hunky dory, until I decide I want to replace a Fedora
package like udev with a homegrown one, MyUdev.  I drop MyUdev into
the repo and add it to the MySystem requires.  So now things look like
this:

MySystem
Requires: initscripts, bash, python, MyUdev, ...

initscripts
Requires: udev

MyUdev
Obsoletes: udev
Provides: udev

Now when I run yum install MyUdev, yum tries to install both udev and
MyUdev, which of course fails due to file conflicts.

The only way I can convince yum to ignore udev is to explicitly
install MyUdev, e.g. yum install MySystem MyUdev.  But having to list
a bunch of packages on the command line defeats the purpose of the
MySystem package.

Is there some way to convince yum to kick an obsolete package out of
an install transaction if dependencies are otherwise satisfied?

--Ed



More information about the Yum mailing list