Magellan Linux

Diff of /alx-src/trunk/alxinstall-ng/bin/alxinstall-ng.sh.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 280 by niro, Wed Aug 17 03:35:09 2005 UTC revision 523 by niro, Fri Jun 27 22:48:55 2008 UTC
# Line 1  Line 1 
1  #!/bin/sh  #!/bin/sh
2  #  #
3  # $Header: /home/cvsd/alx-cvs/alx-src/alxinstall-ng/bin/alxinstall-ng.sh,v 1.5 2005-08-17 03:35:09 niro Exp $  # $Header: /home/cvsd/alx-cvs/alx-src/alxinstall-ng/bin/alxinstall-ng.sh,v 1.9 2008-06-27 22:48:55 niro Exp $
4  #  #
5  # AutoSta_LX Installation Script  # AutoSta_LX Installation Script
 # version: 0.8b  
6  #  #
7  # Niels Rogalla <niro@magellan-linux.de>  # Niels Rogalla <niro@magellan-linux.de>
8  # <rogalla@augusta-bochum.de>  # <rogalla@augusta-bochum.de>
# Line 12  Line 11 
11  # Install Navigation Gui  # Install Navigation Gui
12  #  #
13    
 #source /etc/alx_version  
 #source /opt/alx-config/version  
   
 #source /etc/alx-config/config.rc  
   
