[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Should we allow packages to depend on packages with lower priority values?



On Thu, Dec 11, 2003 at 06:08:05PM +0100, Andreas Metzler wrote:
> On Thu, Dec 11, 2003 at 09:31:49AM -0700, Paul E Condon wrote:
> [...]
> > I've just read Policy on this issue again, and more carefully. I think
> > Policy is slightly broken, in its description of 'extra'
> 
> > 1. Extra can include packages that conflict with packages in
> > 'required'.  How can such packages be useful, except that they correct
> > for the brokenness that results from removing the 'required' package?
> [...]
> 
> They can provide an alternative implementation of the same
> functionality. Take for example awk. mawk is small and lean and
> therefore required. OTOH GNU awk provides more features which most
> people don't need.
> 
> Actually gawk is optional instead of extra and does not conflict with
> mawk, but I think you get the point, the extra package does not only
> "correct for the brokenness that results from removing the 'required'
> package" but provides additional features.
> 
> > There is something fishy here. If there is a work-around that allows
> > the a system to function with a 'required' package not installed,
> > then that package is not really required, and should not be
> > designated as such.
> 
> We want make sure one of a set of packages providing some
> functionality is installed while allowing alternative
> (bloated^Wextended) implementations to be available.
>                   cu andreas

So, using your example, shouldn't there be a virtual package "dawk"
(Debian awk) that is 'required' and two packages, mawk and awk that
both provide "dawk"? But these two conflict with each
other. (Actually, maybe not in this case. But they could conflict in
some other example.)  Then neither mawk nor awk is 'required', just
either one of them.  Then they should not, either one, be marked
'required'. Then the required package, 'dawk', depends on a package of
lower priority.

My point? There is probably no single set of packages that provide the
'required' functionality, and there is no provision for declaring
alternative sets, each of which meets the needs of some user, but
which are mutually incompatible. Maybe 'required' should be a virtual
package, rather than a priority, and the packages that implement
'required' are themselves virtual. ??? I don't have a solution, but I
think there is a logical inadequacy in Policy here.

But maybe wait until this is a real problem before fixing it.

-- 
Paul E Condon           
pecondon@peakpeak.com    



Reply to: