Awesome Plan9#
https://github.com/henesy/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#
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
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
hell - Mastodon 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
APL – Primitive APL Implementation
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
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
libutf - Plan 9 compatible UTF-8 C library
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
JehanneOS - Giacomo Tesio’s fork (Gitea home)
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
anvil - An acme-inspired editor in Go
ad - An acme-inspired modal editor
Vis - A vi-like editor based on Plan 9’s structural regular expressions
Utilities#
mk - A rewrite and partial re-imagining of mk(1) in Go
sregx - A tool and library for using structural regular expressions
Libraries#
- c9 - A low-level 9p client and server implementation
Kernels#
plan_rust - Plan9-influenced kernel in Rust (2019-2019)
R9 - R9 is a reimplementation of the plan9 kernel in Rust (2022-present)
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