On September 20, 2011 02:24:33 PM Stefano Zacchiroli wrote: > On Tue, Sep 20, 2011 at 01:12:37PM +0200, Gerfried Fuchs wrote: > > 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? > > I think the first form above ("foo-contrib | foo") is not acceptable. My > argument is that we should make choice of non-free software an explicit > action of Debian users, rather than an implicit/automated one.
Would once be fine, or should contrib/non-free users need to make an explicit choice every first time a package outside of Main is an installation candidate? > Most of our package manager frontends — including the default one — walk > dependency formulae left to right, preferring the first alternative if > it is satisfiable. That means that a user installing a package with a > dependency like the first form above will install foo-contrib without > necessarily knowing they are doing so. > > I understand it can be argued that users enabling contrib/non-free have > decided to opt-in for non-free software. But I still don't think such a > system-wide should be taken as a wildcard to install contrib/non-free > packages without user consent. > > If there were a way to fix a system-wide dependency solving preference > that would favor main packages by default, unless explicitly customized > by the sysadm, the first form might be (more) acceptable. I don't think > it is acceptable without it. Debian already favours Main packages by default and the sysadmin/user must explicitly choose to add Contrib and Non-free to the sources.list if they want packages from those archives--why isn't that a good enough flag of the sysadmin/user's dependency solving preferences? AFAICT: A "system-wide dependency solving preference" is the same as asking once and is logically no different from having contrib and/or non-free lines in sources.list, or not. i.e, If the sysadmin wants to consider non-Main packages as solutions then contrib/non-free must be in the sources.list, and if they don't there is no point having them there. So, its not an additional/redundant preference that needs to be set, it is the tools which need to favour Main packages as solutions to dependency problems regardless of whether they are A, B, or C, in an A|B|C statement... I'm assuming the objective is to stack the deck to favour DFSG-free software. Personally: I'd like to see any philosophical overloading of dependency statements disappear. The statement "A|B|C" should mean that A is the best choice from a technical perspective (stability, functionality, etc.) Those of you who don't want to pollute you system with non-DFSG-free packages can simply avoid putting contrib and/or non-free in your sources.list. Anyone who wants a finer grained mix than what including Contrib and Non-free, or not, gets you will need to play with pinning. - Bruce -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/201109211518.54544.bms...@shaw.ca