]> git.donarmstrong.com Git - debian/debian-policy.git/commitdiff
Merge branch 'master' into bug498300-rra
authorRuss Allbery <rra@debian.org>
Fri, 13 Jan 2012 17:21:28 +0000 (09:21 -0800)
committerRuss Allbery <rra@debian.org>
Fri, 13 Jan 2012 17:21:28 +0000 (09:21 -0800)
debian/changelog
policy.sgml
upgrading-checklist.sgml

index bdcb01618967fb6c5c16b4d668b41f3c3e2a51aa..3dcb3c40456b58c26a144615dba567a9186c20e6 100644 (file)
@@ -25,6 +25,11 @@ debian-policy (3.9.3.0) UNRELEASED; urgency=low
     Seconded: Cyril Brulebois <kibi@debian.org>
     Seconded: RaphaĆ«l Hertzog <hertzog@debian.org>
     Closes: #23712
+  * Policy: Add /run FHS exception, clarify rules for /run and /var/run
+    Wording: Russ Allbery <rra@debian.org>
+    Seconded: Steve Langasek <vorlon@debian.org>
+    Seconded: Roger Leigh <rleigh@codelibre.net>
+    Closes: #620870, #532120
   * MIME Policy: Retire this document and merge it with Policy
     Wording: Ben Finney <ben+debian@benfinney.id.au>
     Seconded: Russ Allbery <rra@debian.org>
@@ -54,6 +59,8 @@ debian-policy (3.9.3.0) UNRELEASED; urgency=low
   * Clarify that packages in main may not declare Pre-Depends or
     Build-Depends-Indep relationships outside of main either.  Partly
     addresses #587279.
+  * Fix typo in the version numbers in the dpkg-divert examples.  Thanks,
+    Slavko.
   * Add the release date of 3.9.2.0 to upgrading-checklist.
   * Fix ordering of the last entries in the 3.9.2.0 upgrading-checklist.
   * Fix typo in upgrading-checklist entry for multiarch paths.  Thanks,
index 0f1dbf91d54478b958992a073e77e36e7ae83867..23c19133cec07ace97af3844b82a8ca4dd22c5e5 100644 (file)
@@ -6246,6 +6246,25 @@ install -m644 debian/shlibs.<var>package</var> debian/<var>package</var>/DEBIAN/
                   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
@@ -6388,6 +6407,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>
@@ -6762,15 +6804,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>
 
@@ -11328,7 +11369,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
index dc62283d8dd7be32f60159de4729c70f5350a97e..88c1950e883dab0838c8637a38f0652793d3a474 100644 (file)
@@ -49,6 +49,21 @@ Unreleased.
   now contain the value <tt>any all</tt> for source packages building both
   architecture-independent and architecture-dependent packages.
   </item>
+<tag>9.1.1</tag>
+  <item><file>/run</file> is allowed as an exception to the FHS and
+  replaces <file>/var/run</file>.  <file>/run/lock</file>
+  replaces <file>/var/lock</file>.  The FHS requirements for the older
+  directories apply to these directories as well.  Backward compatibility
+  links will be maintained and packages need not switch to
+  referencing <file>/run</file> directly yet.  Files in <file>/run</file>
+  should be stored in a temporary file system.
+  </item>
+<tag>9.1.4</tag>
+  <item>New section spelling out the requirements for packages that use
+  files in <file>/run</file>, <file>/var/run</file>,
+  or <file>/var/lock</file>.  This generalizes information previously only
+  in 9.3.2.
+  </item>
 <tag>9.5</tag>
   <item>Cron job file names must not contain <tt>.</tt> or <tt>+</tt> or
   they will be ignored by cron.  They should replace those characters