64 lines
1.4 KiB
Plaintext
64 lines
1.4 KiB
Plaintext
|
#!/bin/rc
|
||
|
|
||
|
# desc: subdivide plan 9 disk partition
|
||
|
# prereq: partdisk
|
||
|
|
||
|
fn autotype {
|
||
|
if(~ $fstype fossil)
|
||
|
echo -a 9fat -a nvram -a fossil -a swap
|
||
|
if(~ $fstype fossil+venti)
|
||
|
echo -a 9fat -a nvram -a arenas -a isect -a fossil -a swap # -a other
|
||
|
}
|
||
|
|
||
|
switch($1) {
|
||
|
case checkready
|
||
|
if(! test -f /dev/sd*/plan9*){
|
||
|
prepdisk=notdone
|
||
|
export prepdisk
|
||
|
}
|
||
|
|
||
|
case go
|
||
|
echo 'The following Plan 9 disk partitions were found.'
|
||
|
echo
|
||
|
disks=(/dev/sd*/plan9*)
|
||
|
for (i in $disks){
|
||
|
echo $i
|
||
|
echo q | disk/prep -r $i >[2]/dev/null
|
||
|
echo
|
||
|
}
|
||
|
if(~ $#disks 1)
|
||
|
default=(-d $disks)
|
||
|
if not
|
||
|
default=()
|
||
|
prompt $default 'Plan 9 partition to subdivide' $disks
|
||
|
disk=$rd
|
||
|
|
||
|
echo 'This is disk/prep; use it to subdivide the Plan 9 partition.'
|
||
|
echo 'If it is not yet subdivided, a sensible layout will be suggested;'
|
||
|
echo 'you can probably just type ''w'' and then ''q''.'
|
||
|
echo
|
||
|
disk/prep `{autotype} $disk
|
||
|
disk/prep -p $disk >`{basename -d $disk}^/ctl >[2]/dev/null
|
||
|
|
||
|
case checkdone
|
||
|
if(! test -f /dev/sd*/9fat)
|
||
|
prepdisk=ready
|
||
|
|
||
|
if(! ~ $prepdisk ready){
|
||
|
prepdisk=done
|
||
|
switch($fstype){
|
||
|
case fossil
|
||
|
if(! test -f /dev/sd*/fossil* && ! test -f /dev/fs/fossil*)
|
||
|
prepdisk=ready
|
||
|
case fossil+venti
|
||
|
if(! test -f /dev/sd*/fossil* && ! test -f /dev/fs/fossil*)
|
||
|
prepdisk=ready
|
||
|
if(! test -f /dev/sd*/arenas && ! test -f /dev/fs/arenas*)
|
||
|
prepdisk=ready
|
||
|
if(! test -f /dev/sd*/isect && ! test -f /dev/fs/isect*)
|
||
|
prepdisk=ready
|
||
|
}
|
||
|
}
|
||
|
export prepdisk
|
||
|
}
|