14  #images: (get ${CDIMAGENAME})  #images: (get ${CDIMAGENAME})
15  source /mnt/cdrom/system/images.conf  source /mnt/cdrom/system/images.conf
16    
# Line 27  cdromdev="`echo $cdromdev|sed -e 's/ //' Line 21  cdromdev="`echo $cdromdev|sed -e 's/ //'
21  ########################################  ########################################
22    
23  ### System/Config Version  ### System/Config Version
24  VERSION="0.2"  VERSION="0.3"
25  TITLE="alxinstall-ng - ${VERSION}"  TITLE="alxinstall-ng - ${VERSION}"
26    
27  #CONFIGS_TEMPLATE="/opt/alx-config/configs"  #CONFIGS_TEMPLATE="/opt/alx-config/configs"
# Line 44  CURRENTLINE=0 Line 38  CURRENTLINE=0
38  #  DIALOG BOXEN #  #  DIALOG BOXEN #
39  #################################################  #################################################
40    
41  die() {  die()
42   #clear  {
  #echo -e "\nhuch, da ist ein script gestorben -> $?\n"  
  #read  
  #exit 0  
43   ERROR=$1   ERROR=$1
44   RETVAL=$?   RETVAL=$?
45   dialog_install_failure   dialog_install_failure
46   exit 1   exit 1
47  }  }
48    
49  dialog_warning() {  dialog_warning()
50    {
51   dialog \   dialog \
52   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
53   --colors \   --colors \
54   --defaultno \   --defaultno \
55   --yesno "\Z1 !!! Achtung !!! \Zn\n\n\   --yesno "\Z1 !!! Achtung !!! \Zn\n\n\
56   Diese Festplatte wird unwiederruflich geloescht werden.\n\n\   Diese Festplatte wird unwiederruflich geloescht werden.\n\n\
57   Soll ich wirklich fortfahren ?" 10 70   Soll ich wirklich fortfahren ?" 10 70
58   RES=$?   RES=$?
59   if [ "$RES" == "1" ]   if [[ ${RES} -eq 1 ]]
60   then   then
61   clear   clear
62   echo "Der Vorgang wurde abgebrochen."   echo "Der Vorgang wurde abgebrochen."
# Line 72  dialog_warning() { Line 64  dialog_warning() {
64   fi   fi
65  }  }
66    
67  dialog_setup_hdd_info(){  dialog_setup_hdd_info()
68   local SHDD="`echo $HDD|sed -e 's/\/dev\///'`"  {
69     local SHDD="$(echo ${HDD} | sed 's/\/dev\///')"
70    
71   dialog \   dialog \
72   --colors \   --colors \
73   --title "[ Festplatten Partitionierung ]" \   --title "[ Festplatten Partitionierung ]" \
74   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
75   --ok-label "Weiter" \   --ok-label "Weiter" \
76   --msgbox "\nBitte legen Sie 3 Partitionen an.\n\n\   --msgbox "\nBitte legen Sie 3 Partitionen an.\n\n\
77   [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit ca. 50MB\n\   [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit ca. 50MB\n\
# Line 87  dialog_setup_hdd_info(){ Line 80  dialog_setup_hdd_info(){
80   Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81   Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81
81  }  }
82    
83  dialog_setup_hdd_info_flash(){  dialog_setup_hdd_info_flash()
84   local SHDD="`echo $HDD|sed -e 's/\/dev\///'`"  {
85     local SHDD="$(echo $HDD | sed 's/\/dev\///')"
86    
87   dialog \   dialog \
88   --colors \   --colors \
89   --title "[ Festplatten Partitionierung ]" \   --title "[ Festplatten Partitionierung ]" \
90   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
91   --ok-label "Weiter" \   --ok-label "Weiter" \
92   --msgbox "\nBitte legen Sie 1 Partition an.\n\n\   --msgbox "\nBitte legen Sie 1 Partition an.\n\n\
93   [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit dem gesamten Speicher\n\   [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit dem gesamten Speicher\n\
94   Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81   Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81
95  }  }
96    
97  dialog_setup_system_menu() {  dialog_setup_system_menu()
98    {
99     local i
100    
101   I=`dialog \   i=$(dialog \
102   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
103   --title "[ Festplatten Partitionierung ]" \   --title "[ Festplatten Partitionierung ]" \
104   --cancel-label "Abbrechen" \   --cancel-label "Abbrechen" \
105   --ok-label "Weiter" \   --ok-label "Weiter" \
106   --stdout \   --stdout \
107   --menu "\nWaehlen Sie die Installations-Methode" 14 70 5 \   --menu "\nWaehlen Sie die Installations-Methode" 14 70 5 \
108   "1" "Normale IDE-Disk" \   "1" "Normale IDE-Disk" \
109   "2" "Flash-Speicher"`   "2" "Flash-Speicher")
110   RES=$?   RES=$?
111   if [ "$RES" == "1" ];then   [[ ${RES} -eq 1 ]] && return 1
112   return 1   if [[ ${RES} -eq 0 ]]
113   fi   then
114   if [ "$RES" == "0" ];then   case "${i}" in
115   case "$I" in           "1") run_install_normal ;;
116           "1")   "2") run_install_flash ;;
  run_install_normal  
  ;;  
  "2")  
  run_install_flash  
  ;;  
117   esac   esac
118   fi   fi
119  }  }
120    
121  dialog_setup_hdd_found_manuell() {  dialog_setup_hdd_found_manuell()
122   if [ ! -z "$installdevs" ]  {
123   then   local i
124   installdevs=""  
125   fi   [[ ! -z ${installdevs} ]] && installdevs=""
126    
127   echo "dialog \\"  > /tmp/hddtmp.sh   echo "dialog \\"  > /tmp/hddtmp.sh
128   echo "--backtitle \"$TITLE\" \\" >> /tmp/hddtmp.sh   echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh
129   echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh   echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh
130   echo "--stdout \\" >> /tmp/hddtmp.sh   echo "--stdout \\" >> /tmp/hddtmp.sh
131   echo "--colors \\" >> /tmp/hddtmp.sh   echo "--colors \\" >> /tmp/hddtmp.sh
132   echo "--msgbox \"Gefundene Hardware:\n\n \\" >> /tmp/hddtmp.sh   echo "--msgbox \"Gefundene Hardware:\n\n \\" >> /tmp/hddtmp.sh
133   echo " Festplatten:\n \\" >> /tmp/hddtmp.sh   echo " Festplatten:\n \\" >> /tmp/hddtmp.sh
134    
135   if [ ! -z "$scsidisks" ]   if [[ ! -z ${scsidisks} ]]
136   then   then
137   for I in $scsidisks   for i in ${scsidisks}
138   do   do
139   if [ "$I" != "$cdromdev" ]   if [[ ${i} != ${cdromdev} ]]
140   then   then
141   echo " \\Z7SCSI: \\Z3$I\\Zn\n \\" >> /tmp/hddtmp.sh   echo " \\Z7SCSI: \\Z3${i}\\Zn\n \\" >> /tmp/hddtmp.sh
142   installdevs="$installdevs $I"   installdevs="${installdevs} ${i}"
143   fi   fi
144   done   done
145   fi   fi
146    
147   if [ ! -z "$idedisks" ]   if [[ ! -z ${idedisks} ]]
148   then   then
149   for I in $idedisks   for i in ${idedisks}
150   do   do
151   if [ "$I" != "$cdromdev" ]   if [[ ${i} != ${cdromdev} ]]
152   then   then
153   echo " \\Z7IDE:  \\Z3$I\\Zn\n \\" >> /tmp/hddtmp.sh   echo " \\Z7IDE:  \\Z3${i}\\Zn\n \\" >> /tmp/hddtmp.sh
154   installdevs="$installdevs $I"   installdevs="${installdevs} ${i}"
155   fi   fi
156   done   done
157   fi   fi
158    
159   if [ ! -z "$cdromdev" ]   if [[ ! -z ${cdromdev} ]]
160   then   then
161   echo " \n \\" >> /tmp/hddtmp.sh   echo " \n \\" >> /tmp/hddtmp.sh
162   echo " \\Z7andere Laufwerke:\n \\" >> /tmp/hddtmp.sh   echo " \\Z7andere Laufwerke:\n \\" >> /tmp/hddtmp.sh
163   echo " CDROM: \\Z3$cdromdev\\Zn\n \\" >> /tmp/hddtmp.sh   echo " CDROM: \\Z3${cdromdev}\\Zn\n \\" >> /tmp/hddtmp.sh
164   fi   fi
165   echo " \" 13 70" >> /tmp/hddtmp.sh   echo " \" 13 70" >> /tmp/hddtmp.sh
166   chmod a+x /tmp/hddtmp.sh   chmod a+x /tmp/hddtmp.sh
167   /tmp/hddtmp.sh   /tmp/hddtmp.sh
168  }  }
169    
170  dialog_setup_hdd_partitions_manuell() {  dialog_setup_hdd_partitions_manuell()
171   if [ -z "$installdevs" ]  {
172     local i
173    
174     if [[ -z ${installdevs} ]]
175   then   then
176   dialog \   dialog \
177   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
178   --ok-label "Beenden" \   --ok-label "Beenden" \
179   --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70   --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70
180   exit 1   exit 1
181   else   else
182    
183   echo "dialog \\" > /tmp/hddtmp.sh   echo "dialog \\" > /tmp/hddtmp.sh
184   echo "--backtitle \"$TITLE\" \\" >> /tmp/hddtmp.sh   echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh
185   echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh   echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh
186   echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh   echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh
187   echo "--stdout \\" >> /tmp/hddtmp.sh   echo "--stdout \\" >> /tmp/hddtmp.sh
188   echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh   echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh
189    
190   for I in $installdevs   for i in ${installdevs}
191   do   do
192   echo "\"$I\" \"\" \\" >> /tmp/hddtmp.sh   echo "\"${i}\" \"\" \\" >> /tmp/hddtmp.sh
193   done   done
194   echo -e "\n" >> /tmp/hddtmp.sh   echo -e "\n" >> /tmp/hddtmp.sh
195    
196   chmod a+x /tmp/hddtmp.sh   chmod a+x /tmp/hddtmp.sh
197   HDD="`/tmp/hddtmp.sh`"   HDD="$(/tmp/hddtmp.sh)"
198   RES=$?   RES=$?
199   if [ "$RES" == "1" ]   [[ ${RES} -eq 1 ]] && return 1
200   then   if [[ ${RES} -eq 0 ]]
  return 1  
  fi  
  if [ "$RES" == "0" ]  
201   then   then
202   dialog_setup_hdd_info   dialog_setup_hdd_info
203   setup_hdd_partitions_manuell   setup_hdd_partitions_manuell
# Line 214  dialog_setup_hdd_partitions_manuell() { Line 205  dialog_setup_hdd_partitions_manuell() {
205   fi   fi
206  }  }
207    
208  dialog_setup_hdd_partitions_manuell_flash() {  dialog_setup_hdd_partitions_manuell_flash()
209   if [ -z "$installdevs" ]  {
210     local i
211    
212     if [[ -z ${installdevs} ]]
213   then   then
214   dialog \   dialog \
215   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
216   --ok-label "Beenden" \   --ok-label "Beenden" \
217   --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70   --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70
218   exit 1   exit 1
219   else   else
220    
221   echo "dialog \\" > /tmp/hddtmp.sh   echo "dialog \\" > /tmp/hddtmp.sh
222   echo "--backtitle \"$TITLE\" \\" >> /tmp/hddtmp.sh   echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh
223   echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh   echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh
224   echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh   echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh
225   echo "--stdout \\" >> /tmp/hddtmp.sh   echo "--stdout \\" >> /tmp/hddtmp.sh
226   echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh   echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh
227    
228   for I in $installdevs   for i in ${installdevs}
229   do   do
230   echo "\"$I\" \"\" \\" >> /tmp/hddtmp.sh   echo "\"${i}\" \"\" \\" >> /tmp/hddtmp.sh
231   done   done
232   echo -e "\n" >> /tmp/hddtmp.sh   echo -e "\n" >> /tmp/hddtmp.sh
233    
234   chmod a+x /tmp/hddtmp.sh   chmod a+x /tmp/hddtmp.sh
235   HDD="`/tmp/hddtmp.sh`"   HDD="$(/tmp/hddtmp.sh)"
236   RES=$?   RES=$?
237   if [ "$RES" == "1" ]   [[ ${RES} -eq 1 ]] && return 1
238   then   if [[ ${RES} -eq 0 ]]
  return 1  
  fi  
  if [ "$RES" == "0" ]  
239   then   then
240   dialog_setup_hdd_info_flash   dialog_setup_hdd_info_flash
241   setup_hdd_partitions_manuell_flash   setup_hdd_partitions_manuell_flash
# Line 252  dialog_setup_hdd_partitions_manuell_flas Line 243  dialog_setup_hdd_partitions_manuell_flas
243   fi   fi
244  }  }
245    
246  dialog_setup_hdd_partitions_silent() {  dialog_setup_hdd_format()
247    {
248   dialog \   dialog \
249   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
  --infobox "Erstelle Partitionen ..." 3 70  
 }  
   
 dialog_setup_hdd_format() {  
  dialog \  
  --backtitle "$TITLE" \  
250   --infobox "Erstelle Datei-Systeme ..." 3 70   --infobox "Erstelle Datei-Systeme ..." 3 70
251  }  }
252    
253  dialog_install_settings() {  dialog_install_settings()
254    {
255   dialog \   dialog \
256   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
257   --infobox "Speichere System-Einstellungen ..." 3 70   --infobox "Speichere System-Einstellungen ..." 3 70
258  }  }
259    
260  dialog_install_system_image() {  dialog_install_system_image()
261    {
262   dialog \   dialog \
263   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
264   --gauge "Kopiere System-Image ..." 6 80   --gauge "Kopiere System-Image ..." 6 80
265  }  }
266    
267  dialog_install_meter() {  dialog_install_meter()
268   while [ "${CURRENTLINE}" != "${TOTALLINES}" ] ; do  {
269   CURRENTLINE=`grep --count . /tmp/install.log`   while [[ ${CURRENTLINE} != ${TOTALLINES} ]]
270   PERCENT=`expr ${CURRENTLINE} \* 100 / ${TOTALLINES}`   do
271     CURRENTLINE=$(grep --count . /tmp/install.log)
272     PERCENT=$(expr ${CURRENTLINE} \* 100 / ${TOTALLINES})
273   echo ${PERCENT}   echo ${PERCENT}
274   sleep 1   sleep 1
275   done   done
# Line 288  dialog_install_meter() { Line 278  dialog_install_meter() {
278  }  }
279    
280    
281  dialog_install_bootsector() {  dialog_install_bootsector()
282    {
283   dialog \   dialog \
284   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
285   --infobox "Schreibe den Bootsektor ..." 3 70   --infobox "Schreibe den Bootsektor ..." 3 70
286  }  }
287    
288  dialog_install_alxconfig() {  dialog_install_successful()
289    {
290   dialog \   dialog \
291   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
  --infobox "Installiere die ALX Setup-Tools ..." 3 70  
 }  
   
 dialog_install_kernel_image() {  
  dialog \  
  --backtitle "$TITLE" \  
  --infobox "Installiere den System-Kernel ..." 3 70  
   
 }  
   
 dialog_install_hotfixes() {  
  dialog \  
  --backtitle "$TITLE" \  
  --infobox "Installiere Hotfixes ..." 3 70  
   
 }  
   
 dialog_install_successful() {  
  dialog \  
  --backtitle "$TITLE" \  
292   --colors \   --colors \
293   --msgbox "Die Installation war \Z2erfolgreich\Zn." 5 81   --msgbox "Die Installation war \Z2erfolgreich\Zn." 5 81
294  }  }
295    
296  dialog_install_failure() {  dialog_install_failure()
297    {
298   dialog \   dialog \
299   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
300   --colors \   --colors \
301   --msgbox "Die Installation ist \Z1Fehlgeschlagen\Zn.\n\n\   --msgbox "Die Installation ist \Z1Fehlgeschlagen\Zn.\n\n\
302   Fehler bei $ERROR, RetVal: $RETVAL \   Fehler bei ${ERROR}, RetVal: ${RETVAL} \
303   " 10 81   " 10 81
304  }  }
305    
306  dialog_install_method() {  dialog_main()
307    {
  METHOD=`dialog \  
  --backtitle "$TITLE" \  
  --cancel-label "Abbrechen" \  
  --ok-label "Weiter" \  
  --stdout \  
  --menu "Konfiguration" 14 70 5 \  
  "1" "Normale Installation" \  
  "2" "Silent Installation"`  
  RES=$?  
  if [ "$RES" == "1" ];then  
  return 1  
  fi  
  if [ "$RES" == "0" ];then  
  case "$METHOD" in  
          "1")  
  run_install_normal  
  ;;  
  "2")  
  dialog_warning  
  run_install_silent  
      ;;  
  esac  
  fi  
 }  
   
 dialog_main() {  
308   METHOD=0   METHOD=0
309    
310   while [ $METHOD -le 2 ]   while [[ ${METHOD} -le 2 ]]
311   do   do
312   METHOD=`dialog \   METHOD=$(dialog \
313   --backtitle "$TITLE" \   --backtitle "${TITLE}" \
314   --no-cancel \   --no-cancel \
315   --ok-label "Weiter" \   --ok-label "Weiter" \
316   --stdout \   --stdout \
# Line 371  dialog_main() { Line 318  dialog_main() {
318   "1" "AutoSta_LX installieren" \   "1" "AutoSta_LX installieren" \
319   "2" "Uebersicht gefundener Laufwerke" \   "2" "Uebersicht gefundener Laufwerke" \
320   "3" "Beenden und neustarten" \   "3" "Beenden und neustarten" \
321   "4" "Beenden und eine Shell starten" `   "4" "Beenden und eine Shell starten")
322   RES=$?   RES=$?
323   if [ "$RES" == "1" ];then   if [[ ${RES} -eq 1 ]] && exit 1
324   exit 1   if [[ ${RES} -eq 0 ]]
325   fi   then
326   if [ "$RES" == "0" ];then   case ${METHOD} in
327   case "$METHOD" in           "1") dialog_setup_system_menu ;;
328           "1")   "2") dialog_setup_hdd_found_manuell ;;
329   #only for now later it will be used again   "3") install_do_reboot ;;
330   #with 6.1-r2 only one install method available   "4") /bin/bash --login -i ;;
  #dialog_install_method  
  #run_install_normal  
  dialog_setup_system_menu  
  ;;  
  "2") dialog_setup_hdd_found_manuell  
  ;;  
  "3") install_do_reboot  
  ;;  
  "4") /bin/bash --login -i  
  ;;  
