]> git.lizzy.rs Git - plan9front.git/blob - sys/src/9/boot/local.rc
boot(8): cleanup enviroment variables before init
[plan9front.git] / sys / src / 9 / boot / local.rc
1 #!/bin/rc
2
3 fn showlocaldevs{
4         echo local devices found:
5         for(c in /dev/sd*/ctl){
6                 if(test -r $c){
7                         d=`{echo $c | sed 's,/ctl,,g'}
8                         echo $d':' `{sed 's/inquiry[ ]+//g; q' $c}
9                         for(i in `{ls -p $d | grep -v -e 'ctl|raw'}){
10                                 p=$d/$i
11                                 t=`{fstype $p}
12                                 if(~ $#bootargs 0 && ! ~ $t '')
13                                         bootargs=local!$p
14                                 echo $p $t
15                         }
16                 }
17         }
18 }
19
20 fn configlocal{
21         if(~ $pcload 1){
22                 kern=`{echo $* | sed 's,.*!(.*)$,\1,g'}
23                 if(~ $#kern 0 || ! ~ $#bootfile 0)
24                         kern=`{echo $bootfile | sed 's,.*!(.*)$,\1,g'}
25         }
26         diskparts
27
28 }
29
30 fn connectlocal{
31         t=`{fstype $1}
32         if(~ $#t 0)
33                 fatal unknown fstype $1
34         switch($t){
35         case 9660
36                 t=9660srv
37         case kfs
38                 t=disk/kfs
39         }
40         {$t -s -f $* &} <[0=1] | echo 0 >/srv/boot
41 }
42
43 mlocal=(configlocal connectlocal)
44 mt=(mlocal $mt)