[Nix-dev] When did nix start to do negative build caching by default, and how to undo it?

Bjørn Forsman bjorn.forsman at gmail.com
Wed Apr 23 22:47:46 CEST 2014


Hi all,

I want to try rebuilding a package that has previously failed to build:

$ nix-build -A motion
these derivations will be built:
  /nix/store/qlrz1hbl171fb2g66sa8ll2rpyzm45y5-motion-3.2.12.drv
builder for `/nix/store/4f3h897a00w2grhfz5j4pgrgy5bc9b1m-motion-3.2.12'
failed previously (cached)
error: build of
`/nix/store/qlrz1hbl171fb2g66sa8ll2rpyzm45y5-motion-3.2.12.drv' failed

I haven't change my config lately, so I was surprised to see that nix
now did a (negative) caching of the build result.

Oh, well, let's see what the man page says about reverting that. From
"man nix.conf" I see option "build-cache-failures" (which I will try
to use when I manage to get out of the current state I'm in) and
"nix-store --clear-failed-paths" to clear the status of failed paths.
Trying the latter:

$ sudo nix-store --clear-failed-paths
$ nix-build -A motion
these derivations will be built:
  /nix/store/qlrz1hbl171fb2g66sa8ll2rpyzm45y5-motion-3.2.12.drv
builder for `/nix/store/4f3h897a00w2grhfz5j4pgrgy5bc9b1m-motion-3.2.12'
failed previously (cached)
error: build of
`/nix/store/qlrz1hbl171fb2g66sa8ll2rpyzm45y5-motion-3.2.12.drv' failed

Nope, doesn't to work.

Any ideas about 1) when/why nix started doing negative caching by
default and 2) why "nix-store --clear-failed-paths" doesn't work?

Best regards,
Bjørn Forsman


More information about the nix-dev mailing list