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

Re: Debian Developers Have Been Listening!

On Fri, May 19, 2017 at 1:48 AM, Patrick Bartek <nemommxiv@gmail.com> wrote:
> A while ago, I initiated the "If Linux Is About Choice ..." thread
> about why there is no choice of inits during an initial install.
> Since that time, I've tested several systemd-less distros[1] as well as
> Stretch as replacements for my aging Wheezy system.  With Stretch my
> plan was to see if I could replace systemd as the init without removing
> it just leaving its components (some or all as necessary) to meet
> dependencies without it breaking the system


> That way there would be no
> need for third party repos or jumping through hoops to keep a
> systemd-less working. I figured it would be a somewhat difficult, time
> consuming process. However, I made a discovery during these tests: The
> Debian developers had already done it for me.  They made switching from
> systemd as the init to sysvinit or runit easy just by issuing a couple
> commands. Here's what you do.

I thought that information came out several times in the thread you mention
having started -- that it was possible to install the base system, then
disable and remove the main systemd component, just leaving some
of the pieces that have been picked up as dependencies by other

Maybe the discussion of using more advanced techniques to keep from
ever installing systemd in the first place hid the information about the
removal approach.

If so, it would seem to be worthwhile to have this separate thread, as well.

> First, install Stretch as you normally would, systemd, et al.  I chose
> LXDE for the GUI as it has no direct systemd dependencies, and it uses
> Openbox as the window manager which I normally use in lieu of a desktop
> environment anyway.  This was quicker and easier testing-wise than
> starting with a terminal-based system as I normally would, and building
> up from there.
> To switch to sysvinit, as root:
>   apt-get install sysvinit-core
> and reboot.  Done!  systemd components are still on the hard drive,
> except systemd-sysv has been removed.  There is also no systemd
> supervision either as far as I can tell.
> To switch to runit-init is an easy 2-step process.  Do a standard
> install as before.[2]  Then add runit supervision first before
> installing runit-init. As root:
>   apt-get install runit-systemd
> reboot, then
>   apt-get install runit-init
> Reboot. Done!  The latter command removes systemd-sysv during the
> install.
> These new init set ups survive apt-get upgrade or dist-upgrade even if
> systemd components are upgraded.  Systemd as init does not get
> reactivated.  Tested and verified.  I can find no systemd pinning
> either.
> I now have two Stretch systems running in VirtualBox.  One a full LXDE
> desktop using runit for both the init and supervision, and the other
> with just Openbox and lxpanel as the GUI, and sysvinit and runit for
> supervison. No problems at all with either.
> B
> [1] AntiX, MX Linux, SalixOS and Void Linux.
> [2] With either above options, you can't go from an init other than
> systemd to another init.  apt-get install <chosen init> fails due to
> systemd-sysv being missing.

Thanks for the report.

Joel Rees

One of these days I'll get someone to pay me
to design a language that combines the best of Forth and C.
Then I'll be able to leap wide instruction sets with a single #ifdef,
run faster than a speeding infinite loop with a #define,
and stop all integer size bugs with a bare cast.

More of my delusions:

Reply to: