A curated list of awesome projects that provide systemd-like functionality
- basu: The sd-bus library, extracted from systemd
- busd: A D-Bus bus (broker) implementation in Rust
- dbus-broker: A high performance and reliable implementation of a message bus as defined by the D-Bus specification
- kdbus: A transport layer for the DBus IPC system, meant as replacement for the UDS (Unix Domain Socket) transport layer
- sdbus-c++: A high-level C++ D-Bus library for Linux designed to provide expressive, easy-to-use API in modern C++
- skabus: A suite of programs and libraries for Unix systems that aim to implement a bus
- ubus: A micro system bus architecture from OpenWRT to provide system-level Inter-process Communication (IPC)
- zbus: A Rust API for D-Bus communication
- consolekit2: A framework for defining and tracking users, login sessions, and seats
- kslog: A minimalistic kernel-syslogd for Linux in Nim
- procd: The OpenWrt process
management daemon written in C which has replaced
hotplug2
,busybox-klogd
,busybox-syslogd
andbusybox-watchdog
- rsyslog: The rocket-fast system for log processing
- s6-log: A reliable logging program with automated log rotation and full POSIX regular expression support
- socklog2: A small and secure replacement for syslogd
- stumpless: A C logging library built for high performance and a rich feature set
- sysklogd: A BSD syslog daemon with syslog()/syslogp() API replacement for Linux, RFC3164 + RFC5424
- syslog-ng: An enhanced log daemon, supporting a wide range of input and output methods: syslog, unstructured text, message queues, databases (SQL and NoSQL alike), and more
- elogind: The systemd project's "logind", extracted out to be a standalone daemon
- greetd: A minimal and flexible login manager daemon that makes no assumptions about what you want to launch
- seatd and libseat: A minimal seat management daemon, and a universal seat management library
- sessiond: A daemon for systemd-based Linux systems that interfaces with systemd-logind to provide session management features to X11 window managers
- sessionman: An implementation of a systemd-logind replacement in Rust
- turnstile: A session/login tracker and a service-manager-agnostic way to manage per-user service managers for user services
- utlogd: A login/logout user daemon tracker which use the inotify API to survey the change of the user by the utmp file
- utmps: A secure implementation of user accounting, using a daemon as the only authority to manage the utmp and wtmp data
- openresolv: A resolvconf implementation, i.e. a resolv.conf management framework
- catnest: A substitution for systemd-sysusers
- obsysusers: A utility that parses and creates system users and groups, based on the file format and location specified in sysusers.d directories
- opensysusers: A utility written to process sysusers.d files so that they can be handled on systems with or without systemd installed
- opentmpfiles: A standalone utility for handling systemd-style tmpfiles.d settings
- pawprint: A substitution of systemd-tmpfiles
- tmpfilesd: A replacement for systemd-tmpfiles that does not require systemd and includes support for sysvinit style enviroments
- tmpfiles-rs: A Rust implementation of tmpfiles.d
- devd-rs: A Rust library for listening to FreeBSD (also DragonFlyBSD) devd's device attach-detach notifications
- eudev: A standalone dynamic and persistent device naming support (aka userspace devfs) daemon that runs independently from the init system
- hotplugd: oasis hotplug daemon
- libdemi: A device enumeration, monitoring and introspecting library
- libudev (Go): A Golang native implementation Udev library
- libudev (Rust): A safe wrapper around the native libudev library
- libudev-devd: A libudev-compatible interface for devd
- libudev-fbsd: A small udev shim for FreeBSD/devd
- libudev-zero: A drop-in replacement for libudev intended to work with any device manager
- libxdev: An experimental native libudev replacement for NetBSD
- mdev (BusyBox): A mini udev for busybox
- mdev like a boss: A stash for notes, scripts and configs for the system running with mdev as a udev
- mdev (Rust): An mdev daemon workalike, written in pure rust
- mdev (Toybox): Populate /dev directory and handle hotplug events replacement
- mdevctl: A mediated device management and persistence utility
- mdevd: A small daemon managing kernel hotplug events, similarly to udevd
- nldev: A netlink frontend for mdev, replacing the over-engineered udevd
- nlmon: Replaces udevadm for monitoring network devices
- procd: The OpenWrt process
management daemon written in C which has replaced
hotplug2
,busybox-klogd
,busybox-syslogd
andbusybox-watchdog
- smdev: A mostly mdev-compatible suckless program to manage device nodes
- smdev-phkr: A configured smdev
- udev (Rust): A safe wrapper around the native libudev library
- ueventd: Manages /dev, sets permissions for /sys, and handles firmware uevents
- vdev: A portable userspace device-file manager for UNIX-like operating systems