Bug#940034: libelogind0: replacing a core system library and conflicting against the default init considered harmful

Mark Hindley mark at hindley.org.uk
Sat Sep 28 19:54:28 BST 2019


On Fri, Sep 27, 2019 at 03:39:43PM +0200, Julien Cristau wrote:
> On Fri, Sep 27, 2019 at 09:19:10AM -0400, Sam Hartman wrote:
> So one thing I think we should ensure is we don't end up uninstalling
> systemd without an explicit user choice.

Julien,

I appreciate that you are suggesting some additional protection is required
against this. However, it appears that the way APT handles the current
dependencies already require explicit user choice to be made.

Testing on a basic sid desktop install with systemd as pid 1 I get the following
behaviour:

 - apt install libelogind0

   Generates the apt "You are about to do something potentially harmful.  To
   continue type in the phrase 'Yes, do as I say!'" warning.

 - apt install elogind
 - apt install libpam-elogind

   For both of these APT fails to find a solution.

   The only way make it find an solution is to explicitly request installation
   of sysvinit-core such as 'apt install libpam-elogind sysvinit-core'

So I am not sure any changes are required in order to enforce explicit
instruction before attempting removal of systemd.

Is this sufficient?

Mark
-------------- next part --------------
test at DebianUnstable: ~test at DebianUnstable:~$ dpkg -l systemd*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name              Version      Architecture Description
+++-=================-============-============-=======================================
ii  systemd           242-7        amd64        system and service manager
un  systemd-container <none>       <none>       (no description available)
un  systemd-shim      <none>       <none>       (no description available)
ii  systemd-sysv      242-7        amd64        system and service manager - SysV links
test at DebianUnstable: ~test at DebianUnstable:~$ sudo apt-get install libelogind0
Reading package lists... Done
Building dependency tree... 
Reading state information... Done
The following packages were automatically installed and are no longer required:
  acl avahi-daemon colord-data gir1.2-matemenu-2.0 gnome-accessibility-themes gnome-themes-extra gnome-themes-extra-data gtk2-engines-pixbuf libargon2-1 libavahi-core7
  libayatana-appindicator3-1 libayatana-ido3-0.4-0 libayatana-indicator3-7 libcolorhug2 libcryptsetup12 libdaemon0 libdbusmenu-glib4 libdbusmenu-gtk3-4 libgd3
  libgphoto2-6 libgphoto2-l10n libgphoto2-port12 libgusb2 libieee1284-3 libindicator3-7 liblightdm-gobject-1-0 libmate-menu2 libmate-panel-applet-4-1
  libmateweather-common libmateweather1 libnss-mdns libplymouth4 librda-common librda0 libsane libsane-common libsnmp-base libsnmp30 lightdm-gtk-greeter mate-menus
  mate-panel-common mate-polkit-common menu menu-xdg sane-utils update-inetd
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  colord init libnss-systemd libpam-systemd libsystemd0 lightdm mate-panel mate-polkit plymouth plymouth-label policykit-1 policykit-1-gnome systemd systemd-sysv xiccd
The following NEW packages will be installed:
  libelogind0
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
  init systemd-sysv (due to init)
0 upgraded, 1 newly installed, 15 to remove and 0 not upgraded.
Need to get 224 kB of archives.
After this operation, 20.1 MB disk space will be freed.
You are about to do something potentially harmful.
To continue type in the phrase 'Yes, do as I say!'
 ?] n
Abort.
test at DebianUnstable: ~test at DebianUnstable:~$ sudo apt-get install elogind
Reading package lists... Done
Building dependency tree...
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 elogind : Depends: libelogind0 (= 241.3-1+debian1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.


More information about the Debian-init-diversity mailing list