Skip to content
The OpenRC init system
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bash-completion bash-completions/rc-service: allow tab to be used again Dec 27, 2018
ci move ci scripts to their own directory Feb 23, 2019
conf.d modules: remove the ability to rename modules on the fly Jun 29, 2018
etc standardize the default shell Dec 8, 2018
init.d init.d/agetty: set default respawn period to 60 seconds Dec 6, 2018
local.d local.d/README: typo fix Aug 15, 2016
man rc-status: add -f option to allow formatting output Feb 15, 2019
mk combine test directories Feb 23, 2019
pkgconfig Revert "Make einfo routines private" Oct 21, 2013
runlevels Create save-keymaps and save-ktermencoding services Nov 7, 2018
scripts scripts: fix halt, poweroff and reboot wrappers Dec 27, 2018
sh combine test directories Feb 23, 2019
src supervise-daemon: allow --respawn-max to be zero Mar 29, 2019
support Reformat and fix titles in documentation Jan 12, 2018
sysctl.d sysctl.d: fix README Feb 10, 2012
test move ci scripts to their own directory Feb 23, 2019
zsh-completion zsh-completion: _rc-service support extra actions Jan 21, 2019
.cirrus.yml move ci scripts to their own directory Feb 23, 2019
.gitignore dist: convert to tar.gz Sep 23, 2016
.travis.yml move ci scripts to their own directory Feb 23, 2019
AUTHORS Convert OpenRC to a centralized copyright/license structure Dec 21, 2015
BUSYBOX.md
ChangeLog Update ChangeLog Feb 23, 2019
FEATURE-REMOVAL-SCHEDULE.md Reformat and fix titles in documentation Jan 12, 2018
HISTORY.md Reformat and fix titles in documentation Jan 12, 2018
LICENSE Convert OpenRC to a centralized copyright/license structure Dec 21, 2015
Makefile combine test directories Feb 23, 2019
Makefile.inc version 0.41 Dec 4, 2018
NEWS.md rc-status: add -f option to allow formatting output Feb 15, 2019
README.md add experimental support for an alternate shell for service scripts Feb 14, 2019
README.newnet Remove gentoo's net.* scripts Aug 13, 2013
STYLE-GUIDE.md Reformat and fix titles in documentation Jan 12, 2018
TODO Add a potential future problem I can see with metric calculation and … Mar 2, 2012
agetty-guide.md Reformat and fix titles in documentation Jan 12, 2018
runit-guide.md Reformat and fix titles in documentation Jan 12, 2018
s6-guide.md Reformat and fix titles in documentation Jan 12, 2018
service-script-guide.md service-script-guide.md: small cleanups Jun 5, 2018
supervise-daemon-guide.md supervise-daemon: make the pidfile an implementation detail Nov 15, 2018
user-guide.md user-guide.md: small cleanups Jun 5, 2018

README.md

OpenRC README

OpenRC is a dependency-based init system that works with the system-provided init program, normally /sbin/init. Currently, it does not have an init program of its own.

Installation

OpenRC requires GNU make.

Once you have GNU Make installed, the default OpenRC installation can be executed using this command:

make install

Configuration

You may wish to configure the installation by passing one or more of the below arguments to the make command

PROGLDFLAGS=-static
LIBNAME=lib64
DESTDIR=/tmp/openrc-image
MKBASHCOMP=no
MKNET=no
MKPAM=pam
MKPREFIX=yes
MKPKGCONFIG=no
MKSELINUX=yes
MKSTATICLIBS=no
MKSYSVINIT=yes
MKTERMCAP=ncurses
MKTERMCAP=termcap
MKZSHCOMP=no
PKG_PREFIX=/usr/pkg
LOCAL_PREFIX=/usr/local
PREFIX=/usr/local
BRANDING=\"Gentoo/$(uname -s)\"
SH=/bin/sh

Notes

We don't support building a static OpenRC with PAM.

You may need to use PROGLDFLAGS=-Wl,-Bstatic on glibc instead of just -static.

If you are building OpenRC for a Gentoo Prefix installation, add MKPREFIX=yes.

PKG_PREFIX should be set to where packages install to by default.

LOCAL_PREFIX should be set when to where user maintained packages are. Only set LOCAL_PREFIX if different from PKG_PREFIX.

PREFIX should be set when OpenRC is not installed to /.

If any of the following files exist then we do not overwrite them

/etc/devd.conf
/etc/rc
/etc/rc.shutdown
/etc/conf.d/*

rc and rc.shutdown are the hooks from the BSD init into OpenRC.

devd.conf is modified from FreeBSD to call /etc/rc.devd which is a generic hook into OpenRC.

inittab is the same, but for SysVInit as used by most Linux distributions. This can be found in the support folder.

Obviously, if you're installing this onto a system that does not use OpenRC by default then you may wish to backup the above listed files, remove them and then install so that the OS hooks into OpenRC.

Reporting Bugs

If you are using Gentoo Linux, bugs can be filed on their bugzilla under the gentoo hosted projects product and the openrc component [1]. Otherwise, you can report issues on our github [2].

Better yet, if you can contribute code, please feel free to submit pull requests [3].

IRC Channel

We have an official irc channel, #openrc on freenode, feel free to join us there.

[1] https://bugs.gentoo.org/ [2] https://github.com/openrc/openrc/issues [3] https://github.com/openrc/openrc/pulls

You can’t perform that action at this time.