Package: checkservice
Version: 1.1.0-11
Severity: serious
Tags: patch

Dear Maintainer,

Andreas Beckmann <[email protected]> reported in -devel that your package
(as well as 27 others) ships a folder either in /var/run or /var/lock. This
is forbidden by policy.

Lintian detects the problem and warns as follow:

/var/run may be a temporary filesystem, so any directories or files needed
/there must be created dynamically at boot time.

Refer to Debian Policy Manual section 9.3.2 (Writing the scripts) for
details.

Severity: serious, Certainty: possible
Check: files, Type: binary, udeb

which is why I am reporting this bug with severity serious (and there fore,
release critical).

Please fix your package. I have attached what I believe is a good fix the
problem, however, I haven't tried it, and I haven't tested if something more
for creating the necessary folder at runtime should be added. Please make
sure to test before applying the patch blindly.

Cheers,

Thomas Goirand (zigo)
diff -u checkservice-1.1.0/debian/changelog checkservice-1.1.0/debian/changelog
--- checkservice-1.1.0/debian/changelog
+++ checkservice-1.1.0/debian/changelog
@@ -1,3 +1,10 @@
+checkservice (1.1.0-11.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Fixes wrong handling of var/lock/checkservice life cycle (Closes: #XXXXXX).
+
+ -- Thomas Goirand <[email protected]>  Sun, 07 Oct 2012 10:31:51 +0000
+
 checkservice (1.1.0-11) unstable; urgency=low
 
   * Set pluginpath to /usr/share/checkservice too ;)
diff -u checkservice-1.1.0/debian/dirs checkservice-1.1.0/debian/dirs
--- checkservice-1.1.0/debian/dirs
+++ checkservice-1.1.0/debian/dirs
@@ -8,3 +8,2 @@
 var/cache/checkservice
-var/lock/checkservice
 var/log/checkservice
diff -u checkservice-1.1.0/debian/checkservice.cron.d checkservice-1.1.0/debian/checkservice.cron.d
--- checkservice-1.1.0/debian/checkservice.cron.d
+++ checkservice-1.1.0/debian/checkservice.cron.d
@@ -6 +6 @@
-*/10 *	* * *	root	[ -x /usr/sbin/checkservice -a -f /etc/checkservice/checkservice.conf ] && /usr/sbin/checkservice -l /var/log/checkservice > /dev/null
+*/10 *	* * *	root	[ -x /usr/sbin/checkservice -a -f /etc/checkservice/checkservice.conf ] && mkdir -p /var/lock/checkservice && /usr/sbin/checkservice -l /var/log/checkservice > /dev/null
--- checkservice-1.1.0.orig/debian/postrm
+++ checkservice-1.1.0/debian/postrm
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+set -e
+
+if [ "${1}" = "purge" ] ; then
+	rm -rf /var/lock/checkservice
+fi
+
+#DEBHELPER#

Reply via email to