nix/tests/fallback.sh

21 lines
595 B
Bash

source common.sh
clearStore
drvPath=$(nix-instantiate simple.nix)
echo "derivation is $drvPath"
outPath=$(nix-store -q --fallback "$drvPath")
echo "output path is $outPath"
# Build with a substitute that fails. This should fail.
export NIX_SUBSTITUTERS=$(pwd)/substituter2.sh
if nix-store -r "$drvPath"; then echo unexpected fallback; exit 1; fi
# Build with a substitute that fails. This should fall back to a source build.
export NIX_SUBSTITUTERS=$(pwd)/substituter2.sh
nix-store -r --fallback "$drvPath"
text=$(cat "$outPath"/hello)
if test "$text" != "Hello World!"; then exit 1; fi