Control: reassign -1 sysvinit-core
Control: retitle -1 sysvinit-core lacks Protected: yes

On Wed, May 27, 2020 at 03:14:59PM -0700, Sean Whitton wrote:
> Hello,
> 
> On Sun 22 Sep 2019 at 08:04PM +02, Simon Richter wrote:
> 
> > apt's resolver does not find a working solution for installing both
> > libgtk-3-0 and sysvinit-core, or for installing libgtk-3-0 when
> > systemd-sysv has a negative score in preferences. Aptitude resolves both of
> > these by favouring dbus-x11 over dbus-user-session.
> >
> > When presented manually with this solution, apt accepts it as valid.
> 
> The problematic dependency chain is this:
> 
> libgtk-3-0 -> libgtk-3-common -> dconf-gsettings-backend -> dconf-service ->
>               default-dbus-session-bus | dbus-session-bus
> 
> dbus-x11 Provides: dbus-session-bus, but apt prefers to replace
> sysvinit-core with systemd rather than just install dbus-x11.
> 
> One way to reproduce this problem, in buster or sid:
> 1) clean chroot
> 2) apt-get install sysvinit-core
> 3) apt-get install emacs
> 
> If you install dbus-x11 right before attempting to install Emacs, apt
> will not attempt the init system replacement.

This is solved in --solver 3.0 to the extend that you deny systemd-sysv
from being installed, whether by pin or by specfying systemd-sysv- (or
by marking it manually installed [unless you set APT::Solver::RemoveManual]).

If you pin a package down, e.g. systemd-sysv, this will automatically
prevent any package depending on it recursively, from being installed,
and the 3.0 solver falls back to the next alternative if the previous
one is unsatisfiable.

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.
-- 
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer                              i speak de, en

Attachment: signature.asc
Description: PGP signature

Reply via email to