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

Bug#872587: debian-policy: please document "Important: yes"



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

Reply to: