From 739c65c54cb0e957df5e9b76f93fb02554e5cac3 Mon Sep 17 00:00:00 2001
From: davidovski <david@davidovski.xyz>
Date: Wed, 4 May 2022 23:52:30 +0100
Subject: moved everything to new file formatting

---
 repo/system/openrc/openrc.post-install | 38 ++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 repo/system/openrc/openrc.post-install

(limited to 'repo/system/openrc/openrc.post-install')

diff --git a/repo/system/openrc/openrc.post-install b/repo/system/openrc/openrc.post-install
new file mode 100644
index 0000000..1c27350
--- /dev/null
+++ b/repo/system/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