Skip to content

v0.22.1

Latest

Choose a tag to compare

@arnarg arnarg released this 27 Jul 08:07
· 3 commits to main since this release

Pin your project settings with .nixidy.json

If you're working in a flake-less or devenv project, you've probably found yourself repeating the same --devenv or -f flags on every nixidy invocation, or relying on the auto-detection heuristics to figure out how your environment should be built. Now you can commit those choices once.

Drop a .nixidy.json in your project root:

{
  "devenv": true,
  "file": "k8s.nix"
}

The CLI picks it up automatically. devenv pins whether the devenv build backend is used, and file sets the entrypoint nix file for flake-less builds. Both are optional, so you can set just the one you care about.

The --devenv flag has grown into --devenv/--no-devenv so you can override the config in either direction from the command line. Resolution order is:

  1. CLI flag (--devenv / --no-devenv)
  2. .nixidy.json
  3. Auto-detection (e.g. devenv.nix present, no flake.nix)

The entrypoint file follows the same pattern: --file wins, then the config, then the default.nix default.

Bug Fixes

  • CRDs now apply with server-side apply. Large CRDs can exceed the annotation size limit that client-side apply imposes, and server-side apply is itself incompatible with nixidy's label-based pruning. nixidy apply now applies CRDs with --server-side --force-conflicts and skips pruning for the CRDs class only. Namespaces and regular manifests keep their existing prune behavior. #83 65cea87

Improvements

  • Switched to nixfmt. nixidy now formats with the nixfmt package instead of nixfmt-rfc-style, which has been merged upstream into nixfmt. #106 @0z13