da784295

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):
- default/static-musl/aarch64-musl CLI binaries, the wasm inspect UI,
  the npm package, plus clippy, rustfmt and the test suite as checks.
- A single shared dependency derivation whose source is reduced by crane to
  cargo metadata only, so editing source code never rebuilds dependencies.
  See nix/experiments/deps-cache-stability.sh for a runnable proof.
- wasm-bindgen-cli pinned to 0.2.125 to match the wasm-bindgen crate.

nix flake check builds everything; this is what NixCI runs.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 0s 2s 2s 2s 0s
Eval 2s 2m39s 2m39s 2m41s 0s
Build 36s 8m43s - - 0s
Suite 0s 11m25s - - 36h24m55s

Timeline

0s1m2m3m4m5m6m