Plan 9 Remote File Access from Emacs

 


Plan 9 Operating System uses 9p protocol for file access. This is an Elisp implementation of the protocol.

Plan 9 (9front distribution) is running in QEMU with NAT networking. Local port 12564 is forwarded to 9fs service port 564 in the virtual machine.


 

Code

 

Troubleshooting Plan 9 connection

  1. Ensure you are booting with  -a tcp!*!564  parameters. (Tip: You can add these to your /n/9fat/plan9.ini)
  2. Ensure you have configured the network interface   ip/ipconfig  
  3. Ensure you have an IP address  cat /net/ndb 
  4. Ensure you are running cpu+auth server  cpurc 
  5. (Optional) Start graphics mode  screenrc  
  6. (Optional) Start window manager  rio  
  7. (Optional) List open connections  netstat  
  8. (Optional) Monitor network traffic  snoopy  
  9. (Optional) Debug authentication  auth/debug 
  10. (Optional) Run network configuration tests  netaudit 
plan9.ini
After mounting 9fat partition using  9fs 9fat , you can find plan9.ini in /n/9fat/plan9.ini
 
bootfile=9pc64
monitor=vesa
mouse=p2intellimouse
vgasize=1280x768x24

bootargs=local!/dev/sdC0/fs -a tcp!*!564

user=glenda
authdom=virtual
auth=10.0.2.15
cpu=10.0.2.15
service=cpu
  
 

Useful Plan 9 Tools

  • riow - Keyboard based window management
  • bar - Display date and time in a bar
  • stats - Graphical stats for CPU, memory and network
  • statusbar, statusmsg - Display a bar graph or status message window
  • winwatch - Display labels of open windows in a stack layout (aka task bar)
  • sam and acme - Editor
  • mothra and abaco - Web browser
  • hget - CLI client for web
  • ndb - Network database
  • look - Find lines in a sorted list

 

 References

  1. 9P Protocol
  2. 9p server in Go
  3. Plan 9 authentication protocol 
  4. No Bridge networking on wireless interface 
     

 

Comments

Popular posts from this blog

HTML Renderer (Emacs)

Emacs: Binary File Viewer

Emacs: A non-intrusive browser