# standalone — single files for a machine the full rig is not going to Each script here does one of rig's jobs without the rest of the tree. Copy one file onto a machine, run it, read the output. Nothing to clone, nothing to install first. | file | does | full-rig equivalent | | --- | --- | --- | | `rigdeps.sh` | installs kind, kubectl, tilt, ctlptl and jq at rig's pins, checksum-verified, no sudo | `make deps` (`ctrl/deps.sh`) | | `rigmini.sh` | reports how much memory the machine *advertises* and what caps it; `push` measures what it will actually *survive* | `make mem`, and the memory section of `make check` | **These are transitional.** Where the full rig is installed, use its own targets instead; they read `ctrl/versions.env` and the profile, which these cannot. ## Why single files `rigdeps.sh` carries its pins inline, because `ctrl/versions.env` is not on the machine it is for. That makes two copies of the same versions and checksums. `make pins` compares them and fails on any difference — `ctrl/versions.env` is the source of truth. `rigmini.sh` exists because on a container or managed workspace `/proc/meminfo` reports the *host's* memory while a cgroup cap kills processes at a fraction of it. `status` reads the caps; `push` allocates until something stops it. ## Use ```bash bash rigdeps.sh detect # report, change nothing bash rigdeps.sh install dev # install into ~/.local/bin bash rigmini.sh status # advertised memory and caps; safe bash rigmini.sh push # allocates until it stops — not on a machine you need ``` `rigmini.sh push` deliberately consumes memory. Run `status` first, and only run `push` somewhere it is acceptable for other processes to be squeezed.