aboutsummaryrefslogtreecommitdiff
path: root/sh/init-early.sh.Linux.in
diff options
context:
space:
mode:
Diffstat (limited to 'sh/init-early.sh.Linux.in')
-rw-r--r--sh/init-early.sh.Linux.in20
1 files changed, 20 insertions, 0 deletions
diff --git a/sh/init-early.sh.Linux.in b/sh/init-early.sh.Linux.in
new file mode 100644
index 00000000..d6cb007d
--- /dev/null
+++ b/sh/init-early.sh.Linux.in
@@ -0,0 +1,20 @@
+#!@SHELL@
+# Copyright 2007-2008 Roy Marples <roy@marples.name>
+# All rights reserved. Released under the 2-clause BSD license.
+
+# Try and set a font and as early as we can
+if [ -e /etc/runlevels/"${RC_DEFAULTLEVEL}"/consolefont \
+ -o -e /etc/runlevels/"${RC_BOOTLEVEL}"/consolefont ]; then
+ termencoding="(K"
+ [ -e "${RC_LIBDIR}"/console/unicode ] && termencoding="%G"
+ CONSOLE="${CONSOLE:-/dev/console}"
+ printf "\033%s" "${termencoding}" >"${CONSOLE}" 2>/dev/null
+ if [ -r "${RC_LIBDIR}"/console/font -a -x /bin/setfont ]; then
+ font="$(cat "${RC_LIBDIR}"/console/font)"
+ [ -c "${CONSOLE}" ] && cons="-C ${CONSOLE}"
+ setfont ${cons} "${RC_LIBDIR}"/console/"${font}" 2>/dev/null
+ fi
+fi
+
+# Ensure we exit 0 so the boot continues
+exit 0