Skip to content

Remove cachix-push pinning, extract paths from JSON directly

Horizon Bot requested to merge fix-cachix-push-prefix into master

Problem

The cachix-push tool was failing because it requires a --prefix for pinning, and without one the pin names started with - which was interpreted as a command-line flag.

We don't need pinning at all - we just want to push build outputs to cachix.

Solution

Extract store paths directly from the omnix JSON and pipe to cachix:

jq -r '.result.ROOT.build.outPaths[]' om.json | xargs cachix push horizon

This is simpler and avoids:

  • Dependency on external cachix-push tool (not in nixpkgs)
  • Pinning complexity we don't need
  • The prefix naming issue

Changes

  • Update nix/modules/cachix.nix to extract paths with jq
  • Update nix/ci.nix test to match
  • Update test/module-test/nix/golden expected output
  • Update ChangeLog.md to reflect the simpler approach

🤖 Generated with Claude Code

Merge request reports