#!/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 bloom -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
}
|