On Thu, Sep 22, 2011 at 10:25:06PM +0200, Bill Allombert wrote: > > I know that the buildd system likes to pull in the first package in > > such an alternative dependency chain. And now I start to wonder:
> > Is it allowed for a package in main to have a package _outside_ of main > > as first component of an alternative dependency? The package in > > question is extremely unlikely to ever be used as Build-Depends, so this > > is of a more general question. > > What also might be used as argument is the social contract, DFSG #4: > > "Our priorities are our users and free software" -- it can be argued > > that we don't put the priority on free software in such a case. > > tl;dr - what do you think, is a "Depends: foo-contrib | foo" acceptable > > for packages in main or should it be "Depends: foo | foo-contrib" > > instead? > Policy 2.2.1 forbid both usages: it says: > the package must not declare a "Depends", "Recommends", or "Build-Depends" > relationship on a non-_main_ package > Nowhere in policy there is an indication that the first alternative is > special. That is a bug in the policy wording. What is meant by "Depends relationship" and "Recommends relationship" is "the package must not under a normal configuration cause a package outside of main to be pulled in to satisfy the dependency", which is the *relationship* expressed; it does not mean that a non-free package may not appear anywhere in the Depends *field*. > I suggest that foo-contrib Provides: foo instead. Are you sure that can't give results that are contrary to policy's intent? Whereas 'Depends: foo | foo-contrib' will always install the real 'foo' by preference, as far as I know once you make foo-contrib Provides: foo, 'Depends: foo' could result in 'foo-contrib' being given preference arbitrarily. Or does apt have a guarantee that real packages will be given preference, or that main packages will be given preference over non-free ones, when resolving virtual packages? In any case, you can't have versioned provides, so there are some use cases where this would still not be sufficient. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
signature.asc
Description: Digital signature