site  contact  subhomenews

Minit: alternative to init

April 09, 2012 — BarryK
I have implemented Minit in Puppy. This is a process-1 service manager alternative to the Busybox 'init' system. Minit does not use /etc/inittab, it has its own /etc/minit directory with a quite different structure.

Minit home page:
http://www.fefe.de/minit/

I have tested in Racy, booting off a USB Flash drive, and created a PET package. The PET installs and co-exists with the Busybox init system. At bootup, if /sbin/minit is detected, then Minit is used. If the PET is uninstalled then everything goes back to init, as before.

...although I haven't thought through what will happen if 'minit' is deleted while in use. I didn't really envisage it being uninstalled, more a choice made in Woof when building a Puppy.

The PET, compiled statically (16KB):
http://distro.ibiblio.org/quirky/pet_packages-common/minit-0.10-i486.pet

There is also a documentation PET, that as well as man files also has a couple of intro PDFs (159KB):
http://distro.ibiblio.org/quirky/pet_packages-common/minit_DOC-0.10-i486.pet

The catch: Minit needs this very latest Woof, with modifications to some scripts:
http://bkhome.org/fossil/woof2.cgi/info/6ddf124baf

See also the previous commit:
http://bkhome.org/archive/blog2/201204/do-not-delete-tmp-at-shutdown.html

Will I use Minit in a future Puppy? Hmmm, I don't know if it is really giving me anything extra that I am already doing with Busybox init. Potentially, it could be used to provide more logical structure to the provision of services at bootup.

It was a good exercise, clarified some things that I had not fully understood before. I have setup Woof to seamlessly use Minit, and created PETs, so it could be easily adopted if myself or anyone else takes a fancy to it in the future.

Tags: woof