diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 39 |
1 files changed, 22 insertions, 17 deletions
@@ -79,31 +79,36 @@ tags, counts, negotiated frame sizes, and flush completion. ## Programs -Programs built on cloud9 live in sibling directories of `src/`, each with its +Related programs live in `cloud9/<name>/`, one directory per program beside +`src/`, and carry `9`-prefixed names (`9web`, `9proc`, `9ns`). Each has its own sources, tests, README and a `build.zig` fragment that the root -`build.zig` imports and enables with a toggle (`zig build --help` lists the -steps). New related programs follow the same layout. +`build.zig` imports and enables with a `-D<name>` toggle (`zig build --help` +lists the steps). New related programs follow the same layout. -* [`introspect/`](introspect/README.md) — a 9P debug/introspection server as - a library (module `introspect`, exported next to `cloud9`; freestanding - core, Linux debug layer) and its demo binary `introspect`. - `-Dintrospect=[bool]`; steps `introspect`, `introspect-test`, - `introspect-check-freestanding`, `introspect-debug-test`, - `introspect-debug-itest`, `introspect-adv`. -* [`9player/`](9player/README.md) — mount a 9P tree into a fresh user+mount +* [`web/`](docs/http.md) — the HTTP/WebSocket gateway `9web` and its + WebAssembly browser client (`web/main.zig`, `web/client.zig`, assets under + `web/static/`). Always built; steps `serve`, `web`, `http-test`, `e2e`. +* [`9proc/`](9proc/README.md) — a 9P debug/introspection server as + a library (module `9proc`, exported next to `cloud9`; freestanding + core, Linux debug layer) and its demo binary `9proc-demo`. + `-D9proc=[bool]`; steps `9proc`, `9proc-test`, + `9proc-check-freestanding`, `9proc-debug-test`, + `9proc-debug-itest`, `9proc-adv`. +* [`9ns/`](9ns/README.md) — mount a 9P tree into a fresh user+mount namespace via FUSE and run a program in it, without root (Linux, no libc). - `-D9player=[bool]`; steps `9player`, `9player-test`, `9player-itest`, - `9player-adv`. + `-D9ns=[bool]`; steps `9ns`, `9ns-test`, `9ns-itest`, + `9ns-adv`. -Both toggles default to on for Linux targets and off elsewhere; enabled -programs are installed by the plain `zig build`, and `programs-test` / -`programs-itest` run every enabled program's unit and integration steps. A -dependent package gets both modules from the one dependency: +The `9proc` and `9ns` toggles default to on for Linux targets and off +elsewhere; enabled programs are installed by the plain `zig build` next to +`9web` and `cloud9-probe`, and `programs-test` / `programs-itest` run every +enabled program's unit and integration steps. A dependent package gets both +modules from the one dependency: ```zig const cloud9_dep = b.dependency("cloud9", .{ .target = target, .optimize = optimize }); app.root_module.addImport("cloud9", cloud9_dep.module("cloud9")); -app.root_module.addImport("introspect", cloud9_dep.module("introspect")); +app.root_module.addImport("9proc", cloud9_dep.module("9proc")); ``` See [design and ownership contracts](docs/design.md), |
