]> www.opopop.net Git - reminder/blobdiff - Avoid_systemd_on_Debian_Jessie_with_Mate.mdwn
attachment upload
[reminder] / Avoid_systemd_on_Debian_Jessie_with_Mate.mdwn
index 03b156c37b2e3fd1be83200d677154d9fc7bac6b..005356082a8bbe12eeddf9cca434de0c94d625e4 100644 (file)
@@ -78,7 +78,7 @@ to install Mate as a task [^2].
 
 [^2]: And if Avahi-daemon is no more installed, the default for Mate
 is still to use PulseAudio. You can get rid of the PulseAudio daemon
-by replacing package *mate-settings daemon-pulse* by package
+by replacing package *mate-settings-daemon-pulse* by package
 *mate-settings-daemon-gstream*, then suppressing package *pulseaudio*.
 
 The installed systemd related packages are then the following:
@@ -95,12 +95,12 @@ The installed systemd related packages are then the following:
 The mandatory dependencies figure is especially important for
 *libsystemd0*, *libudev1* and *udev*. *libsystemd0* is mostly used to
 ensure systemd is present, and the additional functionality offered in
-that case is (for now...) limited. The lack of functionality is
-probably higher if *libudev1* is present but not *udev*, as we have
-been living with *udev* since a long time.
+that case is (for now...) limited. 
 
-So *udev* development taken over by systemd is the real trouble here;
-but more about that in the conclusion.
+We have been living with *udev* since a long time and it is needed by 
+*initramfs-tools* and several desktop packages, so it is difficult to 
+get rid of it. The fact that *udev* development was taken over by 
+systemd is the real trouble here; but more about that in the conclusion.
 
 ## Debian Jessie with Mate and SysV init
 
@@ -123,13 +123,15 @@ In addition, new packages *systemd-shim*, *cgmanager* (it launches a
 daemon) and some dependencies have been installed on your system.
 
 The following figure shows the dependencies between some packages in
-our new configuration. *mate-power-manager* may not be an installed
-package on a desktop machine.
+our new configuration.
 
 [[!img dep-systemd.png size=600x]]
 
 ## Debian Jessie with Mate, SysV init and *consolekit*
 
+*mate-power-manager* may not be installed on your host (it's mostly a laptop thing). 
+In that case, you can skip that section.
+
 Exploring the packages dependencies in
 [aptitude](https://wiki.debian.org/Aptitude) gives you the following
 alternative set of packages dependencies:
@@ -152,11 +154,7 @@ will recover eventually that functionality.
 ## Debian Jessie with Mate, SysV init and a modified *libpam-systemd*
 
 As *libpam-systemd* is the only package left depending on *systemd*,
-the idea is here to modify *libpam-systemd* to:
-
-1. Restore resume/suspend functionality if it's lost
-2. Make the new package depend no more on package *systemd*, so you
-   can get rid of it
+the idea is here to modify *libpam-systemd* to get rid of it.
 
 To do that, I took the Debian systemd source, which I modified to
 build a new package *libpam-systemd*. The main steps were the
@@ -174,20 +172,20 @@ contradicts the claim to systemd "modularity").
 For your convenience, all of the source files and the .deb package
 (for i386) are here:
 
- [[systemd_215-17+deb8u2bu1.dsc]]
+[[systemd_215-17+deb8u7bu1.dsc]]
 
-[[systemd_215-17+deb8u2bu1_i386.changes]]
+[[systemd_215-17+deb8u7bu1.tar.gz]]
 
-[[systemd_215-17+deb8u2bu1.tar.gz]]
+[[systemd_215-17+deb8u7bu1_i386.changes]]
 
-[[libpam-systemd_215-17+deb8u2bu1_i386.deb]]
+[[libpam-systemd_215-17+deb8u7bu1_i386.deb]]
 
 If you have installed the needed development packages, it's easy to
-rebuild file "libpam-systemd_215-17+deb8u2bu1_i386.deb" with these
+rebuild file "libpam-systemd_215-17+deb8u7bu1_i386.deb" with these
 simple commands:
 
-    # the 3 source files have to be downloaded in your current working directory
-    dpkg-source -x systemd_215-17+deb8u2bu1.dsc
+    # the 2 source files have to be downloaded in your current working directory
+    dpkg-source -x systemd_215-17+deb8u7bu1.dsc
     cd systemd-215
     dpkg-buildpackage -rfakeroot
     cd ..
@@ -196,8 +194,8 @@ To install it, you will need some local package repository. An easy
 method to do it is to run:
 
     mkdir -p ~/my-repo/dists/jessie/main/binary-i386
-    mv libpam-systemd_215-17+deb8u2bu1_i386.deb ~/my-repo/
-    dpkg-scanpackages ~/my-repo /dev/null | gzip > ~/my-repo/dists/jessie/main/binary-i386/Packages.gz
+    mv libpam-systemd_215-17+deb8u7bu1_i386.deb ~/my-repo/
+    (cd ~/my-repo; dpkg-scanpackages . /dev/null | gzip > dists/jessie/main/binary-i386/Packages.gz)
 
 Notice that "dpkg-scanpackages" is available through package
 *dpkg-dev*.
@@ -223,7 +221,7 @@ not make that software vanish from the universe, like not saying
 ## Final remarks
 
 Installing the modified package *libpam-systemd* proposed above will
-alow you to get rid of package *systemd*, while keeping your Mate
+allow you to get rid of package *systemd*, while keeping your Mate
 desktop fully functional.
 
 On your computer there will be only packages *libpam-systemd*,
@@ -240,3 +238,10 @@ long time, so it has penetrated deep in our Debian systems. Someone is
 working on an independent replacement for *udev* called
 [*vdev*](https://github.com/jcnelson/vdev). The work seems promising,
 and I will at one point experience his work.
+
+For a more organized solution to avoid systemd in Debian, you can also 
+look at the [Devuan distribution](https://devuan.org/), a fork of Debian; 
+*vdev* is here also a candidate for *udev* replacement.
+
+Meanwhile, the last Devuan release has shipped with [*eudev*](https://wiki.gentoo.org/wiki/Eudev), 
+a *udev* fork pushed mainly by Gentoo.