exo icon indicating copy to clipboard operation
exo copied to clipboard

ci: build all Nix outputs on all platforms and push to cachix

Open JakeHillion opened this issue 2 months ago • 0 comments

The CI was only running nix flake check on ubuntu-latest, missing builds for other platforms and not caching packages or devShells.

Added a matrix-based nix-build job that runs on macos-26 (aarch64-darwin), ubuntu-latest (x86_64-linux), and ubuntu-24.04-arm (aarch64-linux). Each job enumerates all packages and devShells via nix flake show --json, builds them in a single nix build call for parallelization, then runs nix flake check. The cachix-action pushes all built outputs automatically.

This ensures all Nix outputs are built and cached for every supported platform, speeding up local development and CI runs.

Test plan:

  • Tested jq enumeration command locally, correctly outputs devShell paths
  • Verified xargs pipeline works with the enumerated outputs
  • CI

JakeHillion avatar Jan 12 '26 18:01 JakeHillion