[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#769027: (pre-approval for) unblock: dhcpy6d/0.4-2



Control: retitle -1 unblock: dhcpy6d/0.4-2

Hi Jonathan,

Jonathan Wiltshire wrote:
> > But since it didn't relate to any of the planned RC-fixes and we have
> > a quite rigid freeze policy, I only planned the fix for an post-Jessie
> > upload.
> 
> This sounds wise to me. Unless it's actively causing a problem, we don't
> know what might break by changing it at this stage.

I've looked into it (group adm for log files, #769029) closer and it's
less trivial than expected as upstream has some chown calls in the
code, too. So I need to discuss this first with upstream anyways.

> I'm happy with your proposed upload.

Thanks, uploaded. Please unblock dhcpy6d/0.4-2.

Compared to the diff posted so far, there's -- besides the updated
changelog -- one small addition, because I missed a small but
important detail:

→ git show 6060ae19c5edf7137425356f449d7a72b6fe8974
commit 6060ae19c5edf7137425356f449d7a72b6fe8974
Author: Axel Beckert <abe@deuxchevaux.org>
Date:   Thu Nov 13 15:36:09 2014 +0100

    Debian package: postrm: Also delete /etc/default/dhcpy6d itself, ucf doesn't

diff --git a/debian/dhcpy6d.postrm b/debian/dhcpy6d.postrm
index 9f6499d..2e9f464 100755
--- a/debian/dhcpy6d.postrm
+++ b/debian/dhcpy6d.postrm
@@ -9,7 +9,7 @@ case "$1" in
     purge)
         rm -f /var/log/dhcpy6d.log* /var/lib/dhcpy6d/volatile.sqlite
         # Taken from ucf's postrm example
-        for ext in '~' '%' .bak .ucf-new .ucf-old .ucf-dist; do
+        for ext in '' '~' '%' .bak .ucf-new .ucf-old .ucf-dist; do
             rm -f "/etc/default/dhcpy6d$ext"
         done
         if which ucf >/dev/null; then

Initially I missed the fact that calling "ucf --purge" does actually
not remove the file itself as I expected. This also removes the file.
Would result in a piuparts error otherwise.

Here's the full debdiff of source packages between Testing and
Unstable:

