# verae-bootstrap Clone every Verae Time × Zapier **module repo** from Forgejo and install Node dependencies. Each **server type** has its own directory under `types/` (repos list + README + start notes). **Forgejo:** https://git.georgelambert.org/marchon/verae-bootstrap **SSH:** `ssh://git@git.georgelambert.org:2223/marchon/verae-bootstrap.git` ## Host requirements | Need | Why | |------|-----| | Node 20+ (`node`, `npm`) | All HTTP and worker processes | | Git + SSH to Forgejo **port 2223** | `git clone ssh://git@git.georgelambert.org:2223/marchon/.git` | | `nats-server -js` on **127.0.0.1:4222** | Archive / billing types only — never a public bind | | `curl` | Health probes | Zapier cloud never talks to NATS. Do not publish `:4222`. ## Fetch ```bash git clone ssh://git@git.georgelambert.org:2223/marchon/verae-bootstrap.git cd verae-bootstrap export VERAE_SRC=$HOME/verae-src bash scripts/fetch.sh # every repo bash scripts/fetch.sh ns1-all-in-one # one server type ``` `scripts/clone.sh` pulls `main`. `scripts/install-deps.sh` runs `npm install` **on the target OS** (then `npm rebuild`). Do not copy `node_modules` from macOS onto Linux — native addons such as `better-sqlite3` will fail with `invalid ELF header`. ## Server types | Type | Directory | What that host runs | |------|-----------|---------------------| | **ns1-all-in-one** | `types/ns1-all-in-one/` | Control plane + archive workers + keep (NS1 / 70.88.205.138) | | **control-plane** | `types/control-plane/` | Fleet, edges, IAM, billing HTTP (no worm/tree floor) | | **ns1-archive** | `types/ns1-archive/` | NATS + worm ×3 + tree-node ×3 + poller + webhook + aggregator + keep | | **lan-worker** | `types/lan-worker/` | Extra SSH worker (tree-node, archive-worm). Keep disabled until SSH works (`lan-134`). | Each type has `repos.txt` (subset of the master list) and `README.md`. ## NS1 all-in-one notes `:3000` on 70.88.205.138 is already a public app. zappier-edge on that box binds **127.0.0.1:13000**. Public portal remains **access-web `:3021/portal/`**. Archive workers are owned by **verae-keep**; fleet does not double-spawn them.