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
+
+for f in /etc/environment /etc/locale
+do
+ if [ -e "$f" ]
+ then
+ export $(cat "$f")
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=
+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
+ $ui $verbose_opt
+ reset
echo "Exiting petitboot. Type 'exit' to return."
+ echo "You may run 'pb-sos' to gather diagnostic data"
$shell
done