"It makes runit look like systemd" —wooosh
"the antithesis of systemd" —u/ocean-noice
No systemd
hummingbird is an init system designed for speed.
It does nothing more than start the system and stop the system by default. There are three main "runlevels", fs
which is called directly after the pseudo filesystems necessary for the system to run have been mounted, interlude
which is ran before dropping the user into a tty, and tty
which is what is responsible for actually starting ttys.
$ git clone https://github.com/Sweets/hummingbird
$ cd ./hummingbird
$ make
$ sudo make install
If your distribution has any files specific to it, they can be found in dist
. Replace everything in /usr/lib/hummingbird
with your distribution specific files for optimal usage with your distribution.
If they're not available, feel free to contribute them, or request them.
Hummingbird is known to build with the following C compilers:
Building with a compiler not listed here? Add it and send a pull request!
As a developer, I feel that the functionality of hummingbird has reached what I envisioned it to. This is not to say that the project is dead by any means — I simply have nothing more to add to it. That being said though, if you ever feel there's an issue with hummingbird, open an issue. It will be addressed as soon as I can get to it.
Don't ever be intimidated by the last commit date being a long time in the past. If you see I've made commits on other projects in the last year, rest assured I'll get to your issue.
Feel free to use hummingbird on your own personal installation, on any sort of embedded system you wish, hell, if you're a distribution developer, feel free to ship it as the init if you're so inclined. hummingbird is licensed under the MIT license — the world is your oyster. If you have any cool projects that use hummingbird, feel free to make a pull request or an issue showing how it's being used, it'll be listed on the repository README.