Build Systems Discussion
Summary
The piece surveys several build systems (Bazel, civ) and argues for key design principles, such as explicit inputs/outputs and configurable build targets. It introduces civ's sys hub and hubrepo approach as a flexible packaging layer aiming to decouple what to build from how to build it, enabling scalable, multi-machine workflows. The post also situates civ against Bazel and crates.io as open-source, extensible tooling.