Go to file
2015-05-11 18:36:49 -05:00
conf.d add missing files for GNU/Hurd 2014-10-23 13:00:24 -05:00
etc Rework supervisor integration framework 2015-05-11 09:44:06 -05:00
init.d Add support for the s6 supervision suite 2015-05-11 18:36:49 -05:00
init.d.misc Rename runscript to openrc-run 2013-12-29 22:57:31 -06:00
local.d local.d: update README 2013-02-25 16:04:25 -06:00
man Add support for the s6 supervision suite 2015-05-11 18:36:49 -05:00
mk Build: make snapshot remove .git directory from tarball 2015-05-01 10:14:31 -05:00
pkgconfig Revert "Make einfo routines private" 2013-10-21 13:49:41 -05:00
runlevels Add binfmt service to sysinit runlevel 2015-04-20 17:10:07 -05:00
scripts remove type command 2013-12-02 02:08:40 -06:00
sh Add support for the s6 supervision suite 2015-05-11 18:36:49 -05:00
src librc: Fix crash if the service name is the same as the including runlevel 2015-05-04 09:54:51 -05:00
support Rename the rc binary to openrc 2013-12-12 18:31:29 -06:00
sysctl.d sysctl.d: fix README 2012-02-10 09:17:22 -06:00
test checkbashisms: clean up export statements. 2012-11-07 00:22:33 +00:00
.gitignore clean up gitignore files 2011-06-03 17:07:22 -04:00
BUSYBOX.md Update busybox documentation 2015-04-22 16:15:30 -05:00
ChangeLog update ChangeLog 2015-05-01 16:08:24 -05:00
FEATURE-REMOVAL-SCHEDULE.md Convert feature removal schedule to markdown 2015-04-22 17:42:38 -05:00
HISTORY.md convert README.history to markdown 2015-04-22 17:03:59 -05:00
Makefile Makefile: add variable for path to source tree 2015-01-23 12:52:31 -06:00
Makefile.inc Start work on 0.16 2015-05-01 19:02:49 -05:00
NEWS.md typo fix in NEWS 2015-04-24 19:53:35 -05:00
README.md README.md: small formatting changes 2015-04-22 15:39:24 -05:00
README.newnet Remove gentoo's net.* scripts 2013-08-13 16:33:41 -05:00
s6-guide.md Add support for the s6 supervision suite 2015-05-11 18:36:49 -05:00
STYLE-GUIDE.md Convert style guide to markdown 2015-04-22 15:54:40 -05:00
TODO Add a potential future problem I can see with metric calculation and interfaces that change often. 2012-03-02 19:51:09 +00:00

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
MKNET=no
MKPAM=pam
MKPREFIX=yes
MKPKGCONFIG=no
MKSELINUX=yes
MKSTATICLIBS=no
MKTERMCAP=ncurses
MKTERMCAP=termcap
MKTOOLS=yes
PKG_PREFIX=/usr/pkg
LOCAL_PREFIX=/usr/local
PREFIX=/usr/local
BRANDING=\"Gentoo/$(uname -s)\"

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 debug memory under valgrind, add -DDEBUG_MEMORY to your CPPFLAGS so that all malloc memory should be freed at exit.

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.

init.d.misc is not installed by default as the scripts will need tweaking on a per distro basis. They are also non essential to the operation of the system.

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