OpenRC is made up of several modular components, the main ones being an init (optional), the core dependency management system, and a daemon supervisor (optional). It is written in C and POSIX-compliant shell, Init scripts share similarities with scripts used in
sysvinit, but offer several features to simplify their creation. Scripts are assumed to have , and ; and the system uses variables already declared to create the default functions. The depend function is used to declare dependencies to other services that would be done with
LSB headers in sysvinit. Configuration and mechanism are separated with configuration files in the conf.d directory and init files in the init.d directory. openrc-init first appeared in version 0.25 as an optional replacement for Unix filesystem#Conventional directory layout|. This can replace Gentoo Linux's default init system, sysvinit. Supervise-daemon first appeared in version 0.21 giving OpenRC supervision capabilities. It can be enabled in the init script for supervise-daemon to start and monitor a daemon. Several other daemon supervisors are supported, including
runit and
s6. == Features ==