Breaking init swtich: was Re: sysvinit_3.14-2_source.changes ACCEPTED into experimental
Mark Hindley
mark at hindley.org.uk
Mon Feb 24 07:28:33 GMT 2025
On Mon, Feb 24, 2025 at 12:11:09AM +0100, lorenzo wrote:
> as far as I know there is no flag to remove a protected package in apt,
> for example (you can just test in a debootstrap sid chroot)
That is what I thought too. But, based on Thorsten's suggestion,
--allow-remove-essential works:
root at apollo:/# dpkg -s sysvinit-core|grep 'Version\|Protected'
Protected: yes
Version: 3.14-2
root at apollo:/# apt --allow-remove-essential install runit-init sysvinit-core-
Removing 'diversion of /usr/share/man/fi/man8/telinit.8.gz to /usr/share/man/fi/man8/telinit.8.dist by sysvinit-core'
Removing 'diversion of /usr/share/man/fr/man8/init.8.gz to /usr/share/man/fr/man8/init.8.dist by sysvinit-core'
[...]
Preparing to unpack .../runit-init_2.1.2-61_amd64.deb ...
copying invoke-rc.d into invoke-rc.d.real
copying service into service.real
copying invoke-rc.d.8.gz into invoke-rc.d.8.gz.real
copying service.8.gz into service.8.gz.real
Adding 'diversion of /usr/sbin/invoke-rc.d to /usr/sbin/invoke-rc.d.real by runit-init'
Adding 'diversion of /usr/sbin/service to /usr/sbin/service.real by runit-init'
Adding 'diversion of /usr/share/man/man8/invoke-rc.d.8.gz to /usr/share/man/man8/invoke-rc.d.8.gz.real by runit-init'
Adding 'diversion of /usr/share/man/man8/service.8.gz to /usr/share/man/man8/service.8.gz.real by runit-init'
Unpacking runit-init (2.1.2-61) ...
Setting up runit-init (2.1.2-61) ...
So the 'cost' of adding Protected: yes is having to use
--allow-remove-essential and explicitly remove sysvinit-core.
Is that acceptable?
Mark
More information about the Debian-init-diversity
mailing list