331   esac   esac
332   fi   fi
333   done   done
# Line 399  dialog_main() { Line 336  dialog_main() {
336  #################################################  #################################################
337  # Install Komandos #  # Install Komandos #
338  #################################################  #################################################
339  setup_hdd_partitions_manuell() {  setup_hdd_partitions_manuell()
340    {
341   BOOTHDD="${HDD}1"   BOOTHDD="${HDD}1"
342   SWAPHDD="${HDD}2"   SWAPHDD="${HDD}2"
343   ROOTHDD="${HDD}3"   ROOTHDD="${HDD}3"
344    
345   ## hdds partitionieren manuell   ## hdds partitionieren manuell
346   cfdisk $HDD || die   cfdisk ${HDD} || die
347  }  }
348    
349  setup_hdd_partitions_manuell_flash() {  setup_hdd_partitions_manuell_flash()
350    {
351   ROOTHDD="${HDD}1"   ROOTHDD="${HDD}1"
352    
353   ## hdds partitionieren manuell   ## hdds partitionieren manuell
354   cfdisk $HDD || die   cfdisk ${HDD} || die
 }  
   
 setup_hdd_partitions_silent() {  
  ## hdds löschen  
  dd if=/dev/zero of=$HDD bs=1024k count=1 || die  
  ## hdds partitionieren silent  
  fdisk $HDD < $CONFIGS_TEMPLATE/fdisksettings #1> /dev/null 3> /dev/null || die  
   
  read  
355  }  }
356    
357  setup_hdd_format() {  setup_hdd_format()
358   mkswap $SWAPHDD || die  {
359   mke2fs -j -q $BOOTHDD || die   mkswap ${SWAPHDD} || die
360   mke2fs -j -q $ROOTHDD || die   mke2fs -j -q ${BOOTHDD} || die
361     mke2fs -j -q ${ROOTHDD} || die
362  }  }
363    
364  setup_hdd_format_flash() {  setup_hdd_format_flash()
365  # mkswap $SWAPHDD || die  {
366  # mke2fs -j -q $BOOTHDD || die   mke2fs -j -q ${ROOTHDD} || die
  mke2fs -j -q $ROOTHDD || die  
367  }  }
368    
369  install_mount_rootfs() {  install_mount_rootfs()
370   swapon $SWAPHDD || die  {
371   mount $ROOTHDD $INSTALLPATH || die   swapon ${SWAPHDD} || die
372   install -d $INSTALLPATH/boot || die   mount ${ROOTHDD} ${INSTALLPATH} || die
373   mount $BOOTHDD $INSTALLPATH/boot || die   install -d ${INSTALLPATH}/boot || die
374   cd $INSTALLPATH || die   mount ${BOOTHDD} ${INSTALLPATH}/boot || die
375     cd ${INSTALLPATH} || die
376  }  }
377    
378  install_mount_rootfs_flash() {  install_mount_rootfs_flash()
379  # swapon $SWAPHDD || die  {
380   mount $ROOTHDD $INSTALLPATH || die   mount ${ROOTHDD} ${INSTALLPATH} || die
381   install -d $INSTALLPATH/boot || die   install -d ${INSTALLPATH}/boot || die
382  # mount $BOOTHDD $INSTALLPATH/boot || die   cd ${INSTALLPATH} || die
  cd $INSTALLPATH || die  
383  }  }
384    
385  install_system_image() {  install_system_image()
386   #tar xvzpf $CDPATH/system/autosta_lx.tar.gz  {
387   tar xvjpf ${CDPATH}/system/${CDIMAGENAME} -C ${INSTALLPATH}   tar xvjpf ${CDPATH}/system/${CDIMAGENAME} -C ${INSTALLPATH}
388  }  }
389    
390    install_bootsector_chroot()
391  install_kernel_image() {  {
  declare -i CPUTYPE=`cat /proc/cpuinfo |grep "cpu family"|cut -d ' ' -f3`  
   
  if [ $CPUTYPE -le 5 ];then  
                 #echo -e "\033[1;6m\033[36m""i386 Architektur gefunden.""\033[0m"  
                 #echo -e "Installiere i386 Kernel..."  
   
  lastdir="`pwd`"  
   
  mkdir -p $INSTALLPATH/INSTALL/kernel || die  
  cd $INSTALLPATH/INSTALL/kernel || die  
  tar xzpf $CDPATH/kernels/kernel-i386.tar.gz || die  
  source $INSTALLPATH/INSTALL/kernel/kernelversion || die  
   
  cp -aRf $INSTALLPATH/INSTALL/kernel/$KRNLIB $INSTALLPATH/lib/modules || die  
  cp -aRf $INSTALLPATH/INSTALL/kernel/$KRNIMG $INSTALLPATH/boot || die  
  cp -aRf $INSTALLPATH/INSTALL/kernel/$KRNINITRD $INSTALLPATH/boot || die  
  cp -aRf $INSTALLPATH/INSTALL/kernel/kernelversion $INSTALLPATH/boot || die  
   
  cd $lastdir || die  
   
         elif [ $CPUTYPE -ge 6 ];then  
                 #echo -e "\033[1;6m\033[36m""i686 Architektur gefunden.""\033[0m"  
                 #echo -e "Installiere i686 Kernel..."  
   
  lastdir="`pwd`"  
   
  mkdir -p $INSTALLPATH/INSTALL/kernel || die  
  cd $INSTALLPATH/INSTALL/kernel || die  
  tar xzpf $CDPATH/kernels/kernel-i686.tar.gz || die  
  source $INSTALLPATH/INSTALL/kernel/kernelversion || die  
   
  cp -aRf $INSTALLPATH/INSTALL/kernel/$KRNLIB $INSTALLPATH/lib/modules || die  
  cp -aRf $INSTALLPATH/INSTALL/kernel/$KRNIMG $INSTALLPATH/boot || die  
  cp -aRf $INSTALLPATH/INSTALL/kernel/$KRNINITRD $INSTALLPATH/boot || die  
  cp -aRf $INSTALLPATH/INSTALL/kernel/kernelversion $INSTALLPATH/boot || die  
   
  cd $lastdir || die  
         fi  
 }  
   
 install_bootsector() {  
392   ### grubconf schreiben   ### grubconf schreiben
393   source $INSTALLPATH/INSTALL/kernel/kernelversion   source ${INSTALLPATH}/boot/kernelversion
   
  if [ -z $KRNVER ]  
  then  
  KRNVER="AutoSta_LX"  
  fi  
   
  if [ -z $KRNIMG ]  
  then  
  KRNIMG="bzImage"  
  fi  
   
  if [ -z $KRNINITRD ]  
  then  
  KRNINITRD="initrd"  
  fi  
   
  echo -e "default 0" > $INSTALLPATH/boot/grub/grub.conf || die  
  echo -e "timeout 03" >> $INSTALLPATH/boot/grub/grub.conf ||die  
  #no support for splash image in 6.1-r2  
  #echo -e "splashimage=(hd0,0)/boot/grub/splash.xpm.gz" >> $INSTALLPATH/boot/grub/grub.conf || die  
  echo -e "\ntitle=${KRNVER}" >> $INSTALLPATH/boot/grub/grub.conf || die  
  echo -e "root (hd0,0)" >> $INSTALLPATH/boot/grub/grub.conf || die  
   
  #s3 cards don't support this  
  #echo -e "kernel (hd0,0)/boot/${KRNIMG} root=$ROOTHDD vga=0x317 video:vesa:ywrap,mtrr splash=silent quiet" >> $INSTALLPATH/boot/grub/grub.conf || die  
  #that's more safer:  
  echo -e "kernel (hd0,0)/boot/${KRNIMG} root=$ROOTHDD quiet" >> $INSTALLPATH/boot/grub/grub.conf || die  
   
  #not needed without bootsplash support  
  #echo -e "initrd=/boot/${KRNINITRD}" >> $INSTALLPATH/boot/grub/grub.conf || die  
   
  ### bootsector schreiben  
  #grub --no-floppy < $CONFIGS_TEMPLATE/grubsettings || die  
  /sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null || die  
 root (hd0,0)  
 setup (hd0)  
 quit  
 EOF  
 }  
   
 install_bootsector_chroot() {  
  ### grubconf schreiben  
  #source $INSTALLPATH/INSTALL/kernel/kernelversion  
  source $INSTALLPATH/boot/kernelversion  
394    
395   #for alx only   #for alx only
396   if [ -e ${INSTALLPATH}/etc/alx_version ]   if [ -e ${INSTALLPATH}/etc/alx_version ]
# Line 555  install_bootsector_chroot() { Line 400  install_bootsector_chroot() {
400   KRNVER="ALX-${ALXVER}"   KRNVER="ALX-${ALXVER}"
401   ALXVER="${OLD_ALXVER}"   ALXVER="${OLD_ALXVER}"
402   fi   fi
   
  if [ -z "$KRNVER" ]  
  then  
  KRNVER="AutoSta_LX"  
  fi  
403    
404   if [ -z "$KRNIMG" ]   [[ -z ${KRNVER} ]] && KRNVER="AutoSta_LX"
405   then   [[ -z ${KRNINITRD} ]] && KRNINITRD="initrd"
  KRNIMG="bzImage"  
  fi  
406    
407   if [ -z "$KRNINITRD" ]   echo "default 0" > ${INSTALLPATH}/boot/grub/grub.conf || die
408   then   echo "timeout 0" >> ${INSTALLPATH}/boot/grub/grub.conf ||die
  KRNINITRD="initrd"  
  fi  
409    
410   echo -e "default 0" > $INSTALLPATH/boot/grub/grub.conf || die   echo -e "\ntitle=${KRNVER}" >> ${INSTALLPATH}/boot/grub/grub.conf || die
411   echo -e "timeout 0" >> $INSTALLPATH/boot/grub/grub.conf ||die   echo "root (hd0,0)" >> ${INSTALLPATH}/boot/grub/grub.conf || die
   
  #no support for splash image in 6.1-r2  
  #echo -e "splashimage=(hd0,0)/boot/grub/splash.xpm.gz" >> $INSTALLPATH/boot/grub/grub.conf || die  
412    
413   echo -e "\ntitle=${KRNVER}" >> $INSTALLPATH/boot/grub/grub.conf || die   echo "kernel /boot/vmlinuz root=${ROOTHDD} quiet" >> ${INSTALLPATH}/boot/grub/grub.conf || die
414   echo -e "root (hd0,0)" >> $INSTALLPATH/boot/grub/grub.conf || die   echo "initrd /boot/initrd" >> ${INSTALLPATH}/boot/grub/grub.conf || die
415    
416   #s3 cards don't support this   # bootsector schreiben chrooted schreiben (lfs/magellan)
417   #echo -e "kernel (hd0,0)/boot/${KRNIMG} root=$ROOTHDD vga=0x317 video:vesa:ywrap,mtrr splash=silent quiet" >> $INSTALLPATH/boot/grub/grub.conf || die   cat > ${INSTALLPATH}/root/.bashrc << CHROOTEOF
  #that's more safer:  
  echo -e "kernel (hd0,0)/boot/${KRNIMG} root=$ROOTHDD quiet" >> $INSTALLPATH/boot/grub/grub.conf || die  
   
  #not needed without bootsplash support  
  #echo -e "initrd=/boot/${KRNINITRD}" >> $INSTALLPATH/boot/grub/grub.conf || die  
   
   
  ### bootsector schreiben chrooted schreiben (gentoo)  
  if [ -f $INSTALLPATH/sbin/grub ]  
  then  
  cat > $INSTALLPATH/root/.bashrc << CHROOTEOF  
 /sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null  
 root (hd0,0)  
 setup (hd0)  
 quit  
 EOF  
 exit 0  
 CHROOTEOF  
  fi  
   
  ### bootsector schreiben chrooted schreiben (lfs/magellan)  
  if [ -f $INSTALLPATH/usr/sbin/grub ]  
  then  
  cat > $INSTALLPATH/root/.bashrc << CHROOTEOF  
418  /usr/sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null  /usr/sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null
419  root (hd0,0)  root (hd0,0)
420  setup (hd0)  setup (hd0)
421  quit  quit
422  EOF  EOF
423    echo "MODULES=\"ext3 amd74xx piix sis5513 via82cxxx\" > /etc/conf.d/mkinitrd
424    mkinitrd -f /boot/$(readlink /boot/initrd) $(readlink /boot/vmlinuz | sed "s:kernel-::g")
425  exit 0  exit 0
426  CHROOTEOF  CHROOTEOF
  fi  
   
  ##enters chroot  
  mount -t proc none $INSTALLPATH/proc  
  # bind /dev to get the devices right,  
  # if bootet from a 2.6 kernel with udev  
  mount -o bind /dev $INSTALLPATH/dev  
  chroot $INSTALLPATH /bin/bash --rcfile /root/.bashrc -i  
  umount $INSTALLPATH/proc  
  umount $INSTALLPATH/dev  
  rm $INSTALLPATH/root/.bashrc  
 }  
   
 install_alxconfig(){  
  lastdir="`pwd`"  
   
  mkdir -p $INSTALLPATH/opt/alx-config || die  
  cd $INSTALLPATH/opt/alx-config || die  
  tar xzpf $CDPATH/alx-config/alx-config.tar.gz || die  
  chmod a+x $INSTALLPATH/opt/alx-config/Configurator/config_functions.sh || die  
  chmod a+x $INSTALLPATH/opt/alx-config/Configurator/config_menu.sh || die  
  ln -sf /opt/alx-config/Configurator/config_menu.sh $INSTALLPATH/bin/ALXConfig || die  
   
  cd $lastdir || die  
 }  
427    
428     ## enters chroot
429  install_system_settings(){   mount -t proc proc ${INSTALLPATH}/proc
430   ### schreibe fstab   mount -t sysfs sysfs ${INSTALLPATH}/sysfs
431   echo -e "$BOOTHDD\t/boot\text3\tnoatime,noauto\t1 1" > $INSTALLPATH/etc/fstab || die   mount -o bind /dev ${INSTALLPATH}/dev
432   echo -e "$ROOTHDD\t/\text3\tnoatime\t0 0" >> $INSTALLPATH/etc/fstab || die   chroot ${INSTALLPATH} /bin/bash --rcfile /root/.bashrc -i
433   echo -e "$SWAPHDD\tswap\tswap\tpri=1\t0 0" >> $INSTALLPATH/etc/fstab || die   umount ${INSTALLPATH}/proc
434   echo -e "none\t/proc\tproc\tdefaults\t0 0" >> $INSTALLPATH/etc/fstab || die   umount ${INSTALLPATH}/sys
435     umount ${INSTALLPATH}/dev
436   #deprecated   rm ${INSTALLPATH}/root/.bashrc
437   #echo -e "devpts\t/dev/pts\tdevpts\tgid=4,mode=620\t0 0" >> $INSTALLPATH/etc/fstab || die  }
438    
439   echo -e "none\t/dev/shm\ttmpfs\tdefaults\t0 0" >> $INSTALLPATH/etc/fstab || die  install_system_settings()
440   echo -e "none\t/proc/bus/usb\tusbfs\tdefaults\t0 0" >> $INSTALLPATH/etc/fstab || die  {
441     # schreibe fstab
442     echo -e "${BOOTHDD}\t/boot\text3\tnoatime,noauto\t1 1" > ${INSTALLPATH}/etc/fstab || die
443     echo -e "${ROOTHDD}\t/\text3\tnoatime\t0 0" >> ${INSTALLPATH}/etc/fstab || die
444     echo -e "${SWAPHDD}\tswap\tswap\tpri=1\t0 0" >> ${INSTALLPATH}/etc/fstab || die
445     echo -e "proc\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
446     echo -e "shm\t/dev/shm\ttmpfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
447    }
448    
449    install_system_settings_flash()
450    {
451     # schreibe fstab
452     echo -e "${ROOTHDD}\t/\text3\tnoatime\t0 0" > ${INSTALLPATH}/etc/fstab || die
453     echo -e "proc\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
454     echo -e "shm\t/dev/shm\ttmpfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
455  }  }
456    
457  install_system_settings_flash(){  install_umount_rootfs()
458   ### schreibe fstab  {
 # echo -e "$BOOTHDD\t/boot\text3\tnoatime,noauto\t1 1" > $INSTALLPATH/etc/fstab || die  
  echo -e "$ROOTHDD\t/\text3\tnoatime\t0 0" > $INSTALLPATH/etc/fstab || die  
 # echo -e "$SWAPHDD\tswap\tswap\tpri=1\t0 0" >> $INSTALLPATH/etc/fstab || die  
  echo -e "none\t/proc\tproc\tdefaults\t0 0" >> $INSTALLPATH/etc/fstab || die  
   
  #deprecated  
  #echo -e "devpts\t/dev/pts\tdevpts\tgid=4,mode=620\t0 0" >> $INSTALLPATH/etc/fstab || die  
   
  echo -e "none\t/dev/shm\ttmpfs\tdefaults\t0 0" >> $INSTALLPATH/etc/fstab || die  
  echo -e "none\t/proc/bus/usb\tusbfs\tdefaults\t0 0" >> $INSTALLPATH/etc/fstab || die  
 }  
 install_hotfixes(){  
  if [ -f $CDPATH/hotfixes/hotfixes.sh ]  
  then  
  dialog_hotfixes  
  sleep1  
  $CDPATH/hotfixes/hotfixes.sh  
  fi  
 }  
   
 install_umount_rootfs() {  
459   cd /   cd /
460   umount $INSTALLPATH/boot || die   umount ${INSTALLPATH}/boot || die
461   umount $INSTALLPATH || die   umount ${INSTALLPATH} || die
462   swapoff $SWAPHDD || die   swapoff ${SWAPHDD} || die
463  }  }
464    
465  install_umount_rootfs_flash() {  install_umount_rootfs_flash()
466    {
467   cd /   cd /
468  # umount $INSTALLPATH/boot || die   umount ${INSTALLPATH} || die
  umount $INSTALLPATH || die  
 # swapoff $SWAPHDD || die  
469  }  }
470    
471  install_do_reboot() {  install_do_reboot()
472    {
  #only for now later it will be used again  
  #with 6.1-r2 these options are not available  
  #cd /  
  #umount $CDPATH  
  #eject  
  #clear  
   
473   reboot   reboot
474  }  }
475    
# Line 706  install_do_reboot() { Line 477  install_do_reboot() {
477  #     Install Ablauf Scripte #  #     Install Ablauf Scripte #
478  #################################################  #################################################
479    
480  run_install_normal() {  run_install_normal()
481   #only for now later it will be used again  {
  #with 6.1-r2 only one install method available  
  #dialog_setup_hdd_menu  
482   dialog_setup_hdd_found_manuell   dialog_setup_hdd_found_manuell
483    
484   dialog_setup_hdd_partitions_manuell   dialog_setup_hdd_partitions_manuell
485   dialog_setup_hdd_format   dialog_setup_hdd_format
486   setup_hdd_format > /dev/null   setup_hdd_format > /dev/null
487   install_mount_rootfs   install_mount_rootfs
488   (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image   (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image
489    
  #only for now later it will be used again  
  #with 6.1-r2 variable kernels are not available  
  #dialog_install_kernel_image  
  #install_kernel_image  
   
490   dialog_install_bootsector   dialog_install_bootsector
491   install_bootsector_chroot   install_bootsector_chroot
492    
  #only for now later it will be used again  
  #with 6.1-r2 highest version of alx-config is already included  
  #dialog_install_alxconfig  
  #sleep 1  
  #install_alxconfig  
   
493   dialog_install_settings   dialog_install_settings
494   sleep 1   sleep 1
495   install_system_settings   install_system_settings
  install_hotfixes  
496   install_umount_rootfs   install_umount_rootfs
497   dialog_install_successful   dialog_install_successful
498  }  }
499    
500  run_install_flash() {  run_install_flash()
501   #only for now later it will be used again  {
  #with 6.1-r2 only one install method available  
  #dialog_setup_hdd_menu  
502   dialog_setup_hdd_found_manuell   dialog_setup_hdd_found_manuell
503    
504   dialog_setup_hdd_partitions_manuell_flash   dialog_setup_hdd_partitions_manuell_flash
505   dialog_setup_hdd_format   dialog_setup_hdd_format
506   setup_hdd_format_flash > /dev/null   setup_hdd_format_flash > /dev/null
507   install_mount_rootfs_flash   install_mount_rootfs_flash
508   (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image   (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image
509    
  #only for now later it will be used again  
  #with 6.1-r2 variable kernels are not available  
  #dialog_install_kernel_image  
  #install_kernel_image  
   
510   dialog_install_bootsector   dialog_install_bootsector
511   install_bootsector_chroot   install_bootsector_chroot
512    
  #only for now later it will be used again  
  #with 6.1-r2 highest version of alx-config is already included  
  #dialog_install_alxconfig  
  #sleep 1  
  #install_alxconfig  
   
513   dialog_install_settings   dialog_install_settings
514   sleep 1   sleep 1
515   install_system_settings_flash   install_system_settings_flash
  install_hotfixes  
516   install_umount_rootfs_flash   install_umount_rootfs_flash
517   dialog_install_successful   dialog_install_successful
518  }  }
519    
520  run_install_silent() {  dialog_main
  echo "starting silent install ..."  
  sleep 1  
 }  
   
 run_install_unattended() {  
  echo "starting unattended install ..."  
  sleep 1  
 }  
   
 if [ "$1" == "unattended" ]  
 then  
  run_install_unattended  
 else  
  dialog_main  
 fi  
521    
522  exit 0  exit 0

Legend:
Removed from v.280  
changed lines
  Added in v.523