# standalone — rig as single files, one folder per profile **Everything in the `/` folders here is generated. Do not edit it.** It is rig's own tools flattened into single self-contained files, with one profile's configuration resolved in, for a machine the full rig is not going to. ``` standalone//rigdeps.sh rig's toolchain installer (ctrl/deps.sh) standalone//rigmini.sh rig's memory tool (ctrl/mem.sh) standalone//Makefile shorthand for calling them ``` One folder per file in `ctrl/env.d/`. Pick the profile you mean to run and copy that folder; nothing else from rig is needed. The scripts run without the Makefile. ```bash bash rigdeps.sh detect # report the host and toolchain; changes nothing bash rigdeps.sh install dev # download, verify, install into ~/.local/bin bash rigmini.sh status # advertised memory and what caps it; safe bash rigmini.sh all # measure, then weigh it against this profile make deps / make mem # the same, via the Makefile ``` `rigmini.sh push` and `all` deliberately consume memory. Run `status` first, and only run them somewhere other processes may be squeezed. ## Why generated These used to be hand-kept copies, and they drifted: the standalone memory tool said 2 GB per node long after rig had measured 800 MB. Now a kit is a pure function of rig. It gains nothing rig lacks; improve rig and every kit follows. ```bash make standalone # regenerate every kit make standalone check # fail if any kit differs from what rig generates now ``` `make selftest` runs the check, so a kit left behind by a change to rig fails there rather than on the machine it was copied to. How the generator stays correct as rig changes shape — it knows no file, function or variable names, only a marker, a sourcing rule and two config questions, and it proves each kit stands alone before writing it — is in `ctrl/standalone.sh`.