Files
finit/contrib/void
Joachim Wiberg ac07d3bac7 contrib: run klogd in same cgroup as syslogd (same .conf file)
These two BusyBox daemon's run in concert so it makes sense they also
share the same cgroup.  In Finit that means sharing the same .conf file.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2021-04-18 06:17:40 +02:00
..
…
2017-10-18 21:48:58 +02:00
…

HowTo: Finit on Void Linux

HowTo use Finit to boot an Void Linux system. It is assumed that the user has already installed make, a compiler, C library header files, and other tools needed to build a GNU configure based project.

To start with you need to first install libuEv and libite. They default to install to /usr/local, but unlike Debian and Ubuntu based distros, Void's pkg-config does not look for libraries and header files there. So the PKG_CONFIG_LIBDIR environment variable must be used, or change the install prefix to /usr.

The bundled build.sh script can be used to configure and build finit:

void:~# cd finit
void:~/finit# ./contrib/void/build.sh

Then run the install.sh script to install all necessary files, including the sample finit.conf and finit.d/*.conf files. More on that below.

void:~/finit# ./contrib/void/install.sh

The install script is (supposed to be) non-destructive by default, you have to answer Yes twice to set up Finit as the system default init. Pay close attention to the last question:

*** Install Finit as the system default Init (y/N)?

If you answer No, simply by pressing enter, you can change the symlink yourself later on, to point to finit instead of runit:

void:~/finit# cd /sbin
void:/sbin# rm init
void:/sbin# ln -s finit init

Another option is to change the Grub defaults, in /etc/default/grub:

#GRUB_CMDLINE_LINUX_DEFAULT="loglevel=4 slub_debug=P page_poison=1"
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=4 init=/sbin/finit"

Alternatively, you can simply modify the default Grub entry at boot, or set up an alternative Grub entry to include:

linux /boot/vmlinuz-X.YY.Z ... init=/sbin/finit

If you modify a Grub configuration file, remember to run:

update-grub

Before rebooting, make sure to set up a /etc/finit.conf, and /etc/finit.d/ for your services. Samples are included in this directory. Notice the symlinks in /etc/finit.d/, which can be managed by the operator at runtime using initctl enable SERVICE. You can also use a standard /etc/rc.local for one-shot tasks and initialization like keyboard language etc.