Skip to main content

Poll

What init system would you recommend?

openrc
[ 5 ] (35.7%)
runit
[ 7 ] (50%)
s6
[ 2 ] (14.3%)

Total Members Voted: 14

Topic solved
This topic has been marked as solved and requires no further attention.
Topic: A few general questions about the init system (Read 3506 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

A few general questions about the init system

I am thinking about switching from endeavoros to artix and have a few questions:

1. Did the lack of systemd causes problems and how hard are they to fix ?
2. What init system do you recommend

I have a work laptop and a PC for gaming and coding and prefer btrfs.

Re: A few general questions about the init system

Reply #1
1. Did the lack of systemd causes problems and how hard are they to fix ?
On the contrary, it was systemd that caused problems for me, so I switched to Artix.
Quote
2. What init system do you recommend
I only tried extensively s6 and 66, but ultimately it doesn't matter. Just pick one and get familiar with how to manage services under that init system.

Re: A few general questions about the init system

Reply #2
Regarding your second question.

Each init has its strengths and weaknesses.

After we now have in fact 4 init systems in the repos, and I had time to test them all, s6 seems to be the winner eventually as it currently stands.
I still kind of dislike s6 compiled db approach, but its the  fastest of our inits, and atm probably the most "uptotask".

That said, the entry level to handle and probably make your own s6 service is higher than for example openrc, s6 uses execline.

Re: A few general questions about the init system

Reply #3
does wine/proton works without issues?
I need proton for some of my games.

Re: A few general questions about the init system

Reply #4
The lack of systemd contributes to a system which can be kept simple and within the realm of understanding and willfulness to maintain. Not having systemd around has caused no problems, but has made a better functioning machine.

For an init system I have chosen runit. Much because of what is outlined here.

Re: A few general questions about the init system

Reply #5
Wine works fine for me, not used proton, I like OpenRC, it may not be the fastest to boot but that can be a good thing sometimes, and it's fast enough. Also it's the original init here so the implementation is well tested and reliable. You don't see many issues raised on here about OpenRC. For most purposes though, surely all of them are going to start and stop your computer, it's a choice more than a right or wrong situation I think.
Non-systemd was the default before systemd, it is the original situation.

Re: A few general questions about the init system

Reply #6
Regarding your second question.

Each init has its strengths and weaknesses.

After we now have in fact 4 init systems in the repos, and I had time to test them all, s6 seems to be the winner eventually as it currently stands.
I still kind of dislike s6 compiled db approach, but its the  fastest of our inits, and atm probably the most "uptotask".

That said, the entry level to handle and probably make your own s6 service is higher than for example openrc, s6 uses execline.

s6 is by far the fastest init (my vm boots up in 1-2 seconds if I disable lightdm, while others take 3-5 seconds) and I just took a look at https://git.skarnet.org/cgi-bin/cgit.cgi/s6/about/overview.html and making a service seems fairly straight forward, but i don't see a point in the list that 'enables' the service. Do I just have to enable it like any other service with s6-rc-bundle-update ?

And I forgot to mention I have an Nvidia GPU in my PC, do I have to follow extra steps or is installing the drivers from the repo enough ?

Re: A few general questions about the init system

Reply #7
s6 is by far the fastest init (my vm boots up in 1-2 seconds if I disable lightdm, while others take 3-5 seconds) and I just took a look at https://git.skarnet.org/cgi-bin/cgit.cgi/s6/about/overview.html and making a service seems fairly straight forward, but i don't see a point in the list that 'enables' the service. Do I just have to enable it like any other service with s6-rc-bundle-update ?


Note that there is a difference between s6 and s6-rc (the latter uses s6 to function of course). In Artix, s6-rc is the service manager and this is what actually starts up your default set of services. You could, of course, write an s6 service directory but that would not work with any s6-rc tools. s6-rc-bundle-update in particular is merely a script around s6-rc-bundle provided by artix.

Re: A few general questions about the init system

Reply #8
An argument to use systemd you can hear many times is the faster boot process. Formerly i hunted for every second. But since few years I don´t really care about those things. Is it worth to use a special init to save few seconds on boot? For me it isn´t. Looking back for 20-30 years you could turn on PC, going making a cup of coffee and when back the machine was ready to use. So i don´t care about a few seconds of faster booting.
Btw... I´m using OpenRC nearly 10 years. I´m very satisfied with it, very happy and also thankfull there are people keeping it up resisting the mainstream.

Re: A few general questions about the init system

Reply #9
An argument to use systemd you can hear many times is the faster boot process.
While the speed is indeed a false argument, the systemd apologists never mention the shutdown speed. Often systemd hangs on shutdown due to one of its many bugs ("features")...

Re: A few general questions about the init system

Reply #10
While the speed is indeed a false argument, the systemd apologists never mention the shutdown speed. Often systemd hangs on shutdown due to one of its many bugs ("features")...
Thats actually the reason i am searching for an alternative for systemd.

My laptop sometimes fails to shutdown for some reason, so i have to force shutdown

Re: A few general questions about the init system

Reply #11
That said, the entry level to handle and probably make your own s6 service is higher than for example openrc, s6 uses execline.

Oops, I missed this earlier. To be clear, you can actually write an s6-rc service in any scripting language you want. It just needs to have the correct /usr/bin/interpreter line at the top. The official packages use execline 99% of the time since it should be more efficient (non-interactive shell and all) compared to bash. The one catch is that an s6-rc oneshot must be in execline (because of how s6-rc works), but your oneshot script can literally just be a call to some other script in any other language. There's some oneshots in Artix right now that work like this (ex: cryptsetup and binfmt).

Re: A few general questions about the init system

Reply #12
runit probably is the simplest. It also boots up/shuts down fast. s6/s6-rc has more potentials but it spawns a little more processes in your system. I haven't checked s66 on Artix yet but used obarun before, not a big fan. Openrc is also easy to use but a bit too old.

For new comers to systemd-free init systems, I recommend runit, but s6 is my favorite.

Re: A few general questions about the init system

Reply #13
I decided to switch to runit

Re: A few general questions about the init system

Reply #14
I remember when I first learned about systemD.  I was one of the first Gentoo users, really enjoying a totally custom system and how everything just worked.  Then things started getting broken.  Kept seeing "freedesktop" in the errors.  I would learn about this fiasco and looked like I was going to die a slow death.  Then Debian was colonized.  And Arch.  It looked grim until I discovered Artix and everything once again works perfectly with a 0.00 load average and no useless interrupts hijacking the system bus.  My network is quiet once again.  I have never hated Redhat until this all started...  Artix saved my life!