84 lines
1.6 KiB
Plaintext
84 lines
1.6 KiB
Plaintext
#!/sbin/runscript
|
|
# Copyright 2007-2008 Roy Marples <roy@marples.name>
|
|
# All rights reserved. Released under the 2-clause BSD license.
|
|
|
|
depend() {
|
|
need localmount
|
|
keyword nojail
|
|
}
|
|
|
|
start() {
|
|
if [ -n "${allscreen_flags}" ]; then
|
|
ebegin "Setting mode to ${allscreen_flags} for all screens"
|
|
for v in /dev/ttyv*; do
|
|
vidcontrol ${allscreen_flags} <"${v}"
|
|
done
|
|
eend $?
|
|
fi
|
|
|
|
if [ -n "${keymap}" ]; then
|
|
ebegin "Setting keymap to ${keymap}"
|
|
kbdcontrol -l ${keymap} </dev/console
|
|
eend $?
|
|
fi
|
|
|
|
if [ -n "${keyrate}" ]; then
|
|
ebegin "Setting keyrate to ${keyrate}"
|
|
kbdcontrol -r ${keyrate} </dev/console
|
|
eend $?
|
|
fi
|
|
|
|
if [ -n "${keychange}" ]; then
|
|
ebegin "Changing function keys"
|
|
eval set -- "${keychange}"
|
|
eindent
|
|
while [ $# -gt 0 ]; do
|
|
veinfo "F$1 -> \`$2'"
|
|
kbdcontrol -f "$1" "$2" </dev/console
|
|
veend $?
|
|
shift; shift
|
|
done
|
|
eoutdent
|
|
fi
|
|
|
|
if [ -n "${cursor}" ]; then
|
|
ebegin "Setting cursor"
|
|
vidcontrol -c ${cursor}
|
|
eend $?
|
|
fi
|
|
|
|
local v= f=
|
|
for v in font8x16 font8x14 font8x8; do
|
|
f=$(eval \$"${v}")
|
|
if [ -n "${f}" ]; then
|
|
ebegin "Setting font ${f}"
|
|
vidcontrol -f ${v##FONT} ${f}
|
|
eend $?
|
|
fi
|
|
done
|
|
|
|
if [ -n "${blanktime}" ]; then
|
|
ebegin "Setting blanktime"
|
|
vidcontrol -t ${blanktime}
|
|
eend $?
|
|
fi
|
|
|
|
if [ -n "${saver}" ]; then
|
|
local i=
|
|
for i in $(kldstat | sed -n -e 's/.* \(splash_.*\)/\1/p'); do
|
|
kldunload "${i}"
|
|
done
|
|
kldstat -v | grep -q _saver || kldload ${saver}_saver
|
|
fi
|
|
|
|
if [ -n "${kbdflags}" ]; then
|
|
ebegin "Setting keyboard flags for all screens"
|
|
for v in /dev/ttyv*; do
|
|
kbdcontrol ${kbdflags} <${v}
|
|
done
|
|
eend $?
|
|
fi
|
|
|
|
return 0
|
|
}
|