case ''
echo usage: 9fs service '[mountpoint]' >[1=2]
exit usage
-case kfs
- if(! test -f /srv/kfs)
- disk/kfs
- mount -c /srv/kfs /n/kfs
-case dump
- mount /srv/boot /n/dump dump >[2]/dev/null ||
- mount /srv/boot /n/dump main/archive ||
- mount /srv/boot /n/dump dump # again to print error
-case snap
- mount /srv/boot /n/snap main/snapshot
-case other
- mount -C /srv/boot /n/other other
-case juke # ye olde file server
- srv -q il!jukefs && mount /srv/il!jukefs /n/juke
+case 9fat esp pidos dos
+ if(~ $#2 1)
+ part=`{ls $2 >[2]/dev/null}
+ if not if(~ $1 pidos)
+ part=`{ls /dev/sdM*/dos >[2]/dev/null}
+ if not
+ part=`{ls /dev/fs/$1 /dev/sd*/$1 >[2]/dev/null}
+ if(~ $#part 0) {
+ echo 'no '$1' partition found' >[1=2]
+ exit no.$1
+ }
+ part=$part(1)
+
+ if(! test -f /srv/dos)
+ dossrv >/dev/null </dev/null >[2]/dev/null
+
+ unmount /n/$1 >/dev/null >[2]/dev/null
+ mount -c /srv/dos /n/$1 $part
+ if(~ $1 9fat){
+ unmount /n/9 >/dev/null >[2]/dev/null
+ mount -c /srv/dos /n/9 $part
+ }
+case dump other
+ mount -C /srv/boot /n/$1 $1
case sources
- srv -nq tcp!sources.cs.bell-labs.com sources /n/sources
+ srv -nqC tcp!sources.cs.bell-labs.com sources /n/sources
case sourcesdump
9fs sources
- mount -n /srv/sources /n/sourcesdump main/archive
+ mount -nC /srv/sources /n/sourcesdump main/archive
case sourcessnap
9fs sources
- mount -n /srv/sources /n/sourcessnap main/snapshot
+ mount -nC /srv/sources /n/sourcessnap main/snapshot
+case atom
+ srv -nq tcp!atom.9atom.org atom && mount -nC /srv/atom /n/atom atom
+case atomdump
+ 9fs atom && mount -nC /srv/atom /n/atomdump atomdump
+case 9pio
+ srv -nq tcp!9p.io 9pio && mount -nC /srv/9pio /n/9pio
+case 9front
+ 9fs 9front.org
+ for(i in 9front extra fqa hardware iso lists pkg sites)
+ bind /n/9front.org/$i /n/$i
+ 9fs tcp!9front.org!7734
+ bind -b /n/9front.org!7734 /n/lists
+ 9fs contrib.9front.org
+ for(i in bugs contrib sources)
+ bind /n/contrib.9front.org/$i /n/$i
# arbitrary venti archives
case vac:*
vacfs <{echo $1}