Adam Williamson wrote:
The other classic case is that when a dependency of a package in the
set of packages to be included in an image is satisfied by more than one
other package, pungi pulls *all* the satisfying packages into the
compose, not just one. This seems odd at first glance but not at second
thought: it's possible for yum to make a guess at which one should be
pulled in on a specific system - I think the rule it uses is 'causes the
least amount of extra other dependencies' - but pungi can't do that,
because it doesn't know what your eventual installed system is going to
contain! If A requires foo, which is provided by GNOME-B and KDE-C, then
pungi needs to include both on the DVD if it's including A, because on a
GNOME install you'll probably wind up with the dependency fulfilled by
GNOME-B, but on a KDE install you'll probably want to have it fulfilled
by KDE-C. If we only pulled in GNOME-B to the DVD, a KDE install might
look odd. (Just a theoretical example, but you get the point).
That nondeterministic behavior of yum really causes more harm than good. We
can never be sure what's actually going to be installed when we Require
something. And it doesn't properly solve the problem in your example because
the heuristics sometimes do the wrong thing.
Kevin Kofler