From: Russ Allbery
Date: Sun, 16 Mar 2008 22:06:34 +0000 (+0000)
Subject: Clarify mandatory config files in /etc
X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=a096f37893cce0c8900865b9db1a2cebbe51dcf6;p=debian%2Fdebian-policy.git
Clarify mandatory config files in /etc
Add the /etc/cron.hourly directory to the list of cron directories.
/etc/cron.* files now must be configuration files (upgraded from
should). Mention the various scripts that must be configuration files
in the section about configuration files. Thanks, Frank Küster.
Closes #403391.
git-archimport-id: rra@debian.org--lenny/debian-policy--devel--3.7--patch-42
---
diff --git a/debian/changelog b/debian/changelog
index 744e7b3..0870acc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -28,6 +28,8 @@ debian-policy (3.7.4.0) unstable; urgency=low
* Bug fix: "[Amended] copyright should include notice if a package is
not a part of Debian distribution", thanks to Taketoshi Sano
(Closes: #65577).
+ * Bug fix: "scripts as configuration files: should vs. must", thanks to Frank
+ Küster (Closes: #403391).
* Bug fix: "Examples of dpkg frontends should mention apt now", thanks
to Josh Triplett (Closes: #455602).
* Bug fix: "Minor typos and wording suggestions", thanks to Michael
diff --git a/policy.sgml b/policy.sgml
index 1ad9699..ae7149f 100644
--- a/policy.sgml
+++ b/policy.sgml
@@ -6388,12 +6388,13 @@ Reloading description configuration...done.
via cron, it should place a file with the name of the
package in one or more of the following directories:
+/etc/cron.hourly
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
As these directory names imply, the files within them are
- executed on a daily, weekly, or monthly basis,
+ executed on an hourly, daily, weekly, or monthly basis,
respectively. The exact times are listed in
/etc/crontab.
@@ -6401,13 +6402,12 @@ Reloading description configuration...done.
All files installed in any of these directories must be
scripts (e.g., shell scripts or Perl scripts) so that they
can easily be modified by the local system administrator.
- In addition, they should be treated as configuration
- files.
+ In addition, they must be treated as configuration files.
- If a certain job has to be executed more frequently than
- daily, the package should install a file
+ If a certain job has to be executed at some other frequency or
+ at a specific time, the package should install a file
/etc/cron.d/package. This file uses the
same syntax as /etc/crontab and is processed by
cron automatically. The file must also be
@@ -7206,10 +7206,13 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
- Note that a script that embeds configuration information
- (such as most of the files in /etc/default and
- /etc/cron.{daily,weekly,monthly}) is de-facto a
- configuration file and should be treated as such.
+ As noted elsewhere, /etc/init.d scripts,
+ /etc/default files, scripts installed in
+ /etc/cron.{hourly,daily,weekly,monthly}, and cron
+ configuration installed in /etc/cron.d must be
+ treated as configuration files. In general, any script that
+ embeds configuration information is de-facto a configuration
+ file and should be treated as such.
diff --git a/upgrading-checklist.html b/upgrading-checklist.html
index 5b6b5c9..2358c2f 100644
--- a/upgrading-checklist.html
+++ b/upgrading-checklist.html
@@ -84,6 +84,9 @@ picking your way through this list.
prevents installation of the breaking package unless the package
named in Breaks is deconfigured first. This field should not be
used until the dpkg in Debian stable supports it. [6.5, 6.6, 7]
+ * Files in /etc/cron.{hourly,daily,weekly,monthly} must be
+ configuration files (upgraded from should). Mention the hourly
+ directory. [9.5]
* Manual pages in locale-specific directories should use either the
legacy encoding for that directory or UTF-8. Country names should
not be included in locale-specific manual page directories unless