summary refs log tree commit diff
path: root/tests/substitutes2.sh
blob: 416e815360c20c0065fac0f5b6b56507a362916f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
source common.sh

# Instantiate.
drvPath=$($nixinstantiate substitutes2.nix)
echo "derivation is $drvPath"

# Find the output path.
outPath=$($nixstore -qvvvvv "$drvPath")
echo "output path is $outPath"

regSub() {
    (echo $1 && echo "" && echo $2 && echo 3 && echo $outPath && echo Hallo && echo Wereld && echo 0) | $nixstore --register-substitutes
}

# Register a substitute for the output path.
regSub $outPath $(pwd)/substituter.sh

# Register another substitute for the output path.  This one takes
# precedence over the previous one.  It will fail.
regSub $outPath $(pwd)/substituter2.sh

$nixstore -rvv "$drvPath"

text=$(cat "$outPath"/hello)
if test "$text" != "Hallo Wereld"; then exit 1; fi