supervision - discussion about system services, daemon supervision, init, runlevel management, and tools such as s6 and runit
 help / color / mirror / Atom feed
From: Leah Neukirchen <leah@vuxu.org>
To: supervision@list.skarnet.org
Subject: [ANN] nitro 0.2, a tiny but flexible init system and process supervisior
Date: Fri, 22 Aug 2025 16:30:40 +0200	[thread overview]
Message-ID: <87ect3sa27.fsf@vuxu.org> (raw)

Hello,

I'm happy to announce the initial release of "nitro", a new supervisor
akin to daemontools/runit/perp/s6 that is also usable as a Linux init.

nitro version 0.2 is a beta release: it is mostly feature complete and
has been used in a few situations, but it hasn't been tested heavily
in the real world.  Basic documentation exists.  Bug reports are
welcome.

There are four main applications nitro is designed for:
- As init for a Linux machine for embedded, desktop or server purposes
- As init for a Linux initramfs
- As init for a Linux container (Docker/Podman/LXC/Kubernetes)
- As unprivileged supervision daemon on POSIX systems

Benefits over other systems are:
- All state is kept in RAM, works without tricks on read-only root file systems.
- Efficient event-driven, polling free operation.
- Zero memory allocations during runtime.
- No unbounded file descriptor usage during runtime.
- One single self-contained binary, plus one optional binary to
  control the system.
- No configuration compilation steps needed, services are simple
  directories containing scripts.
- Supports reliable restarting of services.
- Reliable logging mechanisms per service or as default.
- Support for logging chains spread over several services.
- Works independently of properly set system clock.
- Can be run on FreeBSD from /etc/ttys (sets up file descriptors 0, 1, 2).
- Tiny static binary when using musl libc.

You can find the nitro source at

     https://git.vuxu.org/nitro
     https://github.com/leahneukirchen/nitro

and release tarballs at

     https://leahneukirchen.org/releases/nitro-0.2.tar.gz

Releases are also signed with signify(1) using
https://leahneukirchen.org/releases/nitro.pub namely:
RWQ4n7iirrio0Nm2kwQYdW28BE8+AFuClCL6dlj/C1AO2PXLuhKGVEI8

nitro is licensed under the 0BSD license.

Feedback is welcome by mail or via IRC in #vuxu on irc.libera.chat.

Enjoy,
-- 
Leah Neukirchen  <leah@vuxu.org>  https://leahneukirchen.org/

9086861971ff95fcd53eaac9acea3ea8d90fdef7b8a8026fecfb63e2c209a87e  nitro-0.2.tar.gz
22413997c238a06b9fb34b89fc73916ab330cc6b9ef9bae47b04a91d1b326a2f  nitro-0.2.tar.gz.asc
787986f5aa0e9c601f6eaa90d973bf699b767ad03e96974ebb9dd855b1485840  nitro-0.2.tar.gz.sig

             reply	other threads:[~2025-08-22 14:30 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-22 14:30 Leah Neukirchen [this message]
2025-08-22 15:22 peter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ect3sa27.fsf@vuxu.org \
    --to=leah@vuxu.org \
    --cc=supervision@list.skarnet.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).