Files
bare-operating-system/handbook
Raven Scott 13a06ea3e9 feat: ctx 1.37.0, /bin/link, blind-peer proc gate, and CI/docs follow-ups
- Bump bareOsCtxApiVersion to 1.37.0; sync syscalls.example.json and ctx helper
- Add ctx.bareOsReadSnapshotHintsJson mirroring snapshot_hints proc JSON
- Gate blind_relay_router / blind_pairing_sketch / relay_geo_hint behind
  BARE_OS_PROC_BLIND_PEER_RELAY_HINTS; passthrough + env appendix docs
- Add POSIX link(1) via coreutils (link.js, man, commands list, kernel bin)
- Fix JSDoc in verify-runtime-no-incomplete-markers (avoid */ in glob text)
- Align posix-conformance-matrix bareOsSyscallOps with getconf (select, umask)
- Add verify-holepunch-clone-drift.mjs (opt-in pretest), holepunch-drift-repos.json,
  originMainHead in sync-holepunch-clones report
- Tests: warm /bin cache clear, blind proc stub, protomux pool schema 2, glob cap
- Docs: systemctl man, compatibility matrix boot.policy pins, handbook ch.5
  vault/proc note, package-bare-os-booter, kernel-extensions, developer-guide ctx
- CHANGELOG and bare-os-ctx.d.ts updates for subprocess bridge and mirror mounts
2026-04-04 23:19:17 -04:00
..
2026-04-04 19:51:05 -04:00
2026-04-04 19:51:05 -04:00
2026-04-04 08:31:39 -04:00
2026-04-04 19:51:05 -04:00
2026-04-04 08:31:39 -04:00
2026-04-04 19:51:05 -04:00
2026-04-04 19:51:05 -04:00

Bare operating system — handbook

Bare OS is an experimental, P2P-first system image: a Merkle-addressed Hyperdrive you replicate from peers over Hyperswarm, plus a second drive for everything that should stay yours (home, identity, logs). This handbook is the narrative spine—written like a long-form technical article so you can read it cover to cover or jump to a chapter. It explains why the pieces exist, how they connect, and where to look when something breaks.

This project is experimental research software, not a production OS. It is licensed under Apache-2.0 (LICENSE).


On this page


How this handbook fits the repo

Documentation home — Single map of every tree: user manual, this handbook, developer guide, reference, glossary, FAQ, troubleshooting router, contributing to docs.

Preface — why Bare OS — Thesis, comparison to classic images, security limits, outlook, contributor paths.

This handbook (handbook/*.md) — Story, architecture, protocol, runtime, identity, POSIX surface, operations, and research directions.

User manual — Short operator-oriented path: clone, run seeder and booter, use the shell and identity features, find man and troubleshooting without reading cover to cover.

docs/reference/README.md — File-by-file inventory, environment variables, data-flow diagram.

docs/architecture/KERNEL_CONTRACT.md — Single-page contract: subsystems, boot steps, ctx semver, typed errors.

developer-guide/README.md — How to write run(ctx, argv) / start(ctx), extend /bin, and test under Pear.

Kernel extensions — Kernel feature bitmask, seed-channel RPC, and capability bits.

The ctx object is versioned for kernels and scripts that depend on booter behavior. Treat packages/bare-os-booter/CHANGELOG.md as the contract history (bareOsCtxApiVersion / BARE_OS_CTX_API_VERSION). TypeScript authors can use packages/bare-os-booter/lib/bare-os-ctx.d.ts.


Who should read what (three paths)

I want to run it. Start at the user manual or the root README.md, then Chapter 7 — Operations (install, npm test, seeder/booter, Pear). Skim Chapter 1 for vocabulary.

I want to change the image or /bin. Read PrefaceChapter 6 → the developer guide, especially extending coreutils and the ctx object.

I want the architecture and trust model. Read PrefaceChapter 2 — BlueprintsChapter 3 — ProtocolChapter 4 — Booter runtimeChapter 5 — Identity.


Chapters

Pear workflows, ctx.bare, drive bundles: developer-guide ch.11 and ch.12.


Packages in one sentence each

  • bare-os-protocol — Shared topic string, MBR layout, Protomux message IDs, and kernel feature bits used by seeder and booter.
  • bare-os-seeder — Stages kernel/ into a system Hyperdrive, publishes the MBR block and joins the swarm so booters can replicate the image.
  • bare-os-booter — Joins the swarm, opens system + personal drives, builds ctx, runs /boot/init.js, shell, initd, cron, and delegated tools (git, curl, wget).
  • bare-os-coreutils — Sources and build for /bin utilities plus the merged man.json database.
  • bare-os-bare-libs — Builds optional /lib/bare bundles merged into ctx.bare when enabled.

The staged tree also includes kernel/README.md (what lands on the system drive) and scripts/README.md (repo automation). Pear release links and host env notes: PEAR-RUN.md.


Root README

The top-level README.md is the short runbook (clone, npm ci, seeder/booter commands). Use it when you only need copy-paste steps.


License: Apache-2.0 — see LICENSE.