Helmut Grohne pointed out that the new postinst was missing the #DEBHELPER# stanza. Please find a new patch attached.
Sorry about this. Chris
diff -Nru isc-dhcp-4.4.3-P1/debian/changelog isc-dhcp-4.4.3-P1/debian/changelog --- isc-dhcp-4.4.3-P1/debian/changelog 2023-10-20 14:16:37.000000000 +0200 +++ isc-dhcp-4.4.3-P1/debian/changelog 2024-01-06 12:56:20.000000000 +0100 @@ -1,3 +1,11 @@ +isc-dhcp (4.4.3-P1-4.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Move dhclient to /usr/sbin and add duplicated diversions (DEP17 P3 M18) + (Closes: #1060089) + + -- Chris Hofstaedtler <z...@debian.org> Sat, 06 Jan 2024 12:56:20 +0100 + isc-dhcp (4.4.3-P1-4) unstable; urgency=low [ Athos Ribeiro ] diff -Nru isc-dhcp-4.4.3-P1/debian/control isc-dhcp-4.4.3-P1/debian/control --- isc-dhcp-4.4.3-P1/debian/control 2023-09-15 18:19:55.000000000 +0200 +++ isc-dhcp-4.4.3-P1/debian/control 2024-01-05 19:29:59.000000000 +0100 @@ -107,6 +107,8 @@ isc-dhcp-client-ddns, Provides: dhcp-client, +Conflicts: + isc-dhcp-client-ddns (<< 4.4.3-P1-4.1), Description: DHCP client for automatically obtaining an IP address This is the Internet Software Consortium's DHCP client. . diff -Nru isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.install isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.install --- isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.install 2022-02-23 10:28:51.000000000 +0100 +++ isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.install 2024-01-05 18:51:22.000000000 +0100 @@ -1 +1 @@ -client/dhclient sbin +client/dhclient usr/sbin diff -Nru isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postinst isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postinst --- isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postinst 1970-01-01 01:00:00.000000000 +0100 +++ isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postinst 2024-01-06 12:56:05.000000000 +0100 @@ -0,0 +1,12 @@ +#!/bin/sh + +set -e + +# DEP17 M18: Duplicate diversion in aliased location /sbin. + +if [ "$1" = "configure" ]; then + # Remove diversion in aliased path, which is only needed for upgrades. + dpkg-divert --package isc-dhcp-client-ddns --remove --no-rename --divert /sbin/dhclient-noddns.usr-is-merged /sbin/dhclient +fi + +#DEBHELPER# diff -Nru isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postrm isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postrm --- isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postrm 2022-02-23 10:28:51.000000000 +0100 +++ isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.postrm 2024-01-05 18:51:22.000000000 +0100 @@ -3,8 +3,8 @@ set -e if [ "$1" = "remove" -o "$1" = "abort-install" -o "$1" = "disappear" ]; then - dpkg-divert --package isc-dhcp-client-ddns --remove \ - --rename --divert /sbin/dhclient-noddns /sbin/dhclient + dpkg-divert --package isc-dhcp-client-ddns --remove \ + --rename --divert /usr/sbin/dhclient-noddns /usr/sbin/dhclient fi #DEBHELPER# diff -Nru isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.preinst isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.preinst --- isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.preinst 2022-02-23 10:28:51.000000000 +0100 +++ isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-ddns.preinst 2024-01-05 19:22:26.000000000 +0100 @@ -2,9 +2,33 @@ set -e -if [ "$1" != "upgrade" ]; then - dpkg-divert --package isc-dhcp-client-ddns --add --rename \ - --divert /sbin/dhclient-noddns /sbin/dhclient -fi +# DEP17 M18: Duplicate diversion in aliased location /sbin. + +case "$1" in + install) + # canonical path; the one we are using going forward. + dpkg-divert --package isc-dhcp-client-ddns --add --rename \ + --divert /usr/sbin/dhclient-noddns /usr/sbin/dhclient + # aliased path, for upgrades. postinst will --remove it. + dpkg-divert --package isc-dhcp-client-ddns --add --rename \ + --divert /sbin/dhclient-noddns.usr-is-merged /sbin/dhclient + + ;; + + upgrade) + dpkg-divert --package isc-dhcp-client-ddns --add --no-rename --divert /usr/sbin/dhclient-noddns /usr/sbin/dhclient + + # convert a pre-existing, aliased diversion. postinst will remove it. + TRUENAME=$(dpkg-divert --truename /sbin/dhclient) + if test "$TRUENAME" != "/sbin/dhclient-noddns.usr-is-merged" -a "$TRUENAME" != "/sbin/dhclient"; then + dpkg-divert --package isc-dhcp-client-ddns --remove --no-rename /sbin/dhclient + dpkg-divert --package isc-dhcp-client-ddns --add --no-rename --divert /sbin/dhclient-noddns.usr-is-merged /sbin/dhclient + if test -e "$DPKG_ROOT$TRUENAME" -o -h "$DPKG_ROOT$TRUENAME"; then + mv "$DPKG_ROOT$TRUENAME" "$DPKG_ROOT/sbin/dhclient-noddns.usr-is-merged" + fi + fi + + ;; +esac #DEBHELPER# diff -Nru isc-dhcp-4.4.3-P1/debian/isc-dhcp-client.install isc-dhcp-4.4.3-P1/debian/isc-dhcp-client.install --- isc-dhcp-4.4.3-P1/debian/isc-dhcp-client.install 2022-11-10 16:38:39.000000000 +0100 +++ isc-dhcp-4.4.3-P1/debian/isc-dhcp-client.install 2024-01-05 18:51:22.000000000 +0100 @@ -1,4 +1,4 @@ -dhclient sbin +dhclient usr/sbin debian/dhclient.conf etc/dhcp diff -Nru isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-udeb.install isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-udeb.install --- isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-udeb.install 2022-02-23 10:28:51.000000000 +0100 +++ isc-dhcp-4.4.3-P1/debian/isc-dhcp-client-udeb.install 2024-01-05 18:51:22.000000000 +0100 @@ -1 +1 @@ -usr/sbin/dhclient sbin +usr/sbin/dhclient usr/sbin diff -Nru isc-dhcp-4.4.3-P1/debian/rules isc-dhcp-4.4.3-P1/debian/rules --- isc-dhcp-4.4.3-P1/debian/rules 2023-09-15 18:19:55.000000000 +0200 +++ isc-dhcp-4.4.3-P1/debian/rules 2024-01-05 18:51:22.000000000 +0100 @@ -8,7 +8,7 @@ DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) LEASE_PATH=/var/lib/dhcp -DHCLIENT_SCRIPT=/sbin/dhclient-script +DHCLIENT_SCRIPT=/usr/sbin/dhclient-script CFLAGS+=-Wall CFLAGS+=-DCALL_SCRIPT_ON_ONETRY_FAIL @@ -108,7 +108,7 @@ # use actual paths rather than undefined variables in man pages sed -e 's|ETCDIR|/etc/dhcp|g' \ -e 's/RUNDIR/\/var\/run/g' \ - -e 's/CLIENTBINDIR/\/sbin/g' \ + -e 's/CLIENTBINDIR/\/usr\/sbin/g' \ -e 's/DBDIR/\/var\/lib\/dhcp/g' \ -i debian/tmp/usr/share/man/man*/* dh_apparmor -pisc-dhcp-client --profile-name=sbin.dhclient