The PTY approach caused isatty() to return true for services using the log directive, triggering programs like fprintd (using glib) to emit ANSI escape codes and other TTY-specific formatting in syslog. Using a standard pipe ensures isatty() correctly returns false, so programs produce plain text output suitable for logging. For services that require line-buffered output, users can wrap the command with `stdbuf -oL` as documented in doc/config/logging.md. Fixes #455 Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
Finit is an alternative to SysV init and systemd, focused on small and embedded Linux systems, although fully usable on server and desktop systems.
Reverse engineered from the EeePC fastinit
"gaps filled with frog DNA …"
— Claudio Matsuoka
For detailed information, explore our extensive documentation
📚 https://troglobit.github.io/finit/
For working examples, see the 🚀 contrib/ section or these tutorials:
- 🛠️ Buildroot embedded Linux,
- 📦 Debian GNU/Linux,
- ⛰️ Alpine Linux, and
- 🌌 Void Linux
Note
Support for various Linux distributions does not mean Finit installs easily on all architectures. Bundled install scripts are examples for standard installations, tested on amd64 (x86_64) systems. Custom setups, e.g., for embedded systems, can be found in the following Buildroot based examples: myLinux, Infix, or the plain br2-finit-demo.

