summaryrefslogtreecommitdiff
path: root/packages/sys-apps/openrc/openrc-0.34.11-r4.exheres-0
diff options
context:
space:
mode:
Diffstat (limited to 'packages/sys-apps/openrc/openrc-0.34.11-r4.exheres-0')
-rw-r--r--packages/sys-apps/openrc/openrc-0.34.11-r4.exheres-0186
1 files changed, 186 insertions, 0 deletions
diff --git a/packages/sys-apps/openrc/openrc-0.34.11-r4.exheres-0 b/packages/sys-apps/openrc/openrc-0.34.11-r4.exheres-0
new file mode 100644
index 0000000..50af632
--- /dev/null
+++ b/packages/sys-apps/openrc/openrc-0.34.11-r4.exheres-0
@@ -0,0 +1,186 @@
+# Copyright 2018 Redcore Linux Project
+# Distributed under the terms of the GNU General Public License v2
+
+require bash-completion zsh-completion
+require github
+
+SUMMARY="A dependency-based init system that works with the system-provided init program"
+SLOT="0"
+LICENCES="BSD-2"
+
+MYOPTIONS="
+ ( providers:
+ runit
+ sinit
+ sysvinit
+ ) [[
+ *description = [ provider for the init daemon ]
+ number-selected = at-most-one
+ ]]
+ dhcp [[ description = [
+ Enable external networking tools
+ ] ]]
+ dkms [[ description = [
+ Enable DKMS (dynamic kernel module support) integration
+ ] ]]
+ ncurses
+ newnet [[ description = [
+ Enable the new network stack (experimental)
+ ] ]]
+ pam
+ plymouth [[ description = [
+ Enable plymouth plugin for OpenRC
+ ] ]]
+"
+
+PLATFORMS="~amd64 ~x86"
+
+DEPENDENCIES="
+ build+run:
+ dkms? ( sys-kernel/dkms )
+ ncurses? ( sys-libs/ncurses )
+ pam? ( sys-libs/pam )
+ run:
+ providers:runit? ( sys-apps/runit )
+ providers:sinit? ( sys-apps/sinit )
+ providers:sysvinit? ( sys-apps/sysvinit )
+ plymouth? ( sys-boot/plymouth-openrc-plugin )
+ dhcp? (
+ sys-apps/net-tools
+ net-misc/dhcpcd
+ )
+"
+
+REMOTE_IDS="github:OpenRC/${PN}"
+
+DEFAULT_SRC_PREPARE_PATCHES=(
+ # Redcore Linux : enable rclogger, disable cgroupsv2
+ "${FILES}"/"${PN}"-enable-rclogger.patch
+ "${FILES}"/"${PN}"-disable-cgroupsv2.patch
+)
+
+
+DEFAULT_SRC_COMPILE_PARAMS=(
+ LIBNAME=lib
+ LIBEXECDIR=/usr/$(exhost --target)/libexec/rc
+ OS=Linux
+)
+
+DEFAULT_SRC_INSTALL_PARAMS=(
+ PREFIX=/usr/$(exhost --target)
+ SBINDIR=/usr/$(exhost --target)/bin
+ SYSCONFDIR=/etc
+ UPREFIX=/usr
+ INCDIR=/usr/$(exhost --target)/include
+ INCMODE=0755
+ LIBDIR=/usr/$(exhost --target)/lib
+ SHLIBDIR=/usr/$(exhost --target)/lib
+ LIBMODE=0755
+ BASHCOMPDIR=${BASHCOMPLETIONDIR}
+ ZSHCOMPDIR=${ZSHCOMPLETIONDIR}
+)
+
+pkg_setup() {
+ exdirectory --allow /etc/sysctl.d
+}
+
+src_prepare() {
+ default
+
+ # Redcore Linux : enable dkms integration
+ if option dkms; then
+ expatch "${FILES}"/"${PN}"-dkms.patch
+ fi
+
+ edo sed -e 's#readelf #${READELF:-readelf} #g' \
+ -i src/test/runtests.sh
+}
+
+src_compile() {
+ export BRANDING="Redcore Linux"
+
+ export DEBUG=
+ export MKTERMCAP=$(optionv ncurses)
+
+ export AR=$(exhost --tool-prefix)ar
+ export RANLIB=$(exhost --tool-prefix)ranlib
+ export CC=$(exhost --tool-prefix)cc
+
+ MAKE_ARGS="
+ ${DEFAULT_SRC_COMPILE_PARAMS[@]}
+ MKAUDIT=no
+ MKBASHCOMP=$(option bash-completion yes no)
+ MKNET=$(option newnet yes no)
+ MKPAM=$(optionv pam)
+ MKSELINUX=no
+ MKSTATICLIBS=no
+ MKSYSVINIT=no
+ MKZSHCOMP=$(option zsh-completion yes no)
+ "
+
+ emake ${MAKE_ARGS}
+}
+
+src_test() {
+ export READELF=$(exhost --tool-prefix)readelf
+ default
+}
+
+src_install() {
+ emake \
+ ${DEFAULT_SRC_INSTALL_PARAMS[@]} \
+ ${MAKE_ARGS} \
+ DESTDIR="${IMAGE}" install
+
+ keepdir /usr/$(exhost --target)/libexec/rc/init.d
+ keepdir /usr/$(exhost --target)/libexec/rc/tmp
+
+ dodir /usr/share/"${PN}"
+ edo cp -PR "${IMAGE}"/etc/runlevels "${IMAGE}"/usr/share/${PN}
+ rm -rf "${IMAGE}"/etc/runlevels
+
+ insinto /etc/logrotate.d
+ newins "${FILES}"/openrc.logrotate openrc
+
+ if option pam; then
+ insinto /etc/pam.d
+ newins "${FILES}"/system-services.pam system-services
+ newins "${FILES}"/start-stop-daemon.pam start-stop-daemon
+ newins "${FILES}"/start-stop-daemon.pam supervise-daemon
+ fi
+
+ dodoc ChangeLog *.md
+ if option newnet; then
+ dodoc README.newnet
+ fi
+}
+
+pkg_postinst() {
+ # Make our runlevels if they don't exist
+ if [[ ! -e "${ROOT}"etc/runlevels ]] ||
+ [[ -e "${ROOT}"etc/runlevels/.add_boot_init.created ]] ; then
+ einfo "Copying across default runlevels"
+ cp -RPp "${ROOT}"usr/share/${PN}/runlevels "${ROOT}"etc
+ rm -f "${ROOT}"etc/runlevels/.add_boot_init.created
+ else
+ if [[ ! -e "${ROOT}"etc/runlevels/sysinit/devfs ]] ; then
+ mkdir -p "${ROOT}"etc/runlevels/sysinit
+ cp -RPp "${ROOT}"usr/share/${PN}/runlevels/sysinit/* \
+ "${ROOT}"etc/runlevels/sysinit
+ fi
+ if [[ ! -e "${ROOT}"etc/runlevels/shutdown/mount-ro ]] ; then
+ mkdir -p "${ROOT}"etc/runlevels/shutdown
+ cp -RPp "${ROOT}"usr/share/${PN}/runlevels/shutdown/* \
+ "${ROOT}"etc/runlevels/shutdown
+ fi
+ if [[ ! -e "${ROOT}"etc/runlevels/nonetwork/local ]]; then
+ cp -RPp "${ROOT}"usr/share/${PN}/runlevels/nonetwork \
+ "${ROOT}"etc/runlevels
+ fi
+ fi
+
+ # update the dependency tree after touching all files #224171
+ [[ "${ROOT}" = "/" ]] &&
+ "${ROOT}usr/$(exhost --target)/libexec"/rc/bin/rc-depend -u
+}
+