diff --git a/sh.Linux/init.sh b/sh.Linux/init.sh
index 84545b66..2d51e8e3 100755
--- a/sh.Linux/init.sh
+++ b/sh.Linux/init.sh
@@ -102,7 +102,7 @@ mount_svcdir() {
 _rc_get_kv_cache=""
 get_KV() {
 	[ -z "${_rc_get_kv_cache}" ] \
-		&& _RC_GET_KV_CACHE="$(uname -r)"
+		&& _rc_get_kv_cache="$(uname -r)"
 
 	echo "$(KV_to_int "${_rc_get_kv_cache}")"
 
@@ -112,8 +112,13 @@ get_KV() {
 . /etc/init.d/functions.sh
 . "${RC_LIBDIR}"/sh/init-functions.sh
 . "${RC_LIBDIR}"/sh/rc-functions.sh
+[ -r /etc/conf.d/rc ] && . /etc/conf.d/rc
 [ -r /etc/rc.conf ] && . /etc/rc.conf
 
+# Compat shim for udev
+rc_coldplug=${rc_coldplug:-${RC_COLDPLUG:-yes}}
+RC_COLDPLUG=${rc_coldplug}
+
 # Set the console loglevel to 1 for a cleaner boot
 # the logger should anyhow dump the ring-0 buffer at start to the
 # logs, and that with dmesg can be used to check for problems
diff --git a/sh/runscript.sh b/sh/runscript.sh
index 78433e87..162efb28 100755
--- a/sh/runscript.sh
+++ b/sh/runscript.sh
@@ -59,7 +59,7 @@ describe() {
 	done
 }
 
-yesno ${rc_debug} && set -x
+yesno ${RC_DEBUG} && set -x
 
 # If we're net.eth0 or openvpn.work then load net or openvpn config
 _c=${SVCNAME%%.*}