[Yum-devel] Fwd: More yum oddities

Josh Smith jbs at cacr.caltech.edu
Thu Jun 10 05:37:21 UTC 2004


SV> do you have a version of libfame installed now?

Not at the moment; just to be sure, 'rpm -qa | grep -i fame' returns nothing.

SV> what does yum list libfame output?

With Dag before Livna (and snipping the usual preamble, which is the same
both ways, and trimming some for line-width purposes):

  Looking in Available Packages:
  Name                                Arch   Version                  Repo
  --------------------------------------------------------------------------
  libfame                             i386   0.9.1-1.1.fc2.dag        55-dag

  Looking in Installed Packages:
  Name                                Arch   Version                  Repo
  --------------------------------------------------------------------------

With Dag after Livna:

  Looking in Available Packages:
  Name                                Arch   Version                  Repo
  ------------------------------------------------------------------------
  libfame                             i386   0.9.0-0.lvn.7.2          50-livna-stable

  Looking in Installed Packages:
  Name                                Arch   Version                  Repo
  ------------------------------------------------------------------------

Seem right?

A simplified version of the scenario:

* yum.conf includes 'pkgpolicy=last'.
* Repository A is a higher priority than repository B.
* Repository A provides foo-1.0.
* Repository B provides foo-1.1.
* 'yum install foo' installs foo-1.0. (This seems correct to me.)
* Repository B provides bar-1.1, which depends on foo-1.1.
* 'yum install bar' fails. (This is what seemed incorrect to me.)

I think this may be a matter of the semantics of 'pkgpolicy=last'. I
interpreted it to mean two things:

* Yum will install the version in the higher-priority (last) repository if
  you tell it to install the package, even if it finds a newer version in
  a lower-priority repository.

* Yum will not upgrade the package if it finds a newer version in a
  lower-priority repository; it will stick witih the version in the
  higher-priority repository.

It seems to also have this effect:

* Yum will not install the version in the lower-priority repository to
  satisfy a dependency, even if the package is not installed already.

I was hoping that it would instead be:

* Yum will install the version in the lower-priority repository to satisfy
  dependencies, but not upgrade an existing version (beyond the version in
  the higher-priority repository).

But perhaps this last is not the intended (or desired) effect; in
retrospect, I can see why "always prefer the version in the
higher-priority repository" is a reasonable interpretation.

Meanwhile, I am in fact planning to mix repositories in the future only if
they say they're attempting to be mutually compatible, so this is not
likely to be an actual problem for me personally. At this point, I'm just
interested in clarifying what 'pkgpolicy=last' is supposed to mean.

                                      -Josh (jbs at cacr.caltech.edu)



More information about the Yum-devel mailing list