diff options
author | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2018-02-20 21:20:18 -0600 |
---|---|---|
committer | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2018-02-20 21:20:18 -0600 |
commit | 866f81aaa5e438537e6a4b30c1f0fcecc713a1a2 (patch) | |
tree | 4bce7ccd2a7603bdf638e250b8e30e54c1dea909 /system/openrc/openrc.post-install | |
parent | 31f3497a1ca9637ff42f3185a5924e0f4e61ab5d (diff) | |
download | packages-866f81aaa5e438537e6a4b30c1f0fcecc713a1a2.tar.gz packages-866f81aaa5e438537e6a4b30c1f0fcecc713a1a2.tar.bz2 packages-866f81aaa5e438537e6a4b30c1f0fcecc713a1a2.tar.xz packages-866f81aaa5e438537e6a4b30c1f0fcecc713a1a2.zip |
system/openrc: migrate from aports fork
Diffstat (limited to 'system/openrc/openrc.post-install')
-rw-r--r-- | system/openrc/openrc.post-install | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/system/openrc/openrc.post-install b/system/openrc/openrc.post-install new file mode 100644 index 000000000..1057eed41 --- /dev/null +++ b/system/openrc/openrc.post-install @@ -0,0 +1,36 @@ +#!/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 + hwclock|modules|sysctl|hostname|keymaps|syslog|bootmisc) + rc_update $svc boot;; + *) rc_update $svc default;; + esac + + rm $i +done + |