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

Re: [draft] Draft text on Init Systems GR



On  Sa 09 Nov 2019 19:09:35 CET, Holger Levsen wrote:

On Sat, Nov 09, 2019 at 06:08:54PM +0100, Simon Richter wrote:
(Option 1.1.1)

Automated variant transitions shall be supported.

[Rationale: moving from systemd to sysvinit is currently an involved manual
process, so unavailable to anyone not already skilled in Unix
administration, creating an artificial barrier.]

please clarify what you mean by this. I understand that you claim that
"apt-get install -y sysvinit-core" is hard (I disagree somewhat, but I
also think that those for this is hard shouldn't care) but anyway, what
do you envision how 'automated variant transitions' should be done? A
click in some UI?

(This is a serious question and the reason i'm sending this mail. I'm
really curious as I think
https://wiki.debian.org/systemd#Installing_without_systemd is pretty
clear and easy.)


The problem here is this (queried on a buster system):

```
root@minobo:~# apt-rdepends -r systemd
systemd
  Reverse Depends: 389-ds-base (1.4.0.21-1)
  Reverse Depends: apticron-systemd (1.2.1)
  Reverse Depends: arctica-greeter (0.99.1.3-1)
  Reverse Depends: ayatana-indicator-session (0.4.3-2)
  Reverse Depends: biometric-auth (0.9.61-2)
  Reverse Depends: biometric-utils (0.9.61-2)
  Reverse Depends: btrfsmaintenance (0.4.2-1)
  Reverse Depends: clevis-systemd (11-2)
  Reverse Depends: cloudprint-service (0.14-12)
  Reverse Depends: dbus-user-session (1.12.16-1)
  Reverse Depends: fakemachine (0.0~git20181105.9316584-2)
  Reverse Depends: fcgiwrap (1.1.0-12)
  Reverse Depends: iio-sensor-proxy (2.4-2)
  Reverse Depends: kde-config-systemd (>= 1.2.1-3)
  Reverse Depends: libbiometric-dev (0.9.61-2)
  Reverse Depends: libbiometric0 (0.9.61-2)
  Reverse Depends: liblxc1 (1:3.1.0+really3.0.3-8)
  Reverse Depends: libnss-resolve (= 241-7~deb10u1)
  Reverse Depends: libnss-systemd (= 241-7~deb10u1)
  Reverse Depends: libpam-systemd (= 241-7~deb10u1)
  Reverse Depends: libreswan (3.27-6)
  Reverse Depends: live-config-systemd (5.20190519)
  Reverse Depends: local-apt-repository (0.6)
  Reverse Depends: ltsp-client (>= 5.18.12-3)
  Reverse Depends: mate-power-manager (1.20.3-2)
  Reverse Depends: netplan.io (>= 0.95-2)
  Reverse Depends: ntpsec-ntpviz (1.1.3+dfsg1-2)
  Reverse Depends: oddjob (0.34.4-1)
  Reverse Depends: open-infrastructure-system-config (20190202-1)
  Reverse Depends: openvpn-systemd-resolved (>= 1.2.7-1)
  Reverse Depends: plymouth (>= 0.9.4-1.1)
  Reverse Depends: python-ipalib (4.7.2-3)
  Reverse Depends: rasdaemon (0.6.0-1.2)
  Reverse Depends: snapd (2.37.4-1+b1)
  Reverse Depends: sogo (4.0.7-1)
  Reverse Depends: systemd-container (= 241-7~deb10u1)
  Reverse Depends: systemd-coredump (= 241-7~deb10u1)
  Reverse Depends: systemd-journal-remote (= 241-7~deb10u1)
  Reverse Depends: systemd-tests (= 241-7~deb10u1)
  Reverse Depends: tomcat9 (>= 9.0.16-4)
  Reverse Depends: ukui-power-manager (1.1.2-1)
  Reverse Depends: vblade (24-3)
  Reverse PreDepends: systemd-sysv (241-7~deb10u1)
[...]
```

Output has been shortened to the first layer of the dependency tree.

```
root@minobo:~# apt-rdepends -r systemd | wc -l
Reading package lists... Done
Building dependency tree
Reading state information... Done
6598
```

The previous command would print out 6598 lines, in fact.


We have several packages that hard-depend on systemd. IMHO, all of those should be investigated, if such a hard dependency could not be avoided. (In fact, arctica-greeter and mate-power-manager could indeed live without it). For iio-proxy-sensor, I just did an NMU that dropped the hard systemd dependency.


On my local notebook (on buster), a switch to sysvinit-core would to this...

```
root@minobo:~# apt-get install sysvinit-core
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required: accountsservice appstream apt-config-icons apt-config-icons-large argyll bluefish-data bluefish-plugins bolt brasero-cdrkit breeze-cursor-theme caja-common catdoc cinnamon-common cinnamon-control-center-data cinnamon-screensaver cinnamon-screensaver-x-plugin cinnamon-settings-daemon cjs colord-data dvd+rw-tools evemu-tools evtest gir1.2-abi-3.0 gir1.2-cinnamondesktop-3.0 gir1.2-clutter-gst-3.0 gir1.2-cmenu-3.0 gir1.2-cvc-1.0 gir1.2-dazzle-1.0 gir1.2-gdm-1.0 gir1.2-gnomebluetooth-1.0 gir1.2-grilo-0.3 gir1.2-gsf-1 gir1.2-keybinder-3.0 gir1.2-mediaart-2.0 gir1.2-meta-muffin-0.0 gir1.2-mutter-3 gir1.2-packagekitglib-1.0 gir1.2-pluma-1.0 gir1.2-xapp-1.0 gnome-session-bin gnome-session-common growisofs hwdata iso-flags-png-320x240 k3b-data kate5-data katepart kde-cli-tools-data kde-style-qtcurve-qt4 kded5 kdelibs-bin kdoctools kdoctools5 khotkeys-data kio-extras-data kpackagetool5 ksysguard-data ksysguardd ktexteditor-data kwin-data kwrited libappstream4 libappstreamqt2 libblockdev-fs2 libblockdev-loop2 libblockdev-part-err2 libblockdev-part2 libblockdev-swap2 libblockdev-utils2 libblockdev2 libcheese-gtk25 libcheese8 libcinnamon-control-center1 libcinnamon-desktop4 libcinnamon-menu-3-0 libcjs0 libcolord-gtk1 libcolorhug2 libcscreensaver0 libcvc0 libdmtx0b libdvbv5-0 libeditorconfig0 libepub0 libevemu3 libgdm1 libgpgme++2v5 libgps23 libgrantlee-templates5 libhfstospell10 libkactivities6 libkatepartinterfaces4 libkde3support4 libkdeclarative5 libkdecorations2-5v5 libkdecorations2private6 libkdesu5 libkemoticons4 libkf5activitiesstats1 libkf5archive5 libkf5attica5 libkf5auth-data libkf5baloo5 libkf5balooengine5 libkf5bluezqt-data libkf5bluezqt6 libkf5bookmarks-data libkf5calendarevents5 libkf5codecs-data libkf5codecs5 libkf5completion-data libkf5completion5 libkf5configgui5 libkf5configwidgets-data libkf5crash5 libkf5dbusaddons-bin libkf5dbusaddons-data libkf5dbusaddons5 libkf5declarative-data libkf5dnssd-data libkf5dnssd5 libkf5doctools5 libkf5emoticons-bin libkf5emoticons-data libkf5emoticons5 libkf5filemetadata-bin libkf5filemetadata-data libkf5filemetadata3 libkf5globalaccel-bin libkf5globalaccel-data libkf5globalaccel5 libkf5globalaccelprivate5 libkf5guiaddons5 libkf5holidays-data libkf5holidays5 libkf5i18n-data libkf5i18n5 libkf5iconthemes-data libkf5idletime5 libkf5itemviews-data libkf5itemviews5 libkf5jobwidgets-data libkf5jobwidgets5 libkf5js5 libkf5jsapi5 libkf5jsembed-data libkf5jsembed5 libkf5kcmutils-data libkf5kdelibs4support-data libkf5kexiv2-15.0.0 libkf5khtml-data libkf5kiontlm5 libkf5kirigami2-5 libkf5networkmanagerqt6 libkf5newstuff-data libkf5notifications-data libkf5notifications5 libkf5notifyconfig-data libkf5package-data libkf5package5 libkf5parts-data libkf5people-data libkf5people5 libkf5peoplebackend5 libkf5peoplewidgets5 libkf5prison5 libkf5pty-data libkf5pty5 libkf5service-bin libkf5service-data libkf5service5 libkf5solid5 libkf5solid5-data libkf5sonnet5-data libkf5sonnetcore5 libkf5sonnetui5 libkf5su-bin libkf5su-data libkf5su5 libkf5syntaxhighlighting-data libkf5syntaxhighlighting5 libkf5sysguard-data libkf5textwidgets-data libkf5threadweaver5 libkf5wallet-data libkf5wallet5 libkf5waylandserver5 libkf5widgetsaddons-data libkf5widgetsaddons5 libkf5xmlgui-bin libkf5xmlgui-data libkf5xmlrpcclient-data libkfile4 libkfontinst5 libkfontinstui5 libkhtml5 libkjsapi4 libkjsembed4 libkmediaplayer4 libknotifyconfig4 libkntlm4 libkpty4 libkrosscore4 libksgrd7 libktexteditor4 libkwalletbackend5-5 libkwineffects11 libkwinglutils11 libkwinxrenderutils11 libkworkspace5-5 libmozjs-52-0 libmusicbrainz5-2 libndp0 libnemo-extension1 libnss-myhostname libntrack-qt4-1 libntrack0 libnumber-range-perl liboobs-1-5 libopenobex2 liboxygenstyleconfig5-5 libpackagekitqt5-1 libpath-iterator-rule-perl libpeas-1.0-python2loader libphonon4qt5-4 libplasma-geolocation-interface5 libpod-constants-perl libpolkit-backend-1-0 libpowerdevilui5 libprocesscore7 libqalculate20 libqalculate20-data libqmobipocket2 libqt5multimedia5-plugins libqt5texttospeech5 libqtcurve-utils2 libregexp-pattern-license-perl libscim8v5 libstring-copyright-perl libstring-escape-perl libsysstat-qt5-0 libteamdctl0 libudisks2-0 libunique-1.0-0 libvirt-clients libvoikko1 libxcb-composite0 libxcb-damage0 libxcb-dpms0 libxcb-record0 lxqt-panel-l10n lxqt-policykit-l10n lxqt-powermanagement-l10n mate-applets-common mate-backgrounds mate-control-center-common mate-desktop mate-icon-theme-faenza mate-media mate-media-common mate-panel-common mate-polkit-common mate-power-manager-common mate-settings-daemon-common mate-system-monitor mate-system-monitor-common mate-themes mate-user-guide mate-user-share-common mobile-broadband-provider-info modem-manager-gui-help mousetweaks nautilus-data nemo-data ntrack-module-libnl-0 obex-data-server oxygen-sounds phonon4qt5 phonon4qt5-backend-vlc plasma-desktop-data plasma-discover-common pluma pluma-common powerdevil-data python-gobject python-gst-1.0 python-gwebsockets python3-psutil python3-pyinotify python3-software-properties python3-xapp qdbus-qt5 qml-module-org-kde-bluezqt qml-module-org-kde-kholidays qml-module-org-kde-kirigami2 qml-module-org-kde-solid qml-module-qtmultimedia qml-module-qtquick-controls-styles-breeze sni-qt software-properties-common software-properties-kde sonnet-plugins sugar-chat-activity sugar-icon-theme sugar-imageviewer-activity sugar-jukebox-activity sugar-log-activity sugar-read-activity sugar-terminal-activity sugar-themes sugar-write-activity system-tools-backends
Use 'apt autoremove' to remove them.
Suggested packages:
  bootlogd
The following packages will be REMOVED:
aptdaemon arctica-greeter arctica-greeter-theme-debian-buster arctica-greeter-theme-debian-futureprototype bluedevil bluefish brasero breeze caja caja-admin caja-dropbox caja-rename chrome-gnome-shell cinnamon cinnamon-control-center colord dbus-user-session drkonqi frameworkintegration gdm3 gnome-color-manager gnome-control-center gnome-disk-utility gnome-music gnome-session gnome-settings-daemon gnome-shell gnome-sushi gnome-system-tools gvfs gvfs-backends gvfs-daemons gvfs-fuse k3b kactivitymanagerd kaffeine kate kde-cli-tools kde-config-gtk-style kde-config-screenlocker kde-config-sddm kde-runtime kde-style-breeze kde-style-breeze-qt4 kde-style-oxygen-qt5 kde-style-qtcurve-qt5 kdeconnect kdelibs5-plugins kgamma5 khelpcenter khotkeys kinfocenter kinit kio kio-extras kmenuedit konsole konsole-kpart kpackagelauncherqml kscreen ksshaskpass ksysguard ktexteditor-katepart kwalletmanager kwin-common kwin-style-breeze kwin-x11 libcolorcorrect5 libk3b7 libk3b7-extracodecs libkf5auth5 libkf5bookmarks5 libkf5cddb5 libkf5configwidgets5 libkf5declarative5 libkf5iconthemes-bin libkf5iconthemes5 libkf5kcmutils5 libkf5kdelibs4support5 libkf5kdelibs4support5-bin libkf5khtml-bin libkf5khtml5 libkf5kiocore5 libkf5kiofilewidgets5 libkf5kiogui5 libkf5kiowidgets5 libkf5newstuff5 libkf5newstuffcore5 libkf5notifyconfig5 libkf5parts-plugins libkf5parts5 libkf5plasma5 libkf5plasmaquick5 libkf5quickaddons5 libkf5runner5 libkf5style5 libkf5sysguard-bin libkf5texteditor-bin libkf5texteditor5 libkf5textwidgets5 libkf5wallet-bin libkf5xmlgui5 libkf5xmlrpcclient5 libkscreenlocker5 libksignalplotter7 libkwin4-effect-builtins1 libokular5core8 liboxygenstyle5-5 libpam-systemd libpolkit-gtk-mate-1-0 libpolkit-qt-1-1 libpolkit-qt5-1-1 libpowerdevilcore2 libprocessui7 libtaskmanager6 libvirt-daemon-system libweather-ion7 lightdm lxde lxde-core lxpolkit lxqt lxqt-core lxqt-panel lxqt-policykit lxqt-powermanagement lxsession lxsession-logout mate-applet-brisk-menu mate-applets mate-control-center mate-desktop-environment mate-desktop-environment-core mate-indicator-applet mate-indicator-applet-dbgsym mate-panel mate-polkit mate-polkit-bin mate-power-manager mate-settings-daemon mate-settings-daemon-dev mate-system-tools mate-tweak mate-user-share milou modem-manager-gui nautilus nemo nemo-fileroller network-manager network-manager-gnome network-manager-openvpn network-manager-openvpn-gnome network-manager-pptp network-manager-pptp-gnome network-manager-strongswan network-manager-vpnc network-manager-vpnc-gnome okular openbox-lxde-session packagekit packagekit-tools plasma-desktop plasma-discover plasma-framework plasma-integration plasma-pa plasma-workspace policykit-1 policykit-1-gnome polkit-kde-agent-1 powerdevil python-jarabe qml-module-org-kde-draganddrop qml-module-org-kde-kcm qml-module-org-kde-kconfig qml-module-org-kde-kcoreaddons qml-module-org-kde-kio qml-module-org-kde-kirigami qml-module-org-kde-kquickcontrols qml-module-org-kde-kquickcontrolsaddons qml-module-org-kde-kwindowsystem qml-module-org-kde-qqc2desktopstyle qml-module-org-kde-runnermodel sugar-pippy-activity
  sugar-session systemd-sysv systemsettings udisks2 user-manager veyon-master
The following NEW packages will be installed:
  sysvinit-core
0 upgraded, 1 newly installed, 191 to remove and 40 not upgraded.
Need to get 147 kB of archives.
After this operation, 356 MB disk space will be freed.
Do you want to continue? [Y/n]
```

At times of Debian jessie, sysvinit-core was a drop-in replacement for systemd-sysv, IIRC no removal of other packages would occur back then.

I second the statement, that it's not that simple anymore, these days, to switch back to sysvinit-core. I heavily depends on the package potpourie you have on the machine.

Mike
--

DAS-NETZWERKTEAM
c\o Technik- und Ökologiezentrum Eckernförde
Mike Gabriel, Marienthaler str. 17, 24340 Eckernförde
mobile: +49 (1520) 1976 148
landline: +49 (4351) 850 8940

GnuPG Fingerprint: 9BFB AEE8 6C0A A5FF BF22  0782 9AF4 6B30 2577 1B31
mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de

Attachment: pgpUX_XoMmk7i.pgp
Description: Digitale PGP-Signatur


Reply to: