netsurf
| Name | Last commit date |
|---|---|
| docs | |
| src | |
| README.md | |
| UPSTREAM.json |
NetSurf for Plan 9
A monorepo of the NetSurf browser and the dependencies used by its Plan 9 / 9front port, maintained under Lael Labs.
Source layout
All 19 selected components are imported under src/. The nsport build infrastructure occupies src/ itself: mkfile, nsport.mk, nsportlib.mk, posix/, and genfiles/. The browser and 17 other components occupy their original named directories beneath it. This preserves the relative paths expected by the Plan 9 build.
UPSTREAM.json records each original repository, branch, and exact imported commit. These are source snapshots; the original Git histories remain in the linked repositories. Existing license files and copyright notices are retained within each component; no single replacement license is applied to the collection.
The archived libnsfb, libpencil, librosprite, and librufl repositories are excluded. The old organization profile is also excluded.
Build on Plan 9 / 9front
Use an up-to-date 9front system with its APE environment and git9 client:
git/clone https://github.com/lael-labs/netsurf
cd netsurf/src
mk
mk install
Ensure webfs is running, then run netsurf.
The monorepo contains the dependencies already: do not run the old fetch clone workflow. Update the repository using git/pull from the checkout root. The original fetch script is retained only as historical documentation in docs/legacy-fetch.rc; it is not part of this build workflow.
nsgenbind is preserved for regenerating JavaScript/DOM bindings. The normal Plan 9 build uses generated sources supplied in src/genfiles/; the generator is not built by the top-level mkfile.
This import has been checked for source fidelity and build-directory consistency. A native Plan 9 build and runtime test have not yet been performed.
Credits
This work builds on NetSurf and the netsurf-plan9 contributors. The port's original README credits phil9 (@telephil9) as maintainer, with contributions from Ori Bernstein, Sigrid, Michael Forney, Jonas Amoson, and Kyle Nusbaum. Original documentation and notices are retained in src/.