This is a full PID 1 replacement (sysvinit, systemd, upstart, etc.). It uses busybox components to provide something like DJB's daemontools.

This might be usable with distributions other than Arch Linux. But I made it for Arch's User Repository.

See Also

Desktop users may enjoy runit-desktop.


Denys Vlasenko's essay SysV init must die is a good explanation of why someone would want this.

What about systemd?

It's true that systemd addresses most (or maybe all) of the points raised by Denys, but runit manages to do the same thing in a much simpler way, without requiring you to learn a new language: you just write /bin/sh scripts.

The downside is that runit is absolutely not something you can set up and maintain with GUI tools. I don't have a problem with GUI tools, it makes system administration a lot easier (assuming no major problems). I already know how to do all the underlying tasks that systemd wraps, so something like systemd just confuses and frustrates me.

If you're not ready to dive into how things work "under the hood", runit is definitely not for you. And let's be honest, there is a lot to learn. Maybe you have other problems to solve, like fluid dynamics models or graph traversal. If the workings of the Operating System aren't your focus, you shouldn't waste time with this package :)


A lot of this was inspired by, or taken directly from, Piotr Karbowski's mdev-like-a-boss.

Neale Pickett