3 # installer - start installer frontend and backend as per pfi config.
4 # $Id: installer,v 1.20 2005/04/13 03:32:16 cpressey Exp $
12 $pfi_backend -r $RENDEZVOUS -t $TRANSPORT >/dev/null 2>&1
27 # Console start sequence:
28 # - Backend (and all other logging) goes to console (ttyv0)
29 # - curses frontend starts on ttyv1.
30 # - Uses vidcontrol -s 2 to switch to ttyv1 once the frontend is up.
32 echo -n "Starting installer. "
34 if [ -r /etc/defaults/pfi.conf ]; then
35 . /etc/defaults/pfi.conf
38 if [ -r /etc/pfi.conf ]; then
39 echo "Reading /etc/pfi.conf ..."
42 echo "/etc/pfi.conf not found, starting interactive install."
45 # We can set up any install variables and such
46 # here by examining pfi_* variables.
48 if [ "X$pfi_run" != "X" ]; then
53 case "X$pfi_dfui_transport" in
55 RENDEZVOUS="installer"
61 echo "Unsupported DFUI transport '$pfi_dfui_transport'."
66 if [ "X$SERIAL" = "XYES" ]; then
67 background_backend $RENDEZVOUS $pfi_dfui_transport &
69 ESCDELAY=$pfi_curses_escdelay \
70 /usr/sbin/dfuife_curses \
72 -t $pfi_dfui_transport \
73 -b /usr/share/installer/fred.txt \
78 if [ "X$pfi_frontend" = "Xauto" ]; then
79 if [ "X$DISPLAY" = "X" ]; then
86 case "X$pfi_frontend" in
88 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
92 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
96 ps auwwwxxx > /tmp/ps.txt
97 if grep -q dfuife_curses /tmp/ps.txt; then
98 # Frontend is already running.
100 ESCDELAY=$pfi_curses_escdelay \
101 /usr/sbin/dfuife_curses \
103 -t $pfi_dfui_transport \
104 -b /usr/share/installer/fred.txt \
105 2>/dev/ttyv0 </dev/ttyv1 >/dev/ttyv1 &
109 vidcontrol -s 2 </dev/ttyv0
110 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
113 killall dfuife_curses
114 vidcontrol -s 1 </dev/ttyv0
117 ps auwwwxxx > /tmp/ps.txt
118 if grep -q dfuife_curses /tmp/ps.txt; then
119 echo "Frontend is already running"
121 ESCDELAY=$pfi_curses_escdelay \
122 /usr/sbin/dfuife_curses \
124 -t $pfi_dfui_transport \
125 -b /usr/share/installer/fred.txt \
126 >$TTY_INST <$TTY_INST 2>&1 &
130 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
133 killall dfuife_curses
139 echo "Unknown installer frontend '$pfi_frontend'."
148 $pfi_shutdown_command
157 if [ "X$1" = "Xserial" ]; then
161 TTY=`w | awk '{ print $2 }' | tail -n1`
162 if [ "tty$TTY" = "ttyd0" ]; then
166 ps auwwwxxx > /tmp/ps.txt
167 if grep -q dfuibe_installer /tmp/ps.txt; then
168 # Installer is already running. Log in normally.
175 ### END of installer ###