The bench

Machines the catalog is known to build on.

Every tool in the gallery is verified against these six machines quarterly. A "ritual build" across all of them — make clean && make && make test — is what keeps the archive from quietly rotting out from under me. The next ritual build is scheduled for early April 2026.

anvil

FreeBSD 14.1 · Threadripper 3970X · 128 GB

The primary build host. Bought used in early 2021 from a rendering studio that was downsizing. Runs ZFS. Loud enough that I keep it in the utility room. Every tool in the catalog has its first release build cut here.

drafting

Debian 12 · i7-1260P · 16 GB

The laptop. Where most code is actually written. Carried between the studio and the other room that also has a desk in it. Battery replaced twice. Keycaps C, S, and I visibly worn.

dustbowl

NetBSD 10 · MIPS R14K · 2 GB

A salvaged workstation from the research lab that was the second-to-last job. Big-endian MIPS, because exactly one tool in the catalog (dis-cat) had a subtle endian bug for three years before this machine caught it. That alone is worth the electricity.

pico-a

Alpine Linux · ARM Cortex-A72 · 4 GB · 32-bit userland

A small SBC with a deliberately 32-bit userland. Catches the tools that silently assumed 64-bit long, time_t, or off_t. Has caught three of them so far, which is three more than I would have found without it.

pico-b

Debian sid · RISC-V rv64gc · 8 GB

Added in 2024 because the toolchain finally stopped being a source of unique suffering. Mostly used to find places where hand-written x86 assembly had leaked into what was supposed to be portable C.

warden

OpenBSD 7.5 · Xeon E3 · 32 GB ECC

The paranoid one. Stricter warnings, pledge(2), unveil(2), and a linker that has opinions. Any tool that misuses system calls tends to find out here first. Loud about it, in a polite way.

What the ritual build checks

  • Every tool builds clean with -Wall -Wextra -Werror on at least two compilers per machine.
  • Every tool passes its own test suite, such as it is.
  • Every tool survives a SIGPIPE audit (see glossary).
  • Every tool's man page still renders under mandoc -Tlint.
  • Every tool's --help fits in 24 lines on an 80-column terminal.