Awesome Plan9
A curated list of awesome Plan9 (and sometimes 9p) libraries and software.
Generally when referring to "Plan9" this document really means 9front.
9p.io links are accessible over 9p as well. On 9front you can run 9fs 9pio
as a shortcut.
Many of the applications listed here are available under the 9front ports tree.
Contributing
Please do.
PR's welcome for all edits or new projects.
Contents
Resources
- Modding Rio - Tutorials on how to add a wallpaper and change colors.
- Plan9 GUI Examples - Tutorials to learn about GUI development on Plan9.
- Plan9 Desktop Guide - a all in one guide to get started with Plan9.
Sites
- cat-v
- 9p.mom/f - Files for hacking together bootable things without easy access to a 9front system
- NOPE NOPE NOPE - qwx's site with 9front usage tips and software
Papers
- Plan 9 From Bell Labs - Overview of the Plan9 system itself
- Security in Plan 9 - Overview of the security architecture of Plan9
Manuals
Third Edition
- Plan9 3e FAQ - FAQ for 3rd edition release
Second Edition
- Plan9 2e FAQ - FAQ for 2nd edition release
- Plan9 Tips and Information
First Edition
Talks
- The Name Game - Talk on Plan9 and Inferno by Charles Forsyth
- Plan 9: Not Dead, Just Resting - Talk on Plan9 and 9front by Ori Bernstein
Applications
Utilities
- color9 - Color picker
- disco - Discord client
- fontsel - Font selector
- git9 - Git implementation
- unionfs - Deep union file server
- xmpp - XMPP client
Editors
- 9vim - A port of vim to Plan9
- Phil9's fork - A version with additional features and bug fixes
Graphics
- Moogle - A simple 3D wireframe editor
- whiteboardfs - A collaborative drawing file system
Audio/music
- mpl - Music Player
- neindaw - DAW for Plan 9
- orca - Live Programming Environment
- treason - Video player
- ytfs - File system for playing youtube audio
- zuke - Music player
- wrec - Screen and window recorder
Languages
Languages which are known to be buildable/operational on Plan 9.
- aa - A tiny, embeddable Lisp-like language
- c4 - C in 4 functions
- cfront - Archaic C++ pre-compiler
- Chibi Scheme - A small embeddable scheme implementation
- clox9 - Port of Nystrom's clox implementation of the Lox language to Plan9
- Go - The Go programming language
- Hugs - Haskell98 interpreter
- Idris 2 - A dependently typed programming language, pre-alpha port
- Lua - Lua from Redis
- Lua (lu9) - Lua from kvik
- Fennel - Fennel via lu9 (thanks grimmware)
- Lua (5.0.2) Lua for APE
- Myrddin - Systems language by Ori Bernstein
- nhc98 - Haskell compiler
- Ocaml - Ocaml
- Perl - Perl
- Python 2
- Scheme 9 - Scheme 9 from Empty Space
- sxm - The sxm scheme language
- Squeak - Squeak/Smalltalk from de0u/squeak
- Tcl - Tcl port by fgb
- TinyScheme - TinyScheme
- UMB Scheme - UMB Scheme
- uxn - A small stack machine
Libraries
- libtags - A cross-platform library for reading tags
- libtheme - A theming library for the plan 9 graphics system
- microui - Tiny immediate-mode UI library
- npe A native porting environment for POSIX software
Forks
- 9ants - Mycroftiv's fork (of 9front) featuring a modified kernel and custom namespace control tooling
- 9atom (deprecated?) - Erik Quanstrom's fork (mirror)
- 9front - Fork featuring new protocols, file systems, and greatly expanded hardware support
- 9legacy - Fork which continues maintaining a Bell Labs-like source base
- 9pi - Port of 9legacy to the Raspberry Pi
- Harvey - An MIT-licensed OS based on Plan 0
- Jehanne - Giacomo Tesio's fork
- Nix (deprecated) - A fork of Plan 9 focused on high performance parallel cloud computing
Influenced by Plan9
Editors
- acme2k - An acme-inspired geared towards easy configurability
- editor - An acme-inspired, full-featured, editor in Go
- edwood - An acme-inspired editor in Go
- sam - A fork of the unix sam(1) and samterm(1) with extensive extensibility
Utilities
- mk - A rewrite and partial re-imagining of mk(1) in Go
Libraries
- c9 - A low-level 9p client and server implementation
Kernels
- plan_rust - Plan9-influenced kernel in Rust
Operating Systems
- Akaros - Support for parallel and high-performance applications and to scale to a large number of cores
- Inferno - Register-oriented virtual machine operating system which can run natively and hosted, leverages 9p heavily as "styx"
- Interim - Minimal operating system featuring a lisp environment (everything is a file is a symbol)
- Redox - A Unix-like operating system written in Rust