[Fedora-packaging] Re: Proposal to limit file deps

Ville Skyttä ville.skytta at iki.fi
Fri Dec 22 22:39:57 UTC 2006


On Thu, 2006-12-21 at 09:19 -0600, Tom 'spot' Callaway wrote:
> On Thu, 2006-12-21 at 10:10 -0500, Andrew Overholt wrote:
> > 
> > In the Eclipse SDK package set, we recently went through the
> > multilib-ification process.  We had to add a few file-level dependencies
> > to get this to work.  This was due to the inability to specify %{arch}
> > in a Requires.  How would this have been better accomplished?
> > 
> > Ben can probably explain this better than I can.
> 
> Honestly, this is the only valid case for file-level dependencies I can
> think of, and unfortunately, the only way to work around it is to fix
> rpm to permit %{arch} specific Requires.

One thing for which a dir based dependency is the best we have at the
moment are plugins for Mozilla compatible browsers (Requires:
%{_libdir}/mozilla/plugins).  That could be changed if those browser
packages had a common Provides indicating that they load plugins from
that dir.

By the way, would it be possible/feasible to modify yum so that before
downloading filelists metadata, it would check the headers of packages
already inserted into a transaction to see if they already satisfy the
needed file based dependencies (even if those deps are not available in
primary metadata)?  One example case where this would be useful is what
I currently do in w3c-markup-validator-libs:

   Requires: xhtml1-dtds /usr/share/sgml/xhtml1/xhtml1-20020801/DTD

The DTDs are really expected to be found in that exact path.  Even
though I know it's currently that way in xhtml1-dtds, I'd like to have
the path based dependency there for additional safeguard in case the
path to the DTDs ever changes (there's a date embedded in the path so
it's inherently at least theoretically prone to that).

So when yum sees the above two dependencies without having full
filelists available, it'd first insert xhtml1-dtds and try it out if it
happened to satisfy /usr/share/sgml/xhtml1/xhtml1-20020801/DTD too,
without downloading filelists yet.  If yes, no need to download
filelists.




More information about the Fedora-packaging mailing list