3 # prereq: mountfs configdist
4 # desc: locate and mount the distribution
7 if(! test -e $mountmedia(2))
9 unmount /n/distmedia >[2]/dev/null
14 if(test -d /n/dist/dist/plan9front)
19 test -d $1/dist/plan9front || test -f $1/9front.iso || test -f $1/9front.iso.bz2
25 unmount /n/dist >[2]/dev/null
26 9660srv 9660.dist >[2]/dev/null
27 logprog mount /srv/9660.dist /n/dist $1
37 mkdir -p /n/newfs/dist
38 echo -n 'bunzip2 < '^$1^' >/n/newfs/dist/9front.iso'
39 bunzip2 < $1 >/n/newfs/dist/_9front.iso &&
40 mv /n/newfs/dist/_9front.iso /n/newfs/dist/9front.iso
42 trycdimage /n/newfs/dist/9front.iso
52 if(! ~ $distisfrom local && ! ~ $download done){
56 if(! ~ $#mountmedia 0 1){
60 if(./mountdist checkdone)
66 export srvmedia mountmedia mountdist
73 echo Please wait... Scanning storage devices...
75 parts=`{ls /dev/sd*/* /srv/sd*/*.iso >[2]/dev/null |
76 grep -v '/(plan9.*|nvram|ctl|log|raw)$'}
89 echo The following storage media were detected.
90 echo Choose the one containing the distribution.
95 echo ' '^$i^' (microsoft fat)'
97 echo ' '^$i^' (iso9660 cdrom)'
103 while(! ~ $mountstatus ''){
107 prompt $default 'Distribution disk' $fat $x9660 $fs /
114 mountmedia=(mount /srv/boot /n/distmedia)
116 mountmedia=(bind /n/newfs /n/distmedia)
119 mountmedia=(mount /srv/dos /n/distmedia $disk)
122 mountmedia=(mount /srv/9660 /n/distmedia $disk)
124 echo Unknown disk type '(cannot happen)'
127 export srvmedia mountmedia
134 while(~ $first yes || ! havedist /n/distmedia/$dir){
137 echo Which directory contains the distribution?
138 echo 'Any of the following will suffice (in order of preference):'
139 echo ' - the root directory of the cd image'
140 echo ' - the directory containing 9front.iso'
141 echo ' - the directory containing 9front.iso.bz2'
146 prompt -d $dir 'Location of archives'
152 if(! havedist /n/distmedia/$dir)
153 echo 'No distribution found in '^`{cleanname /$dir}
160 if(! ~ $#distmediadir 1){
165 if(! havedist /n/distmedia/$distmediadir && ! havedist /n/newfs/dist){
173 if(test -d /n/distmedia/$distmediadir/dist/plan9front){
174 bind /n/distmedia/$distmediadir /n/dist
181 trycdimage /n/distmedia/$distmediadir/9front.iso
182 trycdimage /n/newfs/dist/9front.iso
184 trycdimagebz2 /n/distmedia/$distmediadir/9front.iso.bz2
185 trycdimagebz2 /n/newfs/dist/9front.iso.bz2