getty=/sbin/getty
use_getty=0
detach=0
+pb_config=pb-config
usage() {
cat >&2 <<EOF
then
getty="$getty_arg"
fi
+
+ login_arg="-l$0"
+ for ttyarg in "$@"
+ do
+ # If the getty args include autologin don't override with -l
+ # and leave calling petitboot-nc to the user's init
+ if [ "$ttyarg" == "-a" ]
+ then
+ login_arg=""
+ fi
+ done
+
if [ "$detach" = 1 ]
then
- $getty -l $0 "$@" &
+ setsid -c $getty $login_arg "$@" &
exit
else
- exec $getty -l $0 "$@"
+ exec $getty $login_arg "$@"
fi
fi
fi
done
+# we force local terminals to use the linux termcap definition
+case "$(tty)" in
+/dev/tty[0-9]*)
+ export TERM=linux
+ ;;
+esac
+
+# we may have been run from udev - ensure we have a sensible PATH
+if [ -z "$PATH" ]
+then
+ PATH=/usr/bin:/usr/sbin:/bin:/sbin
+fi
+PATH=/var/lib/pb-plugins/bin:$PATH
+export PATH
+
verbose_opt=
-sysinfo_bin=$(dirname $0)/pb-sysinfo
-if [ -x $sysinfo_bin ] && $sysinfo_bin --debug-enabled
+if $pb_config debug | grep -q enabled
then
verbose_opt=--verbose
fi
+# kernel messages may write over the ncurses ui - change log level to only
+# show particularly important messages
+dmesg -n 1
+
+trap '' SIGINT
+
while :
do
$ui $verbose_opt
reset
echo "Exiting petitboot. Type 'exit' to return."
+ echo "You may run 'pb-sos' to gather diagnostic data"
$shell
done