Julian, Many thanks for this.
On Sun, Feb 16, 2025 at 12:23:01PM +0100, Julian Andres Klode wrote: > That being said, being able to switch init systems without a pin is > a bug in the init system; init systems should set the Protected: yes > field so that they cannot be removed without explicitly running > > apt remove --allow-remove-essential sysvinit-core > apt install/upgrade/... --allow-remove-essential sysvinit-core- > > (note that starting with 2.3.12/stable; --allow-remove-essential > only applies to arguments; the solver itself cannot decide to > remove essential packages anymore) > > As such I am reassigning this bug to sysvinit-core so it can gain > the appropriate flag. I don't see a problem with adding this. However, I have read deb-control(5) and the documentation relating to it and when it is required is quite sparse. I think this ought to be documented more clearly, perhaps in Policy? A quick search indicates that the packages currently utilising this flag is a somewhat disparate list[1]: login, reform-tools, various flavours of gcc, init-system-helpers, grub-*-signed... Mark [1] https://codesearch.debian.net/search?q=Protected%3A+yes+path%3Adebian%2Fcontrol&literal=0