Contents of /trunk/installer/include/prepare_disks.sh
Parent Directory | Revision Log
Revision 1047 -
(show annotations)
(download)
(as text)
Sun May 30 23:08:59 2010 UTC (14 years, 4 months ago) by niro
File MIME type: application/x-sh
File size: 2202 byte(s)
Sun May 30 23:08:59 2010 UTC (14 years, 4 months ago) by niro
File MIME type: application/x-sh
File size: 2202 byte(s)
-better ncurses support
1 | #!/bin/sh |
2 | # $Id$ |
3 | |
4 | : ${INSTALL_ROOT="/mnt/magellan"} |
5 | KNOWN_DISKS="ROOT BOOT SWAP HOME TMP USER VAR SVR OPT" |
6 | |
7 | format_disks() |
8 | { |
9 | local disk |
10 | local disk_part |
11 | local disk_fs |
12 | local opts |
13 | local progress |
14 | local percent |
15 | |
16 | declare -i progress=0 |
17 | |
18 | # disk format |
19 | for disk in ${KNOWN_DISKS} |
20 | do |
21 | disk_part=$(eval echo \$PARTITION_DISK_${disk}) |
22 | disk_fs=$(eval echo \$PARTITION_FS_${disk}) |
23 | |
24 | if [[ ! -z ${disk_part} ]] |
25 | then |
26 | if [[ ! -z ${disk_fs} ]] |
27 | then |
28 | case ${disk_fs} in |
29 | swap) mkswap ${disk_part} &> /dev/null;; |
30 | reiserfs) mkfs.${disk_fs} -f ${disk_part} &> /dev/null;; |
31 | keep-as-is) echo "keeping as-is." ;; |
32 | *) mkfs.${disk_fs} ${disk_part} &> /dev/null;; |
33 | esac |
34 | fi |
35 | fi |
36 | |
37 | (( progress++ )) |
38 | percent=$(echo ${progress} 9 | awk '{print ($1 / $2 * 100) - 1}') |
39 | if [[ ${GUITYPE} = ncurses ]] |
40 | then |
41 | # no floats in ncurses gui possible |
42 | printf %.0f "${percent}" |
43 | else |
44 | echo "${percent}" |
45 | fi |
46 | done |
47 | |
48 | echo "100" |
49 | } |
50 | |
51 | mount_disks() |
52 | { |
53 | local disk |
54 | local disk_part |
55 | local dest |
56 | |
57 | # activate swap |
58 | swapon ${PARTITION_DISK_SWAP} |
59 | |
60 | # first mount rootfs |
61 | mount ${PARTITION_DISK_ROOT} ${INSTALL_ROOT} |
62 | |
63 | # than all other |
64 | for disk in ${KNOWN_DISKS} |
65 | do |
66 | case ${disk} in |
67 | BOOT) dest=boot ;; |
68 | HOME) dest=home ;; |
69 | TMP) dest=tmp ;; |
70 | USER) dest=usr ;; |
71 | VAR) dest=var ;; |
72 | SVR) dest=svr ;; |
73 | OPT) dest=opt ;; |
74 | *) continue ;; |
75 | esac |
76 | |
77 | disk_part=$(eval echo \$PARTITION_DISK_${disk}) |
78 | if [[ ! -z ${disk_part} ]] |
79 | then |
80 | install -d ${INSTALL_ROOT}/${dest} |
81 | mount ${disk_part} ${INSTALL_ROOT}/${dest} |
82 | fi |
83 | done |
84 | } |
85 | |
86 | umount_disks() |
87 | { |
88 | local disk |
89 | local disk_part |
90 | local dest |
91 | |
92 | # first umount all other |
93 | for disk in ${KNOWN_DISKS} |
94 | do |
95 | # excludes |
96 | case ${disk} in |
97 | ROOT) continue ;; |
98 | SWAP) continue ;; |
99 | esac |
100 | |
101 | disk_part=$(eval echo \$PARTITION_DISK_${disk}) |
102 | [[ ! -z ${disk_part} ]] && umount ${disk_part} |
103 | done |
104 | |
105 | # then umount rootfs |
106 | umount ${PARTITION_DISK_ROOT} |
107 | |
108 | # de-activate swap |
109 | swapoff ${PARTITION_DISK_SWAP} |
110 | } |
111 | |
112 | case $1 in |
113 | --format | -f) format_disks ;; |
114 | --mount | -m ) mount_disks ;; |
115 | --umount | -u ) umount_disks ;; |
116 | *) echo "unknown option '$1'." ;; |
117 | esac |
118 | |
119 | case $2 in |
120 | --ncurses) GUITYPE="ncurses" ;; |
121 | --gtk) GUITYPE="gtk" ;; |
122 | *) GUITYPE="gtk" ;; |
123 | esac |
Properties
Name | Value |
---|---|
svn:executable | * |