03ddcb3b

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

Add a Nix flake for fast, incrementally-cached CI

Builds bombadil with crane and the oxalica rust-overlay (x86_64-linux): the CLI
binary, static musl + aarch64 release binaries, the wasm inspect UI, the npm
package, plus clippy, rustfmt and the test suite -- each as exactly one
attribute. Dependencies are compiled once in a single derivation whose source
crane reduces to cargo metadata only, so editing source never rebuilds them.
nix-ci.nix hand-declares the build graph and disables auto dependency discovery
to keep no-op rebuilds fast.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 25s 2s 2s 28s 25s
Eval 1m52s 3s 3s 1m56s 1m24s
Build - - - - 23h14m03s
Suite 25s 6s - - 23h15m53s