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 $
5 # $DragonFly: src/nrelease/gui/usr/local/bin/installer,v 1.2 2008/10/23 16:45:36 swildner Exp $
13 $pfi_backend -r $RENDEZVOUS -t $TRANSPORT >/dev/null 2>&1
28 # Console start sequence:
29 # - Backend (and all other logging) goes to console (ttyv0)
30 # - curses frontend starts on ttyv1.
31 # - Uses vidcontrol -s 2 to switch to ttyv1 once the frontend is up.
33 echo -n "Starting installer. "
35 if [ -r /etc/defaults/pfi.conf ]; then
36 . /etc/defaults/pfi.conf
39 if [ -r /etc/pfi.conf ]; then
40 echo "Reading /etc/pfi.conf ..."
43 echo "/etc/pfi.conf not found, starting interactive install."
46 # We can set up any install variables and such
47 # here by examining pfi_* variables.
49 if [ "X$pfi_run" != "X" ]; then
54 case "X$pfi_dfui_transport" in
56 sysctl kern.caps_enabled=1
57 RENDEZVOUS="installer"
60 RENDEZVOUS="installer"
66 echo "Unsupported DFUI transport '$pfi_dfui_transport'."
71 if [ "X$SERIAL" = "XYES" ]; then
72 background_backend $RENDEZVOUS $pfi_dfui_transport &
74 ESCDELAY=$pfi_curses_escdelay \
75 /usr/sbin/dfuife_curses \
77 -t $pfi_dfui_transport \
78 -b /usr/share/installer/fred.txt \
83 if [ "X$pfi_frontend" = "Xauto" ]; then
84 if [ "X$DISPLAY" = "X" ]; then
91 case "X$pfi_frontend" in
93 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
97 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
101 ps auwwwxxx > /tmp/ps.txt
102 if grep -q dfuife_curses /tmp/ps.txt; then
103 # Frontend is already running.
105 ESCDELAY=$pfi_curses_escdelay \
106 /usr/sbin/dfuife_curses \
108 -t $pfi_dfui_transport \
109 -b /usr/share/installer/fred.txt \
110 2>/dev/ttyv0 </dev/ttyv1 >/dev/ttyv1 &
114 vidcontrol -s 2 </dev/ttyv0
115 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
118 killall dfuife_curses
119 vidcontrol -s 1 </dev/ttyv0
122 ps auwwwxxx > /tmp/ps.txt
123 if grep -q dfuife_curses /tmp/ps.txt; then
124 echo "Frontend is already running"
126 ESCDELAY=$pfi_curses_escdelay \
127 /usr/sbin/dfuife_curses \
129 -t $pfi_dfui_transport \
130 -b /usr/share/installer/fred.txt \
131 >$TTY_INST <$TTY_INST 2>&1 &
135 $pfi_backend -r $RENDEZVOUS -t $pfi_dfui_transport
138 killall dfuife_curses
144 echo "Unknown installer frontend '$pfi_frontend'."
153 $pfi_shutdown_command
162 if [ "X$1" = "Xserial" ]; then
166 TTY=`w | awk '{ print $2 }' | tail -n1`
167 if [ "tty$TTY" = "ttyd0" ]; then
171 ps auwwwxxx > /tmp/ps.txt
172 if grep -q dfuibe_installer /tmp/ps.txt; then
173 # Installer is already running. Log in normally.
180 ### END of installer ###