Bug#587279: debian-policy: section 2.2.1 needs some tweaking
Bill Allombert <Bill.Allombert@math.u-bordeaux1.fr> writes:
> On Tue, Jun 29, 2010 at 10:31:57AM -0700, Russ Allbery wrote:
>> I'm committing the following change for the next release which differs
>> slightly from Raphael's in that it uses better markup for the field
>> names (fixing an existing minor inconsistency) and doesn't specify the
>> first alternative. Packages listing the non-free alternative first are
>> probably buggy in other ways, and if someone wants to propose wording
>> elsewhere to deal with that I'd probably second it, but they don't fail
>> this particular section because they don't require a non-free package
>> to work.
>> I think this is informative, not normative, since it just clarifies the
>> existing requirement and doesn't change the basic requirements, so I'm
>> going ahead and committing this, but if anyone thinks that's too
>> aggressive, do speak up.
> I disagree that adding an explicit allowance for alternative is not a
> normative change.
> The old wording (the package must not declare a "Depends", "Recommends",
> or "Build-Depends" relationship on a non-main package) is quite clear
> that alternative are not allowed.
Okay. If there's disagreement, then we may as well use a somewhat more
formal procedure. I've reverted the change while we discuss this.
> Part of the "non-free is not part of Debian" deal was that Debian (main)
> would not "advertize" non-free software.
I believe this is exactly backwards from history. My understanding is
that our refusal to abide by this rule is the reason why the FSF removed
Debian from its list of advertised Linux distributions. And regardless,
I've never seen anywhere in the project documents that we say we won't
advertise non-free software.
We've allowed alternative dependencies including non-free software in
Debian for forever (certainly for as long as I've been part of the
project), so if your reading is correct, Policy is inconsistent with
reality and existing packages are buggy. I believe Policy is wrong and
the packages are correct, and therefore propose the following fix, which
also specifically mentions the build relationship fields:
diff --git a/policy.sgml b/policy.sgml
index 3e99099..9fe7158 100644
@@ -476,9 +476,11 @@
must not require a package outside of <em>main</em>
for compilation or execution (thus, the package must
- not declare a "Depends", "Recommends", or
- "Build-Depends" relationship on a non-<em>main</em>
+ not declare a <tt>Pre-Depends</tt>, <tt>Depends</tt>,
+ <tt>Recommends</tt>, <tt>Build-Depends</tt>,
+ or <tt>Build-Depends-Indep</tt> relationship on a
+ non-<em>main</em> package unless a package
+ in <em>main</em> is listed as an alternative),
must not be so buggy that we refuse to support them,
Russ Allbery (email@example.com) <http://www.eyrie.org/~eagle/>