Package: debian-policy Version: 3.1.1.1 Severity: normal The current policy document does not make explicit that packages ought to aim to be "compatible" with FHS, rather than "compliant".
Furthermore, the policy does not make explicit *which version* of FHS one ought to follow. There is a passing reference to the fact that a pre-release FHS is included in the policy document, but I believe this information should be made more explicit. (When people have to guess at what a policy document means, trouble is likely) I am appending a diff containing my best shot at clarifying these issues. When I brought this issue up on debian-policy, Chris Waters suggested that I point out the fact that current policy actively prevents packages from being "FHS compliant" (a higher level of conformance than mere "compatibility"). I have included a few lines about this in the actual policy document, because it is important for new developers to understand some of the rationale for settling on "mere" compatibility. -- System Information Debian Release: 2.2 Kernel Version: Linux riemann 2.2.13 #1 Sat Dec 4 21:48:34 EST 1999 i686 unknown --- policy.sgml.orig Wed Mar 15 12:18:02 2000 +++ policy.sgml Wed Mar 15 12:23:25 2000 @@ -1085,9 +1085,17 @@ <heading>Linux File system Structure</heading> <p> - The location of all installed files and directories must - comply with the Linux File system Hierarchy Standard - (FHS). The latest version of this document can be found + Debian packages must be <em>fully compatible</em> with the + Filesystem Hierarchy Standard (FHS). See the FHS document + for a precise definition of the term <em>fully + compatible</em>. Specific questions about following the + standard may be asked on <prgn>debian-devel</prgn>, or + referred to Daniel Quinlan, the FHS coordinator, at + <email>[EMAIL PROTECTED]</email>.</p> + + <p> + To comply with current policy, a package must be compatible + with FHS Version pre-2.1 #2. This document can be found alongside this manual or on <url id="http://www.pathname.com/fhs/">.<footnote> <p>The Debian distribution currently distributes a draft @@ -1095,20 +1103,39 @@ have changed between the currently released 2.0 version and the to-be-released 2.1 version.</p> </footnote> - Specific questions about following the standard may be - asked on <prgn>debian-devel</prgn>, or referred to Daniel - Quinlan, the FHS coordinator, at - <email>[EMAIL PROTECTED]</email>.</p></sect1> + + <p> + In the FHS document, <em>compatibility</em> is the lesser + of two levels of conformance; systems that follow the FHS + more strictly are said to be <em>fully compliant</em>. + Being compliant is a worthy goal, and packagers should + strive for it, as much as possible. Current policy + prevents most packages from being compliant with the FHS + at present, unfortunately. The list of current obstacles + includes: + <list> + <item> + <tt>/usr/doc</tt> (see <ref id="usrdoc">) + is not allowed by FHS + </item> + <item> + <tt>/usr/local</tt> stub directories (described in the + following section) are not allowed by FHS + </item> + </list> + </p> + + </sect1> <sect1> <heading>Site-specific programs</heading> <p> - As mandated by the FHS no package should place any - files in <tt>/usr/local</tt>, either by putting them in - the file system archive to be unpacked by <prgn>dpkg</prgn> - or by manipulating them in their maintainer scripts.</p> + As mandated by the FHS, no package should place any + files in <tt>/usr/local</tt>. Do not include any files in + the file system archive to be unpacked by <prgn>dpkg</prgn>, + and do not manipulate files in the maintainer scripts.</p> <p> However, the package should create empty directories below