Packages depending on Yelp

James Antill james at fedoraproject.org
Tue May 25 20:54:35 UTC 2010


On Tue, 2010-05-25 at 15:58 -0400, Matt McCutchen wrote:
> On Tue, 2010-05-25 at 20:22 +0100, Matthew Garrett wrote:
> > We discussed this issue at the fesco meeting today. The net outcome was 
> > that it's currently impractical to require that all packages that use 
> > yelp depend on it. However, requiring all yelp-using apps to integrate 
> > support for telling the user what's wrong may be unreasonable.
> > 
> > Long-term, it would be nice for this to integrate with PackageKit 
> > somehow. Short-term, the simplest solution would seem to be to provide a 
> > stub package that provides: yelp and a yelp binary, and then have that 
> > binary do nothing other than tell the user that they need to install 
> > yelp. Spins would then be at liberty to choose whether to provide the 
> > "real" yelp or the stub version. Once that's implemented dependencies 
> > can be added.
> > 
> > Does anyone have any objection to this approach?
> 
> We would have to ensure that (1) "yum install yelp" chooses the real
> package rather than the stub and (2) the real package can be installed
> on a system containing the stub without causing a file conflict.
> 
> An alternative would be to provide a wrapper script that runs yelp if
> present or otherwise tells the user to install it, and have applications
> require the wrapper package.  We could either give the wrapper script a
> different name and patch all applications to run that name or rename the
> real yelp executable and have all callers go through the wrapper.  I
> don't see any way to avoid patching all the application packages to
> require the wrapper package rather than "yelp", given that we want
> installing "yelp" to actually install it but installing an application
> to only install the wrapper.

 With the latest compare_providers¹ this should be fairly easy. We just
have yelp-nothing (Provides: yelp) which installs a simple binary that
says yelp isn't there and a "yelp" package which is the real thing.
 Then "yum install yelp" will install the pkg. yelp, and "yum install
blah" will install yelp-nothing as a dep.


¹ http://yum.baseurl.org/wiki/CompareProviders

-- 
James Antill - james at fedoraproject.org
http://yum.baseurl.org/wiki/releases
http://yum.baseurl.org/wiki/whatsnew/3.2.28
http://yum.baseurl.org/wiki/YumMultipleMachineCaching


More information about the devel mailing list