Package: bcron
Version: 0.11-21
Severity: wishlist
Tags: patch

Hi,

please stop using dh-sysuser. dh-sysuser is in operation since 7 years
and has only gotten 9 reverse dependencies in that time. The vast
majority of packages use the /usr/lib/sysusers.d mechanism supported by
debhelper. dh-sysuser has a number of deficiencies such as using using
useradd instead of policy-recommended adduser, removing users on purge
when project consensus is that users should not be removed. With the
availability of multiple implementations of the sysusers.d format even
for non-linux systems, I think it is time to settle on that standard and
call dh-sysuser failed. I'm attaching a patch for your convenience. Do
you agree with the reasoning?

Helmut
diff --minimal -Nru bcron-0.11/debian/bcron.postinst 
bcron-0.11/debian/bcron.postinst
--- bcron-0.11/debian/bcron.postinst    2023-06-27 14:57:38.000000000 +0200
+++ bcron-0.11/debian/bcron.postinst    2024-04-27 09:10:46.000000000 +0200
@@ -7,11 +7,10 @@
 
 CRONTABDIR=/var/spool/cron/crontabs
 
+#DEBHELPER#
+
 case "$1" in
     configure)
-       # create user cron now when it doe not exist
-       # this may bypass bcron.sysuser
-       getent passwd cron || adduser --system --group --home /var/spool/cron 
cron
        # add acls for user and group cron
        setfacl -m u:cron:rwx $CRONTABDIR
        setfacl -m g:cron:rwx $CRONTABDIR
@@ -30,6 +29,4 @@
     ;;
 esac
 
-#DEBHELPER#
-
 exit 0
diff --minimal -Nru bcron-0.11/debian/bcron.sysuser 
bcron-0.11/debian/bcron.sysuser
--- bcron-0.11/debian/bcron.sysuser     2023-06-27 14:57:38.000000000 +0200
+++ bcron-0.11/debian/bcron.sysuser     1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-cron home=/var/spool/cron
diff --minimal -Nru bcron-0.11/debian/bcron.sysusers 
bcron-0.11/debian/bcron.sysusers
--- bcron-0.11/debian/bcron.sysusers    1970-01-01 01:00:00.000000000 +0100
+++ bcron-0.11/debian/bcron.sysusers    2024-04-27 09:08:59.000000000 +0200
@@ -0,0 +1 @@
+u      cron    -       "Cron daemon user"      /var/spool/cron
diff --minimal -Nru bcron-0.11/debian/changelog bcron-0.11/debian/changelog
--- bcron-0.11/debian/changelog 2023-07-17 16:20:52.000000000 +0200
+++ bcron-0.11/debian/changelog 2024-04-27 09:10:54.000000000 +0200
@@ -1,3 +1,10 @@
+bcron (0.11-21.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Move from dh-sysuser to standard dh_installsysuser. (Closes: #-1)
+
+ -- Helmut Grohne <hel...@subdivi.de>  Sat, 27 Apr 2024 09:10:54 +0200
+
 bcron (0.11-21) unstable; urgency=medium
 
   * implemented as much as I could understand from Michael Biebl's and
diff --minimal -Nru bcron-0.11/debian/control bcron-0.11/debian/control
--- bcron-0.11/debian/control   2023-06-27 16:24:17.000000000 +0200
+++ bcron-0.11/debian/control   2024-04-27 09:10:54.000000000 +0200
@@ -3,10 +3,10 @@
 Priority: optional
 Maintainer: Georges Khaznadar <georg...@debian.org>
 Build-Depends:
+ debhelper (>= 13.3),
  debhelper-compat (= 13),
  dh-buildinfo (>= 0.11+nmu1),
  dh-runit (>= 2.8.1~),
- dh-sysuser (>= 1.3),
  dpkg-dev (>= 1.18.11),
  groff,
  libbg-dev (>= 2),
@@ -27,7 +27,6 @@
  ${misc:Depends},
  ${shlibs:Depends},
  daemon,
- adduser
 Recommends:
  default-mta | mail-transport-agent,
  runit
diff --minimal -Nru bcron-0.11/debian/rules bcron-0.11/debian/rules
--- bcron-0.11/debian/rules     2023-06-27 16:42:02.000000000 +0200
+++ bcron-0.11/debian/rules     2024-04-27 09:10:54.000000000 +0200
@@ -12,7 +12,7 @@
 endef
 
 %:
-       dh $@ --with runit,buildinfo,sysuser
+       dh $@ --with runit,buildinfo
 
 override_dh_auto_build:
        rm -f bcron.info
@@ -33,6 +33,10 @@
        $(call initscript,bcron-sched)
        $(call initscript,bcron-spool)
 
+# Drop override when bumping to compat 14 or later.
+execute_after_dh_installinit:
+       dh_installsysusers
+
 override_dh_installchangelogs:
        dh_installchangelogs NEWS
 

Reply via email to