Hello folks,
[lintian folks, see last paragraph.]
I raised this point a while ago (lvmcfg review, slightly incorrect
since that source package actually ships two udebs, and no debs); and
finally found some time to look into it: #DEBHELPER# in udebs is a bit
of a no-go.
/usr/bin/dh_installdeb has:
| if (is_udeb($package)) {
| # For udebs, only do the postinst, and no #DEBHELPER#.
| # Udebs also support menutest and isinstallable scripts.
| foreach my $script (qw{postinst menutest isinstallable}) {
| my $f=pkgfile($package,$script);
| if ($f) {
| doit("install", "-o", 0, "-g", 0, "-m", 755,
| $f, "$tmp/DEBIAN/$script");
| }
| }
| next;
| }
Meaning lvmcfg's #DEBHELPER# in postinst can't work. I'd go for
removing it entirely as there was no real motivation for its addition.
Under packages/ we have currently:
| $ grep -l '#DEBHELPER#' */debian/*.p* 2>/dev/null
| cdebconf/debian/cdebconf.postinst
| cdebconf/debian/cdebconf.preinst
| console-setup/debian/console-setup-mini.postinst
| console-setup/debian/console-setup.postinst
| console-setup/debian/console-setup.postrm
| console-setup/debian/console-setup-udeb.postinst
| console-setup/debian/keyboard-configuration.postinst
| console-setup/debian/keyboard-configuration.postrm
| debian-installer-launcher/debian/debian-installer-launcher.postinst
| flash-kernel/debian/flash-kernel.postinst
| installation-report/debian/installation-report.postinst
| installation-report/debian/installation-report.postrm
| installation-report/debian/installation-report.preinst
| user-setup/debian/user-setup.postinst
Of those, the only non-udeb package AFAICS is console-setup-udeb. This
one doesn't exhibit this issue since there's some preprocessing
involved in src:console-setup (debian/preprocessor):
| case "$1" in
| --udeb)
| mini=1
| udeb=1
| ;;
| …
| if [ "$mini" ]; then
| sed -e 's/^[ \t]*//' -e 's/^#[^!].*//' -e 's/^#$//' <"$file" >$tmp \
| && grep . $tmp >"$file"
| fi
Lintian folks, maybe it would be nice to have some check to detect
unexpanded #DEBHELPER# tokens in maintainer scripts (as shipped in
binary packages)?
Mraw,
KiBi.
Attachment:
signature.asc
Description: Digital signature