Package: debian-policy Version: 4.0.1.0 Severity: wishlist Hi! A couple of packages with "Important: yes" has just hit unstable (mount, fdisk) -- or rather, _would_ hit unstable had dpkg-gencontrol not silently ignored this field.
The problem is, this field is currently undocumented and unofficial. Support in frontends in Stretch looks good enough, thus I believe there's no reason to avoid using this field in Buster. I've tested apt, dselect, aptitude, synaptic, gnome-packagekit, apper -- only nit is messages talking about "essential", but that's okayish. There is a frontend that doesn't know this field, cupt, but with popcon vote 23, the cross-section of people who 1. try to remove an Important:yes package, 2. use cupt, 3. use Stretch's version of tools to remove a Buster's package, is expected to be nil. On the other hand, dpkg does not know the field. It won't say a word upon removal, and dpkg-gencontrol silently removes it. Currently to build such a package you need a hack like: override_dh_gencontrol: dh_gencontrol sed -e '2i Important: yes' -i debian/${PACKAGE}/DEBIAN/control Thus, some Policy guidance would be nice. Is it legal to use "Important: yes" at this moment? As far as I know, the intended behaviour is to make a package: * easy to not install * hard to remove Ie, it's meant to protect stuff like "init" or "mount" from being removed, while not wasting space on a buildd chroot or a container. Current state of the these packages is: * mount: Important:yes, Depends: path from both systemd and sysvinit-core→initscripts * init: no protection at all Thus obviously "init" wants this to be set. -- System Information: Debian Release: buster/sid APT prefers unstable-debug APT policy: (500, 'unstable-debug'), (500, 'unstable'), (500, 'testing'), (150, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.13.0-rc5-debug-00121-gc6b5a5fd577f (SMP w/6 CPU cores) Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE=C.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) debian-policy depends on no packages. debian-policy recommends no packages. Versions of packages debian-policy suggests: pn doc-base <none> -- no debconf information