]> git.donarmstrong.com Git - debian/debian-policy.git/blobdiff - policy.sgml
Fix formatting of the symbols file
[debian/debian-policy.git] / policy.sgml
index 1f14e34d3adf65790250a44d88e011898c8178ae..942e5c8ae77300dd14aca44c84721cfa4d13aa17 100644 (file)
              <item>
                  must not require or recommend 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>
-                 package),
+                 package must not declare a "Pre-Depends", "Depends",
+                 "Recommends", "Build-Depends", or "Build-Depends-Indep"
+                 relationship on a non-<em>main</em> package),
              </item>
              <item>
                  must not be so buggy that we refuse to support them,
@@ -4629,7 +4629,7 @@ Depends: libc6 (>= 2.2.1), exim | mail-transport-agent
          Relationships may be restricted to a certain set of
          architectures.  This is indicated in brackets after each
          individual package name and the optional version specification.
-         The brackets enclose a list of Debian architecture names
+         The brackets enclose a non-empty list of Debian architecture names
          in the format described in <ref id="arch-spec">,
          separated by whitespace.  Exclamation marks may be prepended to
          each of the names.  (It is not permitted for some names to be
@@ -6061,10 +6061,10 @@ Replaces: mail-transport-agent
          <p>
            <example>
 <var>library-soname</var> <var>main-dependency-template</var>
-[ | <var>alternative-dependency-template</var> ]
-[ ... ]
-[ * <var>field-name</var>: <var>field-value</var> ]
-[ ... ]
+[| <var>alternative-dependency-template</var>]
+[...]
+[* <var>field-name</var>: <var>field-value</var>]
+[...]
  <var>symbol</var> <var>minimal-version</var>[ <var>id-of-dependency-template</var> ]
            </example>
          </p>
@@ -6169,7 +6169,7 @@ libz.so.1 zlib1g #MINVER#
              following <file>symbols</file> file:
              <example>
 libGL.so.1 libgl1
- | libgl1-mesa-glx #MINVER#
+| libgl1-mesa-glx #MINVER#
  publicGlSymbol@Base 6.3-1
  [...]
  implementationSpecificSymbol@Base 6.5.2-7 1
@@ -6208,10 +6208,8 @@ libGL.so.1 libgl1
            For our example, the <tt>zlib1g</tt> <file>symbols</file> file
            would contain:
            <example compact="compact">
- * Build-Depends-Package: zlib1g-dev
+* Build-Depends-Package: zlib1g-dev
            </example>
-           (Don't forget the space before the <tt>*</tt> so that it will
-           be parsed as part of the entry for that library.)
          </p>
 
          <p>
@@ -6675,6 +6673,25 @@ udeb: libz 1 zlib1g-udeb (>= 1:1.2.3.3.dfsg-1)
                   symlinked there, is relaxed to a recommendation.
                 </p>
               </item>
+             <item>
+               <p>
+                 The additional directory <file>/run</file> in the root
+                 file system is allowed.  <file>/run</file>
+                 replaces <file>/var/run</file>, and the
+                 subdirectory <file>/run/lock</file>
+                 replaces <file>/var/lock</file>, with
+                 the <file>/var</file> directories replaced by symlinks
+                 for backwards compatibility.  <file>/run</file>
+                 and <file>/run/lock</file> must follow all of the
+                 requirements in the FHS for <file>/var/run</file>
+                 and <file>/var/lock</file>, respectively, such as file
+                 naming conventions, file format requirements, or the
+                 requirement that files be cleared during the boot
+                 process.  Files and directories residing
+                 in <file>/run</file> should be stored on a temporary
+                 file system.
+               </p>
+             </item>
               <item>
                 <p>
                   The following directories in the root filesystem are
@@ -6817,6 +6834,29 @@ rmdir /usr/local/share/emacs 2>/dev/null || true
            though the spool may still be physically located there.
          </p>
        </sect1>
+
+       <sect1 id="fhs-run">
+         <heading><file>/run</file> and <file>/run/lock</file></heading>
+
+         <p>
+           The directory <file>/run</file> is cleared at boot, normally
+           by being a mount point for a temporary file system.  Packages
+           therefore must not assume that any files or directories
+           under <file>/run</file> other than <file>/run/lock</file>
+           exist unless the package has arranged to create those files or
+           directories since the last reboot.  Normally, this is done by
+           the package via an init script.  See <ref id="writing-init">
+           for more information.
+         </p>
+
+         <p>
+           Packages must not include files or directories
+           under <file>/run</file>, or under the
+           older <file>/var/run</file> and <file>/var/lock<file> paths.
+           The latter paths will normally be symlinks or other
+           redirections to <file>/run</file> for backwards compatibility.
+         </p>
+       </sect1>
       </sect>
 
       <sect>
@@ -7191,15 +7231,14 @@ test -f <var>program-executed-later-in-script</var> || exit 0
          </p>
 
          <p>
-           <file>/var/run</file> and <file>/var/lock</file> may be mounted
-           as temporary filesystems<footnote>
-               For example, using the <tt>RAMRUN</tt> and <tt>RAMLOCK</tt>
-               options in <file>/etc/default/rcS</file>.
-           </footnote>, so the <file>init.d</file> scripts must handle this
-           correctly. This will typically amount to creating any required
-           subdirectories dynamically when the <file>init.d</file> script
-           is run, rather than including them in the package and relying on
-           <prgn>dpkg</prgn> to create them.
+            Files and directories under <file>/run</file>, including ones
+            referred to via the compatibility paths <file>/var/run</file>
+            and <file>/var/lock</file>, are normally stored on a temporary
+            filesystem and are normally not persistent across a reboot.
+            The <file>init.d</file> scripts must handle this correctly.
+            This will typically mean creating any required subdirectories
+            dynamically when the <file>init.d</file> script is run.
+            See <ref id="fhs-run"> for more information.
          </p>
        </sect1>
 
@@ -11675,7 +11714,7 @@ END-INFO-DIR-ENTRY
      dpkg-divert --package smailwrapper --remove --rename \
         --divert /usr/sbin/smail.real /usr/sbin/smail
   fi
-       </example> where <tt>1.02-2</tt> is the version at which the
+       </example> where <tt>1.0-2</tt> is the version at which the
        diversion was first added to the package.  The postrm should not
        remove the diversion on upgrades both because there's no reason to
        remove the diversion only to immediately re-add it and since the