diff -Nru dhcpy6d-0.4/debian/changelog dhcpy6d-0.4/debian/changelog
--- dhcpy6d-0.4/debian/changelog	2014-10-22 21:03:57.000000000 +0200
+++ dhcpy6d-0.4/debian/changelog	2014-11-13 15:36:36.000000000 +0100
@@ -1,3 +1,21 @@
+dhcpy6d (0.4-2) unstable; urgency=medium
+
+  * Handle /etc/default/dhcpy6d with ucf. (Closes: #767817)
+    + Install file to /usr/share/dhcpy6d/default/dhcpy6d instead, remove
+      symlink debian/dhcpy6d.default, add debian/dhcpy6d.install.
+    + Depend on ucf.
+  * Install volatile.sqlite into /usr/share/dhcpy6d/ and copy it to
+    /var/lib/dhcpy6d/volatile.sqlite during postinst only if it doesn't
+    yet exist. Remove it upon purge. (Closes: #768989)
+  * Both fixes above together also remove unnecessary executable bits.
+    (Else the fix for #767817 newly introduces the lintian warning
+    executable-not-elf-or-script; closes: #769006)
+  * Additionally replace symlink debian/dhcpy6d.logrotate with a patched
+    copy of etc/logrotate.d/dhcpy6d to remove the executable bit also
+    there. (Fixes another facet of #769006)
+
+ -- Axel Beckert <abe@debian.org>  Thu, 13 Nov 2014 12:39:09 +0100
+
 dhcpy6d (0.4-1) unstable; urgency=low
 
   [ Henri Wahl ]
diff -Nru dhcpy6d-0.4/debian/control dhcpy6d-0.4/debian/control
--- dhcpy6d-0.4/debian/control	2014-10-22 15:41:40.000000000 +0200
+++ dhcpy6d-0.4/debian/control	2014-11-10 12:40:18.000000000 +0100
@@ -15,6 +15,7 @@
 Package: dhcpy6d
 Architecture: all
 Depends: adduser,
+         ucf,
          ${misc:Depends},
          ${python:Depends}
 Pre-Depends: dpkg (>= 1.16.5)
diff -Nru dhcpy6d-0.4/debian/dhcpy6d.default dhcpy6d-0.4/debian/dhcpy6d.default
--- dhcpy6d-0.4/debian/dhcpy6d.default	2014-10-22 21:36:32.000000000 +0200
+++ dhcpy6d-0.4/debian/dhcpy6d.default	1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-# dhcpy6d is disabled by default
-#RUN=yes
diff -Nru dhcpy6d-0.4/debian/dhcpy6d.dirs dhcpy6d-0.4/debian/dhcpy6d.dirs
--- dhcpy6d-0.4/debian/dhcpy6d.dirs	1970-01-01 01:00:00.000000000 +0100
+++ dhcpy6d-0.4/debian/dhcpy6d.dirs	2014-11-10 16:13:28.000000000 +0100
@@ -0,0 +1 @@
+usr/share/dhcpy6d/
diff -Nru dhcpy6d-0.4/debian/dhcpy6d.install dhcpy6d-0.4/debian/dhcpy6d.install
--- dhcpy6d-0.4/debian/dhcpy6d.install	1970-01-01 01:00:00.000000000 +0100
+++ dhcpy6d-0.4/debian/dhcpy6d.install	2014-11-07 19:45:02.000000000 +0100
@@ -0,0 +1 @@
+etc/default/dhcpy6d usr/share/dhcpy6d/default/
diff -Nru dhcpy6d-0.4/debian/dhcpy6d.logrotate dhcpy6d-0.4/debian/dhcpy6d.logrotate
--- dhcpy6d-0.4/debian/dhcpy6d.logrotate	2014-10-22 21:36:32.000000000 +0200
+++ dhcpy6d-0.4/debian/dhcpy6d.logrotate	2014-11-11 15:40:27.000000000 +0100
@@ -4,6 +4,6 @@
 	rotate 4
 	compress
 	notifempty
-	create 770 dhcpy6d dhcpy6d
+	create 660 dhcpy6d dhcpy6d
 }
 
diff -Nru dhcpy6d-0.4/debian/dhcpy6d.postinst dhcpy6d-0.4/debian/dhcpy6d.postinst
--- dhcpy6d-0.4/debian/dhcpy6d.postinst	2014-09-18 19:53:36.000000000 +0200
+++ dhcpy6d-0.4/debian/dhcpy6d.postinst	2014-11-11 15:24:57.000000000 +0100
@@ -50,14 +50,23 @@
     if [ ! -e /var/log/dhcpy6d.log ]; then
         touch /var/log/dhcpy6d.log
     fi
-    chown $SERVER_USER:$SERVER_GROUP /var/log/dhcpy6d.log
-    chmod 0770 /var/log/dhcpy6d.log
+    if [ ! -e /var/lib/dhcpy6d/volatile.sqlite ]; then
+        cp /usr/share/dhcpy6d/volatile.sqlite /var/lib/dhcpy6d/volatile.sqlite
+    fi
+    chown $SERVER_USER:$SERVER_GROUP /var/log/dhcpy6d.log /var/lib/dhcpy6d/volatile.sqlite
+    chmod 0660 /var/log/dhcpy6d.log /var/lib/dhcpy6d/volatile.sqlite
     # 6. add DUID entry to /etc/default/dhcpy6d if not yet existing
-    if [ !  $(grep "DUID=" /etc/default/dhcpy6d) ]; then
-        echo >> /etc/default/dhcpy6d
-        echo "# LLT DUID generated by Debian" >> /etc/default/dhcpy6d
-        echo "DUID=$(dhcpy6d --generate-duid)" >> /etc/default/dhcpy6d
+    TMPFILE=`mktemp`
+    cat /usr/share/dhcpy6d/default/dhcpy6d  > "${TMPFILE}"
+    echo                                   >> "${TMPFILE}"
+    echo "# LLT DUID generated by Debian"  >> "${TMPFILE}"
+    if [ ! -e /etc/default/dhcpy6d ] || ! grep -q "DUID=" /etc/default/dhcpy6d; then
+        echo "DUID=$(dhcpy6d --generate-duid)" >> "${TMPFILE}"
+    else
+        egrep "^DUID=" /etc/default/dhcpy6d    >> "${TMPFILE}"
     fi
+    ucf "${TMPFILE}" /etc/default/dhcpy6d
+    ucfr dhcpy6d /etc/default/dhcpy6d
     ;;
 esac
 
diff -Nru dhcpy6d-0.4/debian/dhcpy6d.postrm dhcpy6d-0.4/debian/dhcpy6d.postrm
--- dhcpy6d-0.4/debian/dhcpy6d.postrm	2014-08-06 16:00:56.000000000 +0200
+++ dhcpy6d-0.4/debian/dhcpy6d.postrm	2014-11-13 15:36:35.000000000 +0100
@@ -7,7 +7,17 @@
 
 case "$1" in
     purge)
-        rm -f /var/log/dhcpy6d.log*
+        rm -f /var/log/dhcpy6d.log* /var/lib/dhcpy6d/volatile.sqlite
+        # Taken from ucf's postrm example
+        for ext in '' '~' '%' .bak .ucf-new .ucf-old .ucf-dist; do
+            rm -f "/etc/default/dhcpy6d$ext"
+        done
+        if which ucf >/dev/null; then
+            ucf --purge /etc/default/dhcpy6d
+        fi
+        if which ucfr >/dev/null; then
+            ucfr --purge dhcpy6d /etc/default/dhcpy6d
+        fi
         ;;
 esac
 
diff -Nru dhcpy6d-0.4/debian/rules dhcpy6d-0.4/debian/rules
--- dhcpy6d-0.4/debian/rules	2014-10-22 13:01:06.000000000 +0200
+++ dhcpy6d-0.4/debian/rules	2014-11-11 15:24:57.000000000 +0100
@@ -7,6 +7,11 @@
 	rm -f debian/dhcpy6d/usr/share/doc/dhcpy6d/LICENSE
 	rm -f debian/dhcpy6d/var/log/dhcpy6d.log
 	rm -f debian/dhcpy6d/usr/share/doc/dhcpy6d/*.[0-9]
+	mv -v debian/dhcpy6d/var/lib/dhcpy6d/volatile.sqlite debian/dhcpy6d/usr/share/dhcpy6d/
+
+override_dh_install:
+	dh_install
+	chmod 0644 debian/dhcpy6d/usr/share/dhcpy6d/default/dhcpy6d
 
 # make -f debian/rules get-orig-source
 get-orig-source:


And here's the debdiff of the binary packages between Testing and
Unstable:

[The following lists of changes regard files as different if they have
different names, permissions or owners.]

Files in second .deb but not in first
-------------------------------------
-rw-r--r--  root/root   /usr/share/dhcpy6d/default/dhcpy6d
-rw-r--r--  root/root   /usr/share/dhcpy6d/volatile.sqlite

Files in first .deb but not in second
-------------------------------------
-rw-r--r--  root/root   /etc/default/dhcpy6d
-rw-r--r--  root/root   /var/lib/dhcpy6d/volatile.sqlite

Control files: lines which differ (wdiff format)
------------------------------------------------
Depends: adduser, {+ucf, python,+} python:any (<< 2.8), python:any (>= [-2.7.5-5~), python-] {+2.7.5-5~)+}
Installed-Size: [-304-] {+309+}
Version: [-0.4-1-] {+0.4-2+}

		Regards, Axel
-- 
 ,''`.  |  Axel Beckert <abe@debian.org>, http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE
  `-    |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5

Attachment: signature.asc
Description: Digital signature


Reply to: