From d28d2287b138ede0591d9facd5dbe7ca4f329f83 Mon Sep 17 00:00:00 2001 From: davidovski Date: Tue, 29 Mar 2022 23:37:34 +0100 Subject: added sysvinit and openrc --- extra/openrc/openrc.post-install | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 extra/openrc/openrc.post-install (limited to 'extra/openrc/openrc.post-install') diff --git a/extra/openrc/openrc.post-install b/extra/openrc/openrc.post-install new file mode 100644 index 0000000..1c27350 --- /dev/null +++ b/extra/openrc/openrc.post-install @@ -0,0 +1,38 @@ +#!/bin/sh + +rc_update() { + local svc="$1" + local level="$2" + mkdir -p /etc/runlevels/$level + ln -sf /etc/init.d/$svc /etc/runlevels/$level +} + +if [ ! -d etc/rcS.d ] && [ ! -d etc/rcL.d ]; then + exit 0 +fi + +for i in etc/rc[SL].d/*; do + [ -L "$i" ] || continue + oldsvc=${i##*/S[0-9][0-9]} + # some services are renamed + case "$oldsvc" in + modutils) svc=modules;; + procps) svc=sysctl;; + bootmisc.sh) svc=bootmisc;; + keymap) svc=keymaps;; + rc.local) svc=local;; + *) svc=$oldsvc;; + esac + + # add the service to correct "runlevel" + case "$svc" in + syslog|klogd) + rc_update $svc sysinit;; + hwclock|modules|sysctl|hostname|keymaps|bootmisc) + rc_update $svc boot;; + *) rc_update $svc default;; + esac + + rm $i +done + -- cgit v1.2.1