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 [EMAIL PROTECTED]