This is an old revision of the document!
Boot Camp 9p resource
The 9p.sdf.org rio rc prompt is accessable with 9front Drawterm or an rcpu connection. A 9p.sdf.org user name (-u USER) is required.
$ ./drawterm -a 9p.sdf.org -h 9p.sdf.org -u USER
Optional: drawterm -h 9p.sdf.org -u USER |
Optional: drawterm -a 9p.sdf.org -h 9p.sdf.org -p -u USER |
A Drawterm rc prompt (without rio; teletype only):
$ ./drawterm -G -h 9p.sdf.org -u USER
Possible "Tea Note" Presentation commands from the 9p rio rc prompt (%).
bboard example
date and time example
x | A scheduled Plan 9 Boot Camp TEA NOTE |
x | Start the clock in a rio rc window. |
cpu% cp /adm/timezone/US_Pacific /env/timezone && clock.amber
The command will pick up the new timezone, but nothing already running or not sharing the environment will be affected.
broke example
cpu% psu -a | grep Broke
cpu% broke
cpu% broke $user
commode example
cpu% com
@help
commode version 6
@h help
@f finger user
@l list rooms
@p peek into a room
@g goto a room
@w who
@i idlers
@r review 50 lines
@R review N lines
@u post a shortened url
@a aNONradio schedule
@q quit
: emote
! run a command
Run com
in a rio rc window, rather than a vt, to benefit from the Plan 9 I/O.
face example
castor example
9p rio rc prompt example
cpu% echo $prompt
cpu%
cpu% prompt='9p: '
9p:
9p: echo $prompt
9p:
9p: prompt='⑨p: '
⑨p:
9p html directory example
mkhomepg
is used to automate the process. The process includes a 5 to 10 minute wait after mkhomepg
& touch
, once a background task is preformed. Review 9p.sdf.org for a static review of the mkhomepg
results.
cpu% mkdir /usr/$user/html |
cpu% mkhomepg
cpu% touch /usr/$user/html/index.html
cpu% sed 10q /usr/$user/html/example.html
<html>
<body>
<h6>1st example</h6>
<pre>
2nd example
</pre>
</body>
</html>
cpu%
mothra -k https://9p.sdf.org/who/$user/index.html |
mothra -k https://9p.sdf.org/~$user |
https://9p.sdf.org/who/ links to all of the active homepages. |
9p gemini index location
cpu% touch /usr/$user/html/index.gem
castor gemini://9p.sdf.org/who/$user/index.gem |
1 plan9front running natively on hardware. 2 NetBSD Xen [] running Plan 9 Boot Camp participants' VMs, during the announced Plan 9 Boot Camp occurrences. 3 Security in Plan 9; The user may or may not have a secure store in which all his keys are kept.
9p mail example
default 9p lib/profile
The mentioned default profile may look slightly different than the SDF 9p profile.
- $home/lib/profile.default
bind -qa $home/bin/rc /bin
bind -qa $home/bin/$cputype /bin
font=/lib/font/bit/vga/unicode.font
switch($service){
case terminal
webcookies
webfs
plumber
echo -n accelerated > '#m/mousectl'
echo -n 'res 3' > '#m/mousectl'
prompt=('term% ' ' ')
fn term%{ $* }
rio
case cpu
bind /mnt/term/dev/cons /dev/cons
bind -q /mnt/term/dev/consctl /dev/consctl
>[2] /dev/null {
cp /dev/sysname /mnt/term/dev/label
if(wsys=`{cat /mnt/term/env/wsys} && ~ $#wsys 1) {
wsys=/mnt/term^$wsys
}
if not {
wsys=()
}
}
bind -a /mnt/term/dev /dev
prompt=('cpu% ' ' ')
fn cpu%{ $* }
if(! test -e /mnt/term/dev/wsys){
# call from drawterm
if(test -e /mnt/term/dev/secstore){
auth/factotum -n
read -m /mnt/term/dev/secstore >/mnt/factotum/ctl
echo >/mnt/term/dev/secstore
}
if not
auth/factotum
webcookies
webfs
plumber
rio
}
case con
prompt=('cpu% ' ' ')
}
Useful modifications of the lib/profile above the case terminal
statement.
- lib/profile snippet from above "case terminal"
bind -qa $home/bin/rc /bin
bind -qa $home/bin/$cputype /bin
bind -qa /usr/sdf/bin /bin
upasname=$user@9p.sdf.org
font=/lib/font/bit/vga/unicode.font
touch $home/lastlogin
switch($service){
case terminal <= THIS IS THE CASE TERMINAL LINE; no need to edit this line.
x | Optional: the $user can omit the upasname=$user@9p.sdf.org line if using the account without E-mail. |
Useful modification of the lib/profile below the case cpu
statement. Include upas/fs
after plumber
.
- lib/profile snippet from below "case cpu"
if not
auth/factotum
webcookies
webfs
plumber <= THIS IS THE PLUMBER LINE; no need to edit this line.
upas/fs
rio
x | Optional: the $user can omit the webcookies, webfs, plumber, and upas/fs lines to reduce system resources initially, starting them manually when needed. |
program | combined commands |
neinbook | plumber;neinbook |
acme | plumber;upas/fs;acme |
faces -i | plumber;upas/fs;faces -i |
abaco | webfs;abaco |
mothra -k | webfs;mothra -k |
netsurf | webfs;netsurf |
x | Optional: the $user can view the number of processes initially, then later after starting applications manually. |
cpu% ps | awk '$1 !~ /^(glenda|none|upas)$/ { print $1 }' | sort | uniq -c | sort -n
Reference book
Conclusion or close
The wiki formatting used in this tutorial was reviewed with the SDF Plan 9 Boot Camp plan9front mothra browser, and the mothra option '-k': % mothra -k
. The intention was to support those SDF Plan 9 Boot Camp participants who may participate (in the Boot Camp) with a low-speed Internet connection. The outcome of the mentioned formatting decision is pending the approval of future wiki editors. Have fun.