|William Pitcock d1fc6d27b3 build: cflags changes||1 year ago|
|src||1 year ago|
|.gitignore||2 years ago|
|Makefile.am||1 year ago|
|README.md||2 years ago|
|autogen.sh||2 years ago|
|configure.ac||1 year ago|
|dump-inifile.c||1 year ago|
svc is a proposed service manager and process supervisor to replace OpenRC in Alpine. It is presently under construction.
svc-supervise is a lightweight process supervisor that can be managed by the service manager using libnv IPC.
svc-manager is a manager which loads service declarations and manages a collection of svc-supervise processes to monitor each
svc-init initializes the system and manages the root
libnv is a port of the FreeBSD and Solaris IPC library,
libnv. It is used to transfer messages between processes and acts
as the core IPC primitive.
svc-supervise process supervisor monitors processes. Typically these processes run as children of the supervisor, but
support for monitoring PID files is pending.
svc-manager service manager manages process supervisors and handles dependency resolution for a given target. A
process may be managed by a parent
svc-init process brings up the system and starts the first
svc-manager process. It listens on the
/dev/initctl fifo and
does not participate in the
libnv-based IPC. The first
svc-manager process listens at
/run/.svc-sock for IPC requests.
Avoid the use of dynamically allocated memory where possible.
Recognize and properly handle containers, so that svc-init may serve as a capable init for dockerized alpine deployments.
Play nice when run under systemd-nspawn.
If in doubt, look at other process supervisors and service managers such as s6 for guidance.