<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf8">
<title>/usr/web/sources/contrib/rsc/termrc - Plan 9 from Bell Labs</title>
<!-- THIS FILE IS AUTOMATICALLY GENERATED. -->
<!-- EDIT sources.tr INSTEAD. -->
</meta>
</head>
<body>
<p style="margin-top: 0; margin-bottom: 0.17in"></p>
<p style="line-height: 1.2em; margin-left: 1.00in; text-indent: 0.00in; margin-right: 1.00in; margin-top: 0; margin-bottom: 0; text-align: center;">
<span style="font-size: 10pt"><a href="/plan9/">Plan 9 from Bell Labs</a>&rsquo;s /usr/web/sources/contrib/rsc/termrc</span></p>
<p style="margin-top: 0; margin-bottom: 0.17in"></p>
<p style="margin-top: 0; margin-bottom: 0.17in"></p>
<center><font size=-1>
Copyright © 2009 Alcatel-Lucent.<br />
Distributed under the
<a href="/plan9/license.html">Lucent Public License version 1.02</a>.
<br />
<a href="/plan9/download.html">Download the Plan 9 distribution.</a>
</font>
</center>
<p style="margin-top: 0; margin-bottom: 0.17in"></p>
<table width="100%" cellspacing=0 border=0><tr><td align="center">
<table cellspacing=0 cellpadding=5 bgcolor="#eeeeff"><tr><td align="left">
<pre>
<!-- END HEADER -->
#!/bin/rc
# terminal startup
TIMESYNCARGS=(-rLa1000000)
NDBFILE=/lib/ndb/local

mntgen -s slashn &amp;&amp; chmod 666 /srv/slashn

# bind all likely devices (#S was bound in boot)
for(i in f t m v L P U '$' Σ κ)
	/bin/bind -a '#'^$i /dev &gt;/dev/null &gt;[2=1]

# set up any partitions
diskparts

# start up local swapping
disk=`{ls /dev/sd*/swap &gt;[2]/dev/null}
if (! ~ $#disk 0)
	swap $disk(1) &gt;/dev/null &gt;[2=1]
rm /env/disk

# we do this before we have a name.  we may need to do network
# setup so that we can get a name.
if(test -e /rc/bin/termrc.local)
	. /rc/bin/termrc.local

# cs sets sysname (termrc.local may already have started it so check)
if(! test -e /srv/cs &amp;&amp; ! test -e /net/cs)
	ndb/cs -f $NDBFILE
sysname=`{cat /dev/sysname}
if (~ $#sysname 0 || ~ $sysname '') {
	sysname = gnot			# default
	echo -n $sysname &gt;/dev/sysname
}

# machine specific startup (e.g., for devices not probed)
if(test -e /cfg/$sysname/termrc)
	. /cfg/$sysname/termrc

# start IP on the LAN, if not already configured.  diskless terminals
# are already configured by now.  It's commented out to avoid a long timeout
# on startup waiting for DHCP.
#
# If your site provides DHCP service,
#
#if(! test -e /net/ipifc/0/ctl)
#	ip/ipconfig
#
# Otherwise, see /cfg/$sysname/termrc (/cfg/example/termrc is an example).

# start dns if we have an internet
if(test -e /net/ipifc/0/ctl &amp;&amp; ! test -e /srv/dns)
	ndb/dns -r

if(! ~ $terminal *vx32*){
	# start timesync if it isn't running and we weren't told not to
	if(! ps|grep -s timesync)
		if(! ~ $TIMESYNCARGS '')
			aux/timesync $TIMESYNCARGS
	
	# add the loop-back device
	if(grep -s loopback /dev/drivers)
		ip/ipconfig loopback /dev/null 127.1
	
	# set things up for vmware
	if(! ~ `{cat /dev/user} none)
		if(test -e /bin/aux/vmware)
			aux/vmware
}

# query user if terminal isn't adequately configured yet
if(~ $mouseport ask){
	echo -n 'mouseport is (ps2, ps2intellimouse, 0, 1, 2)[ps2]: '
	mouseport=`{read}
	if(~ $#mouseport 0)
		mouseport=ps2
}
if(~ $vgasize ask){
	echo -n 'vgasize [640x480x8]: '
	vgasize=`{read}
	if(~ $#vgasize 0)
		vgasize=640x480x8
}
if(~ $monitor ask){
	echo -n 'monitor is [xga]: '
	monitor=`{read}
	if(~ $#monitor 0)
		monitor=xga
}
if(test -f /dev/mousectl){
	switch($mouseport){
	case ps2 ps2intellimouse 0 1 2
		aux/mouse $mouseport
		# parse vgasize into fields
		vgasize=`{echo $vgasize}
		if(! ~ $"monitor '' &amp;&amp; ! ~ `{cat /dev/user} none)
			aux/vga -l $vgasize
		if(~ $accupoint 1)
			pipefile -dr /bin/aux/accupoint /dev/mouse
	}
}

usbstart
if (test -f /dev/apm)
	aux/apm

dontkill '^(ipconfig|factotum|mntgen|fossil|cs|dns|listen|reboot)$'
<!-- BEGIN TAIL -->
</pre>
</td></tr></table>
</td></tr></table>
<p style="margin-top: 0; margin-bottom: 0.17in"></p>
<p style="line-height: 1.2em; margin-left: 1.00in; text-indent: 0.00in; margin-right: 1.00in; margin-top: 0; margin-bottom: 0; text-align: center;">
<span style="font-size: 10pt"></span></p>
<p style="margin-top: 0; margin-bottom: 0.50in"></p>
<p style="margin-top: 0; margin-bottom: 0.33in"></p>
<center><table border="0"><tr>
<td valign="middle"><a href="http://www.alcatel-lucent.com/"><img border="0" src="/plan9/img/logo_ft.gif" alt="Bell Labs" />
</a></td>
<td valign="middle"><a href="http://www.opensource.org"><img border="0" alt="OSI certified" src="/plan9/img/osi-certified-60x50.gif" />
</a></td>
<td><img style="padding-right: 45px;" alt="Powered by Plan 9" src="/plan9/img/power36.gif" />
</td>
</tr></table></center>
<p style="margin-top: 0; margin-bottom: 0.17in"></p>
<center>
<span style="font-size: 10pt">(<a href="/plan9/">Return to Plan 9 Home Page</a>)</span>
</center>
<p style="margin-top: 0; margin-bottom: 0.17in"></p>
<center><font size=-1>
<span style="font-size: 10pt"><a href="http://www.lucent.com/copyright.html">Copyright</a></span>
<span style="font-size: 10pt">© 2009 Alcatel-Lucent.</span>
<span style="font-size: 10pt">All Rights Reserved.</span>
<br />
<span style="font-size: 10pt">Comments to</span>
<span style="font-size: 10pt"><a href="mailto:webmaster@plan9.bell-labs.com">webmaster@plan9.bell-labs.com</a>.</span>
</font></center>
</body>
</html>

