Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 520 - (hide annotations) (download) (as text)
Fri Jun 27 22:27:46 2008 UTC (15 years, 10 months ago) by niro
Original Path: alx-src/trunk/alxinstall-ng/bin/alxinstall-ng.sh
File MIME type: application/x-sh
File size: 16089 byte(s)
-increase version and many style updates

1 niro 258 #!/bin/sh
2     #
3 niro 520 # $Header: /home/cvsd/alx-cvs/alx-src/alxinstall-ng/bin/alxinstall-ng.sh,v 1.7 2008-06-27 22:27:46 niro Exp $
4 niro 258 #
5     # AutoSta_LX Installation Script
6     #
7     # Niels Rogalla <niro@magellan-linux.de>
8     # <rogalla@augusta-bochum.de>
9     #
10     #
11     # Install Navigation Gui
12     #
13    
14     #images: (get ${CDIMAGENAME})
15     source /mnt/cdrom/system/images.conf
16    
17     #Includes
18     source /usr/lib/alxinstall-ng/functions/findhdd.sh > /dev/null
19     ### bugfix ###############################
20     cdromdev="`echo $cdromdev|sed -e 's/ //'`"
21     ########################################
22    
23     ### System/Config Version
24 niro 520 VERSION="0.3"
25 niro 258 TITLE="alxinstall-ng - ${VERSION}"
26    
27     #CONFIGS_TEMPLATE="/opt/alx-config/configs"
28    
29     CDPATH="/mnt/cdrom"
30     INSTALLPATH="/mnt/magellan"
31    
32     ### WICHTIG: anzahl lines in der autosta_lx.tar.gz -1
33     CURRENTLINE=0
34     #TOTALLINES=11072 # -> now in images.conf
35    
36    
37     #################################################
38     # DIALOG BOXEN #
39     #################################################
40    
41 niro 520 die()
42     {
43 niro 258 ERROR=$1
44     RETVAL=$?
45     dialog_install_failure
46     exit 1
47     }
48    
49 niro 520 dialog_warning()
50     {
51 niro 258 dialog \
52 niro 520 --backtitle "${TITLE}" \
53 niro 258 --colors \
54     --defaultno \
55     --yesno "\Z1 !!! Achtung !!! \Zn\n\n\
56     Diese Festplatte wird unwiederruflich geloescht werden.\n\n\
57     Soll ich wirklich fortfahren ?" 10 70
58     RES=$?
59 niro 520 if [[ ${RES} -eq 1 ]]
60 niro 258 then
61     clear
62     echo "Der Vorgang wurde abgebrochen."
63     exit 1
64     fi
65     }
66    
67 niro 520 dialog_setup_hdd_info()
68     {
69     local SHDD="$(echo ${HDD} | sed 's/\/dev\///')"
70 niro 258
71     dialog \
72     --colors \
73     --title "[ Festplatten Partitionierung ]" \
74 niro 520 --backtitle "${TITLE}" \
75 niro 258 --ok-label "Weiter" \
76     --msgbox "\nBitte legen Sie 3 Partitionen an.\n\n\
77     [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit ca. 50MB\n\
78     [ \Z3${SHDD}2\Zn ] Typ: \Z3Linux Swap\Zn mit ca. 256MB\n\
79     [ \Z3${SHDD}3\Zn ] Typ: \Z3Linux \Zn mit dem Rest (min. 256MB)\n\n\
80     Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81
81     }
82    
83 niro 520 dialog_setup_hdd_info_flash()
84     {
85     local SHDD="$(echo $HDD | sed 's/\/dev\///')"
86 niro 258
87 niro 280 dialog \
88     --colors \
89     --title "[ Festplatten Partitionierung ]" \
90 niro 520 --backtitle "${TITLE}" \
91 niro 280 --ok-label "Weiter" \
92     --msgbox "\nBitte legen Sie 1 Partition an.\n\n\
93     [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit dem gesamten Speicher\n\
94     Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81
95     }
96    
97 niro 520 dialog_setup_system_menu()
98     {
99     local i
100 niro 280
101 niro 520 i=$(dialog \
102     --backtitle "${TITLE}" \
103 niro 258 --title "[ Festplatten Partitionierung ]" \
104     --cancel-label "Abbrechen" \
105     --ok-label "Weiter" \
106     --stdout \
107 niro 280 --menu "\nWaehlen Sie die Installations-Methode" 14 70 5 \
108     "1" "Normale IDE-Disk" \
109 niro 520 "2" "Flash-Speicher")
110 niro 258 RES=$?
111 niro 520 [[ ${RES} -eq 1 ]] && return 1
112     if [[ ${RES} -eq 0 ]]
113     then
114     case "${i}" in
115     "1") run_install_normal ;;
116     "2") run_install_flash ;;
117 niro 258 esac
118     fi
119     }
120    
121 niro 520 dialog_setup_hdd_found_manuell()
122     {
123     local i
124 niro 258
125 niro 520 [[ ! -z ${installdevs} ]] && installdevs=""
126    
127 niro 258 echo "dialog \\" > /tmp/hddtmp.sh
128 niro 520 echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh
129 niro 258 echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh
130     echo "--stdout \\" >> /tmp/hddtmp.sh
131     echo "--colors \\" >> /tmp/hddtmp.sh
132     echo "--msgbox \"Gefundene Hardware:\n\n \\" >> /tmp/hddtmp.sh
133     echo " Festplatten:\n \\" >> /tmp/hddtmp.sh
134    
135 niro 520 if [[ ! -z ${scsidisks} ]]
136 niro 258 then
137 niro 520 for i in ${scsidisks}
138 niro 258 do
139 niro 520 if [[ ${i} != ${cdromdev} ]]
140 niro 258 then
141 niro 520 echo " \\Z7SCSI: \\Z3${i}\\Zn\n \\" >> /tmp/hddtmp.sh
142     installdevs="${installdevs} ${i}"
143 niro 258 fi
144     done
145     fi
146    
147 niro 520 if [[ ! -z ${idedisks} ]]
148 niro 258 then
149 niro 520 for i in ${idedisks}
150 niro 258 do
151 niro 520 if [[ ${i} != ${cdromdev} ]]
152 niro 258 then
153 niro 520 echo " \\Z7IDE: \\Z3${i}\\Zn\n \\" >> /tmp/hddtmp.sh
154     installdevs="${installdevs} ${i}"
155 niro 258 fi
156     done
157     fi
158    
159 niro 520 if [[ ! -z ${cdromdev} ]]
160 niro 258 then
161     echo " \n \\" >> /tmp/hddtmp.sh
162     echo " \\Z7andere Laufwerke:\n \\" >> /tmp/hddtmp.sh
163 niro 520 echo " CDROM: \\Z3${cdromdev}\\Zn\n \\" >> /tmp/hddtmp.sh
164 niro 258 fi
165     echo " \" 13 70" >> /tmp/hddtmp.sh
166     chmod a+x /tmp/hddtmp.sh
167     /tmp/hddtmp.sh
168     }
169    
170 niro 520 dialog_setup_hdd_partitions_manuell()
171     {
172     local i
173    
174     if [[ -z ${installdevs} ]]
175 niro 258 then
176     dialog \
177 niro 520 --backtitle "${TITLE}" \
178 niro 258 --ok-label "Beenden" \
179     --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70
180     exit 1
181     else
182    
183     echo "dialog \\" > /tmp/hddtmp.sh
184 niro 520 echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh
185 niro 258 echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh
186     echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh
187     echo "--stdout \\" >> /tmp/hddtmp.sh
188     echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh
189    
190 niro 520 for i in ${installdevs}
191 niro 258 do
192 niro 520 echo "\"${i}\" \"\" \\" >> /tmp/hddtmp.sh
193 niro 258 done
194     echo -e "\n" >> /tmp/hddtmp.sh
195    
196     chmod a+x /tmp/hddtmp.sh
197 niro 520 HDD="$(/tmp/hddtmp.sh)"
198 niro 258 RES=$?
199 niro 520 [[ ${RES} -eq 1 ]] && return 1
200     if [[ ${RES} -eq 0 ]]
201 niro 258 then
202     dialog_setup_hdd_info
203     setup_hdd_partitions_manuell
204     fi
205     fi
206     }
207    
208 niro 520 dialog_setup_hdd_partitions_manuell_flash()
209     {
210     local i
211    
212     if [[ -z ${installdevs} ]]
213 niro 280 then
214     dialog \
215 niro 520 --backtitle "${TITLE}" \
216 niro 280 --ok-label "Beenden" \
217     --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70
218     exit 1
219     else
220    
221     echo "dialog \\" > /tmp/hddtmp.sh
222 niro 520 echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh
223 niro 280 echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh
224     echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh
225     echo "--stdout \\" >> /tmp/hddtmp.sh
226     echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh
227    
228 niro 520 for i in ${installdevs}
229 niro 280 do
230 niro 520 echo "\"${i}\" \"\" \\" >> /tmp/hddtmp.sh
231 niro 280 done
232     echo -e "\n" >> /tmp/hddtmp.sh
233    
234     chmod a+x /tmp/hddtmp.sh
235 niro 520 HDD="$(/tmp/hddtmp.sh)"
236 niro 280 RES=$?
237 niro 520 [[ ${RES} -eq 1 ]] && return 1
238     if [[ ${RES} -eq 0 ]]
239 niro 280 then
240     dialog_setup_hdd_info_flash
241     setup_hdd_partitions_manuell_flash
242     fi
243     fi
244     }
245    
246 niro 520 dialog_setup_hdd_partitions_silent()
247     {
248 niro 258 dialog \
249 niro 520 --backtitle "${TITLE}" \
250 niro 258 --infobox "Erstelle Partitionen ..." 3 70
251     }
252    
253 niro 520 dialog_setup_hdd_format()
254     {
255 niro 258 dialog \
256 niro 520 --backtitle "${TITLE}" \
257 niro 258 --infobox "Erstelle Datei-Systeme ..." 3 70
258     }
259    
260 niro 520 dialog_install_settings()
261     {
262 niro 258 dialog \
263 niro 520 --backtitle "${TITLE}" \
264 niro 258 --infobox "Speichere System-Einstellungen ..." 3 70
265     }
266    
267 niro 520 dialog_install_system_image()
268     {
269 niro 258 dialog \
270 niro 520 --backtitle "${TITLE}" \
271 niro 258 --gauge "Kopiere System-Image ..." 6 80
272     }
273    
274 niro 520 dialog_install_meter()
275     {
276     while [[ ${CURRENTLINE} != ${TOTALLINES} ]]
277     do
278     CURRENTLINE=$(grep --count . /tmp/install.log)
279     PERCENT=$(expr ${CURRENTLINE} \* 100 / ${TOTALLINES})
280 niro 258 echo ${PERCENT}
281     sleep 1
282     done
283     rm -f /tmp/install.log
284     return 0
285     }
286    
287    
288 niro 520 dialog_install_bootsector()
289     {
290 niro 258 dialog \
291 niro 520 --backtitle "${TITLE}" \
292 niro 258 --infobox "Schreibe den Bootsektor ..." 3 70
293     }
294    
295 niro 520 dialog_install_alxconfig()
296     {
297 niro 258 dialog \
298 niro 520 --backtitle "${TITLE}" \
299 niro 258 --infobox "Installiere die ALX Setup-Tools ..." 3 70
300     }
301    
302 niro 520 dialog_install_kernel_image()
303     {
304 niro 258 dialog \
305 niro 520 --backtitle "${TITLE}" \
306 niro 258 --infobox "Installiere den System-Kernel ..." 3 70
307    
308     }
309    
310 niro 520 dialog_install_hotfixes()
311     {
312 niro 258 dialog \
313 niro 520 --backtitle "${TITLE}" \
314 niro 258 --infobox "Installiere Hotfixes ..." 3 70
315    
316     }
317    
318 niro 520 dialog_install_successful()
319     {
320 niro 258 dialog \
321 niro 520 --backtitle "${TITLE}" \
322 niro 258 --colors \
323     --msgbox "Die Installation war \Z2erfolgreich\Zn." 5 81
324     }
325    
326 niro 520 dialog_install_failure()
327     {
328 niro 258 dialog \
329 niro 520 --backtitle "${TITLE}" \
330 niro 258 --colors \
331     --msgbox "Die Installation ist \Z1Fehlgeschlagen\Zn.\n\n\
332 niro 520 Fehler bei ${ERROR}, RetVal: ${RETVAL} \
333 niro 258 " 10 81
334     }
335    
336 niro 520 dialog_install_method()
337     {
338 niro 258
339 niro 520 METHOD=$(dialog \
340     --backtitle "${TITLE}" \
341 niro 258 --cancel-label "Abbrechen" \
342     --ok-label "Weiter" \
343     --stdout \
344     --menu "Konfiguration" 14 70 5 \
345     "1" "Normale Installation" \
346 niro 520 "2" "Silent Installation")
347 niro 258 RES=$?
348 niro 520 [[ ${RES} -eq 1 ]] && return 1
349     if [[ ${RES} -eq 0 ]]
350     then
351     case ${METHOD} in
352     "1") run_install_normal ;;
353     "2") dialog_warning ; run_install_silent ;;
354 niro 258 esac
355     fi
356     }
357    
358 niro 520 dialog_main()
359     {
360 niro 258 METHOD=0
361    
362 niro 520 while [[ ${METHOD} -le 2 ]]
363 niro 258 do
364 niro 520 METHOD=$(dialog \
365     --backtitle "${TITLE}" \
366 niro 258 --no-cancel \
367     --ok-label "Weiter" \
368     --stdout \
369     --menu "Konfiguration" 14 70 5 \
370     "1" "AutoSta_LX installieren" \
371     "2" "Uebersicht gefundener Laufwerke" \
372     "3" "Beenden und neustarten" \
373 niro 520 "4" "Beenden und eine Shell starten")
374 niro 258 RES=$?
375 niro 520 if [[ ${RES} -eq 1 ]] && exit 1
376     if [[ ${RES} -eq 0 ]]
377     then
378     case ${METHOD} in
379     "1") dialog_setup_system_menu ;;
380     "2") dialog_setup_hdd_found_manuell ;;
381     "3") install_do_reboot ;;
382     "4") /bin/bash --login -i ;;
383 niro 258 esac
384     fi
385     done
386     }
387    
388     #################################################
389     # Install Komandos #
390     #################################################
391 niro 520 setup_hdd_partitions_manuell()
392     {
393 niro 258 BOOTHDD="${HDD}1"
394     SWAPHDD="${HDD}2"
395     ROOTHDD="${HDD}3"
396    
397     ## hdds partitionieren manuell
398 niro 520 cfdisk ${HDD} || die
399 niro 258 }
400    
401 niro 520 setup_hdd_partitions_manuell_flash()
402     {
403 niro 280 ROOTHDD="${HDD}1"
404    
405     ## hdds partitionieren manuell
406 niro 520 cfdisk ${HDD} || die
407 niro 280 }
408    
409 niro 520 setup_hdd_partitions_silent()
410     {
411 niro 258 ## hdds löschen
412 niro 520 dd if=/dev/zero of=${HDD} bs=1024k count=1 || die
413 niro 258 ## hdds partitionieren silent
414 niro 520 fdisk ${HDD} < ${CONFIGS_TEMPLATE}/fdisksettings
415 niro 258
416     read
417     }
418    
419 niro 520 setup_hdd_format()
420     {
421     mkswap ${SWAPHDD} || die
422     mke2fs -j -q ${BOOTHDD} || die
423     mke2fs -j -q ${ROOTHDD} || die
424 niro 258 }
425    
426 niro 520 setup_hdd_format_flash()
427     {
428     mke2fs -j -q ${ROOTHDD} || die
429 niro 280 }
430    
431 niro 520 install_mount_rootfs()
432     {
433     swapon ${SWAPHDD} || die
434     mount ${ROOTHDD} ${INSTALLPATH} || die
435     install -d ${INSTALLPATH}/boot || die
436     mount ${BOOTHDD} ${INSTALLPATH}/boot || die
437     cd ${INSTALLPATH} || die
438 niro 258 }
439    
440 niro 520 install_mount_rootfs_flash()
441     {
442     mount ${ROOTHDD} ${INSTALLPATH} || die
443     install -d ${INSTALLPATH}/boot || die
444     cd ${INSTALLPATH} || die
445 niro 280 }
446    
447 niro 520 install_system_image()
448     {
449 niro 258 tar xvjpf ${CDPATH}/system/${CDIMAGENAME} -C ${INSTALLPATH}
450     }
451    
452    
453 niro 520 install_kernel_image()
454     {
455     declare -i CPUTYPE=$(cat /proc/cpuinfo | grep "cpu family" | cut -d ' ' -f3)
456 niro 258
457 niro 520 if [[ ${CPUTYPE} -le 5 ]]
458     then
459     lastdir="$(pwd)"
460 niro 258
461 niro 520 mkdir -p ${INSTALLPATH}/INSTALL/kernel || die
462     cd ${INSTALLPATH}/INSTALL/kernel || die
463     tar xzpf ${CDPATH}/kernels/kernel-i386.tar.gz || die
464     source ${INSTALLPATH}/INSTALL/kernel/kernelversion || die
465 niro 258
466 niro 520 cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNLIB} ${INSTALLPATH}/lib/modules || die
467     cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNIMG} ${INSTALLPATH}/boot || die
468     cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNINITRD} ${INSTALLPATH}/boot || die
469     cp -aRf ${INSTALLPATH}/INSTALL/kernel/kernelversion ${INSTALLPATH}/boot || die
470 niro 258
471 niro 520 cd ${lastdir} || die
472 niro 258
473 niro 520 elif [[ ${CPUTYPE} -ge 6 ]]
474     then
475     lastdir="$(pwd)"
476 niro 258
477 niro 520 mkdir -p ${INSTALLPATH}/INSTALL/kernel || die
478     cd ${INSTALLPATH}/INSTALL/kernel || die
479     tar xzpf ${CDPATH}/kernels/kernel-i686.tar.gz || die
480     source ${INSTALLPATH}/INSTALL/kernel/kernelversion || die
481 niro 258
482 niro 520 cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNLIB} ${INSTALLPATH}/lib/modules || die
483     cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNIMG} ${INSTALLPATH}/boot || die
484     cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNINITRD} ${INSTALLPATH}/boot || die
485     cp -aRf ${INSTALLPATH}/INSTALL/kernel/kernelversion ${INSTALLPATH}/boot || die
486 niro 258
487 niro 520 cd ${lastdir} || die
488 niro 258 fi
489     }
490    
491 niro 520 install_bootsector()
492     {
493 niro 258 ### grubconf schreiben
494 niro 520 source ${INSTALLPATH}/INSTALL/kernel/kernelversion
495 niro 258
496 niro 520 [[ -z ${KRNVER} ]] && KRNVER="AutoSta_LX"
497     [[ -z ${KRNIMG} ]] && KRNIMG="bzImage"
498     [[ -z ${KRNINITRD} ]] && KRNINITRD="initrd"
499 niro 258
500    
501 niro 520 echo -e "default 0" > ${INSTALLPATH}/boot/grub/grub.conf || die
502     echo -e "timeout 03" >> ${INSTALLPATH}/boot/grub/grub.conf ||die
503     echo -e "\ntitle=${KRNVER}" >> ${INSTALLPATH}/boot/grub/grub.conf || die
504     echo -e "root (hd0,0)" >> ${INSTALLPATH}/boot/grub/grub.conf || die
505 niro 258
506 niro 520 echo -e "kernel (hd0,0)/boot/${KRNIMG} root=${ROOTHDD} quiet" >> ${INSTALLPATH}/boot/grub/grub.conf || die
507 niro 519
508 niro 258 ### bootsector schreiben
509     /sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null || die
510     root (hd0,0)
511     setup (hd0)
512     quit
513     EOF
514     }
515    
516 niro 520 install_bootsector_chroot()
517     {
518 niro 258 ### grubconf schreiben
519 niro 520 source ${INSTALLPATH}/boot/kernelversion
520 niro 258
521     #for alx only
522     if [ -e ${INSTALLPATH}/etc/alx_version ]
523     then
524     OLD_ALXVER="${ALXVER}"
525     source ${INSTALLPATH}/etc/alx_version
526     KRNVER="ALX-${ALXVER}"
527     ALXVER="${OLD_ALXVER}"
528     fi
529    
530 niro 520 [[ -z ${KRNVER} ]] && KRNVER="AutoSta_LX"
531     [[ -z ${KRNIMG} ]] && KRNIMG="bzImage"
532     [[ -z ${KRNINITRD} ]] && KRNINITRD="initrd"
533 niro 258
534 niro 520 echo -e "default 0" > ${INSTALLPATH}/boot/grub/grub.conf || die
535     echo -e "timeout 0" >> ${INSTALLPATH}/boot/grub/grub.conf ||die
536 niro 258
537 niro 520 echo -e "\ntitle=${KRNVER}" >> ${INSTALLPATH}/boot/grub/grub.conf || die
538     echo -e "root (hd0,0)" >> ${INSTALLPATH}/boot/grub/grub.conf || die
539 niro 258
540 niro 520 echo -e "kernel (hd0,0)/boot/${KRNIMG} root=${ROOTHDD} quiet" >> ${INSTALLPATH}/boot/grub/grub.conf || die
541 niro 258
542     ### bootsector schreiben chrooted schreiben (gentoo)
543 niro 520 if [ -f ${INSTALLPATH}/sbin/grub ]
544 niro 258 then
545 niro 520 cat > ${INSTALLPATH}/root/.bashrc << CHROOTEOF
546 niro 258 /sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null
547     root (hd0,0)
548     setup (hd0)
549     quit
550     EOF
551 niro 260 exit 0
552 niro 258 CHROOTEOF
553     fi
554    
555     ### bootsector schreiben chrooted schreiben (lfs/magellan)
556 niro 520 if [ -f ${INSTALLPATH}/usr/sbin/grub ]
557 niro 258 then
558 niro 520 cat > ${INSTALLPATH}/root/.bashrc << CHROOTEOF
559 niro 258 /usr/sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null
560     root (hd0,0)
561     setup (hd0)
562     quit
563     EOF
564 niro 260 exit 0
565 niro 258 CHROOTEOF
566     fi
567    
568     ##enters chroot
569 niro 520 mount -t proc none ${INSTALLPATH}/proc
570     mount -o bind /dev ${INSTALLPATH}/dev
571     chroot ${INSTALLPATH} /bin/bash --rcfile /root/.bashrc -i
572     umount ${INSTALLPATH}/proc
573     umount ${INSTALLPATH}/dev
574     rm ${INSTALLPATH}/root/.bashrc
575 niro 258 }
576    
577 niro 520 install_alxconfig()
578     {
579     lastdir="$(pwd)"
580 niro 258
581 niro 520 mkdir -p ${INSTALLPATH}/opt/alx-config || die
582     cd ${INSTALLPATH}/opt/alx-config || die
583     tar xzpf ${CDPATH}/alx-config/alx-config.tar.gz || die
584     chmod a+x ${INSTALLPATH}/opt/alx-config/Configurator/config_functions.sh || die
585     chmod a+x ${INSTALLPATH}/opt/alx-config/Configurator/config_menu.sh || die
586     ln -sf /opt/alx-config/Configurator/config_menu.sh ${INSTALLPATH}/bin/ALXConfig || die
587 niro 258
588 niro 520 cd ${lastdir} || die
589 niro 258 }
590    
591    
592 niro 520 install_system_settings()
593     {
594 niro 258 ### schreibe fstab
595 niro 520 echo -e "${BOOTHDD}\t/boot\text3\tnoatime,noauto\t1 1" > ${INSTALLPATH}/etc/fstab || die
596     echo -e "${ROOTHDD}\t/\text3\tnoatime\t0 0" >> ${INSTALLPATH}/etc/fstab || die
597     echo -e "${SWAPHDD}\tswap\tswap\tpri=1\t0 0" >> ${INSTALLPATH}/etc/fstab || die
598     echo -e "none\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
599    
600     echo -e "none\t/dev/shm\ttmpfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
601     echo -e "none\t/proc/bus/usb\tusbfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
602 niro 258 }
603    
604 niro 520 install_system_settings_flash()
605     {
606 niro 280 ### schreibe fstab
607 niro 520 echo -e "${ROOTHDD}\t/\text3\tnoatime\t0 0" > ${INSTALLPATH}/etc/fstab || die
608     echo -e "none\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
609    
610     echo -e "none\t/dev/shm\ttmpfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
611     echo -e "none\t/proc/bus/usb\tusbfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die
612 niro 280 }
613 niro 520
614     install_hotfixes()
615     {
616     if [ -f ${CDPATH}/hotfixes/hotfixes.sh ]
617 niro 258 then
618     dialog_hotfixes
619     sleep1
620 niro 520 ${CDPATH}/hotfixes/hotfixes.sh
621 niro 258 fi
622     }
623    
624 niro 520 install_umount_rootfs()
625     {
626 niro 258 cd /
627 niro 520 umount ${INSTALLPATH}/boot || die
628     umount ${INSTALLPATH} || die
629     swapoff ${SWAPHDD} || die
630 niro 258 }
631    
632 niro 520 install_umount_rootfs_flash()
633     {
634 niro 280 cd /
635 niro 520 umount ${INSTALLPATH} || die
636 niro 280 }
637    
638 niro 520 install_do_reboot()
639     {
640 niro 258 reboot
641     }
642    
643     #################################################
644     # Install Ablauf Scripte #
645     #################################################
646    
647 niro 520 run_install_normal()
648     {
649 niro 258 dialog_setup_hdd_found_manuell
650 niro 520
651 niro 258 dialog_setup_hdd_partitions_manuell
652     dialog_setup_hdd_format
653     setup_hdd_format > /dev/null
654     install_mount_rootfs
655     (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image
656 niro 520
657 niro 258 dialog_install_bootsector
658     install_bootsector_chroot
659 niro 519
660 niro 258 dialog_install_settings
661     sleep 1
662     install_system_settings
663     install_hotfixes
664     install_umount_rootfs
665     dialog_install_successful
666     }
667    
668 niro 520 run_install_flash()
669     {
670 niro 280 dialog_setup_hdd_found_manuell
671 niro 520
672 niro 280 dialog_setup_hdd_partitions_manuell_flash
673     dialog_setup_hdd_format
674     setup_hdd_format_flash > /dev/null
675     install_mount_rootfs_flash
676     (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image
677 niro 520
678 niro 280 dialog_install_bootsector
679     install_bootsector_chroot
680 niro 520
681 niro 280 dialog_install_settings
682     sleep 1
683     install_system_settings_flash
684     install_hotfixes
685     install_umount_rootfs_flash
686     dialog_install_successful
687     }
688    
689 niro 520 run_install_silent()
690     {
691 niro 258 echo "starting silent install ..."
692     sleep 1
693     }
694    
695 niro 520 run_install_unattended()
696     {
697 niro 258 echo "starting unattended install ..."
698     sleep 1
699     }
700    
701 niro 520 if [[ $1 = unattended ]]
702 niro 258 then
703     run_install_unattended
704     else
705     dialog_main
706     fi
707    
708     exit 0