2012-04-29 18:24:22 +00:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
export PATH=/env/bin
|
|
|
|
|
2013-09-25 15:51:16 +00:00
|
|
|
global hostname
|
|
|
|
global user
|
|
|
|
global autoboot_timeout
|
|
|
|
global boot.default
|
|
|
|
global allow_color
|
2012-04-29 18:24:22 +00:00
|
|
|
global linux.bootargs.base
|
2012-11-01 13:46:04 +00:00
|
|
|
#linux.bootargs.dyn.* will be cleared at the beginning of boot
|
2012-08-12 18:04:23 +00:00
|
|
|
global linux.bootargs.dyn.ip
|
|
|
|
global linux.bootargs.dyn.root
|
2013-09-25 15:51:16 +00:00
|
|
|
global editcmd
|
|
|
|
|
|
|
|
[ -z "${global.hostname}" ] && global.hostname=generic
|
|
|
|
[ -z "${global.user}" ] && global.user=none
|
|
|
|
[ -z "${global.autoboot_timeout}" ] && global.autoboot_timeout=3
|
|
|
|
[ -z "${global.boot.default}" ] && global.boot.default=net
|
|
|
|
[ -z "${global.allow_color}" ] && global.allow_color=true
|
|
|
|
[ -z "${global.editcmd}" ] && global.editcmd=sedit
|
2012-04-29 18:24:22 +00:00
|
|
|
|
2013-03-09 23:19:34 +00:00
|
|
|
[ -e /env/config-board ] && /env/config-board
|
2012-11-01 13:46:04 +00:00
|
|
|
/env/config
|
|
|
|
|
2013-09-16 17:50:00 +00:00
|
|
|
# request password to login if a timeout is specified and password set
|
|
|
|
if [ -n ${global.login.timeout} ]; then
|
|
|
|
[ ${global.login.timeout} -gt 0 ] && login_cmd=login
|
|
|
|
fi
|
|
|
|
# allow the input if not
|
|
|
|
[ -n ${global.console.input_allow} ] && global.console.input_allow=1
|
|
|
|
|
2013-01-15 20:43:32 +00:00
|
|
|
# allow to stop the boot before execute the /env/init/*
|
|
|
|
# but without waiting
|
|
|
|
timeout -s -a -v key 0
|
2012-04-29 18:24:22 +00:00
|
|
|
|
|
|
|
if [ "${key}" = "q" ]; then
|
2013-09-16 17:50:00 +00:00
|
|
|
${login_cmd}
|
2012-04-29 18:24:22 +00:00
|
|
|
exit
|
|
|
|
fi
|
|
|
|
|
2013-09-16 17:50:00 +00:00
|
|
|
[ -n ${login_cmd} ] && global.console.input_allow=0
|
|
|
|
|
2012-04-29 18:24:22 +00:00
|
|
|
for i in /env/init/*; do
|
|
|
|
. $i
|
|
|
|
done
|
|
|
|
|
2013-04-17 17:14:12 +00:00
|
|
|
if [ -e /env/menu ]; then
|
|
|
|
echo -e -n "\nHit m for menu or any other key to stop autoboot: "
|
|
|
|
else
|
|
|
|
echo -e -n "\nHit any key to stop autoboot: "
|
|
|
|
fi
|
|
|
|
|
2013-09-16 17:50:00 +00:00
|
|
|
[ -n ${login_cmd} ] && global.console.input_allow=1
|
|
|
|
|
2013-01-15 20:43:32 +00:00
|
|
|
timeout -a $global.autoboot_timeout -v key
|
|
|
|
autoboot="$?"
|
|
|
|
|
2013-09-16 17:50:00 +00:00
|
|
|
[ -n ${login_cmd} ] && global.console.input_allow=0
|
|
|
|
|
2013-01-15 20:43:32 +00:00
|
|
|
if [ "${key}" = "q" ]; then
|
2013-09-16 17:50:00 +00:00
|
|
|
${login_cmd}
|
2013-01-15 20:43:32 +00:00
|
|
|
exit
|
|
|
|
fi
|
|
|
|
|
2012-04-29 18:24:22 +00:00
|
|
|
if [ "$autoboot" = 0 ]; then
|
|
|
|
boot
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -e /env/menu ]; then
|
2013-09-16 17:50:00 +00:00
|
|
|
${login_cmd}
|
2012-04-29 18:24:22 +00:00
|
|
|
if [ "${key}" != "m" ]; then
|
|
|
|
echo -e "\ntype exit to get to the menu"
|
|
|
|
sh
|
|
|
|
fi
|
|
|
|
/env/menu/mainmenu
|
|
|
|
fi
|
2013-09-16 17:50:00 +00:00
|
|
|
|
|
|
|
${login_cmd}
|