* Add missing substitutes files to dist.
* Add a garbage collector test.
This commit is contained in:
parent
8a3eef22e3
commit
e5c16c9582
4 changed files with 25 additions and 20 deletions
|
@ -33,10 +33,11 @@ substitutes2.sh: substitutes2.nix
|
||||||
fallback.sh: fallback.nix
|
fallback.sh: fallback.nix
|
||||||
nix-push.sh: dependencies.nix
|
nix-push.sh: dependencies.nix
|
||||||
nix-pull.sh: dependencies.nix
|
nix-pull.sh: dependencies.nix
|
||||||
|
gc.sh: dependencies.nix
|
||||||
|
|
||||||
TESTS = init.sh hash.sh lang.sh simple.sh dependencies.sh locking.sh parallel.sh \
|
TESTS = init.sh hash.sh lang.sh simple.sh dependencies.sh locking.sh parallel.sh \
|
||||||
build-hook.sh substitutes.sh substitutes2.sh fallback.sh nix-push.sh verify.sh \
|
build-hook.sh substitutes.sh substitutes2.sh fallback.sh nix-push.sh gc.sh \
|
||||||
nix-pull.sh
|
verify.sh nix-pull.sh
|
||||||
|
|
||||||
XFAIL_TESTS =
|
XFAIL_TESTS =
|
||||||
|
|
||||||
|
@ -51,5 +52,7 @@ EXTRA_DIST = $(TESTS) \
|
||||||
locking.nix.in locking.builder.sh \
|
locking.nix.in locking.builder.sh \
|
||||||
parallel.nix.in parallel.builder.sh \
|
parallel.nix.in parallel.builder.sh \
|
||||||
build-hook.nix.in build-hook.hook.sh \
|
build-hook.nix.in build-hook.hook.sh \
|
||||||
substitutes.nix.in substitutes2.nix.in fallback.nix.in \
|
substitutes.nix.in substituter.sh \
|
||||||
|
substitutes2.nix.in substituter2.sh \
|
||||||
|
fallback.nix.in \
|
||||||
$(wildcard lang/*.nix) $(wildcard lang/*.exp)
|
$(wildcard lang/*.nix) $(wildcard lang/*.exp)
|
||||||
|
|
14
tests/gc.sh
Normal file
14
tests/gc.sh
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
storeExpr=$($TOP/src/nix-instantiate/nix-instantiate dependencies.nix)
|
||||||
|
outPath=$($TOP/src/nix-store/nix-store -rvv "$storeExpr")
|
||||||
|
|
||||||
|
# Set a GC root.
|
||||||
|
ln -s $outPath "$NIX_LOCALSTATE_DIR"/nix/gcroots/foo
|
||||||
|
|
||||||
|
$NIX_BIN_DIR/nix-collect-garbage
|
||||||
|
|
||||||
|
# Check that the root and its dependencies haven't been deleted.
|
||||||
|
cat $outPath/foobar
|
||||||
|
cat $outPath/input-2/bar
|
||||||
|
|
||||||
|
# Check that the derivation has been GC'd.
|
||||||
|
if cat $storeExpr > /dev/null; then false; fi
|
|
@ -18,11 +18,13 @@ ln -s $TOP/src/nix-store/nix-store $NIX_BIN_DIR/
|
||||||
ln -s $TOP/src/nix-instantiate/nix-instantiate $NIX_BIN_DIR/
|
ln -s $TOP/src/nix-instantiate/nix-instantiate $NIX_BIN_DIR/
|
||||||
ln -s $TOP/src/nix-hash/nix-hash $NIX_BIN_DIR/
|
ln -s $TOP/src/nix-hash/nix-hash $NIX_BIN_DIR/
|
||||||
ln -s $TOP/scripts/nix-prefetch-url $NIX_BIN_DIR/
|
ln -s $TOP/scripts/nix-prefetch-url $NIX_BIN_DIR/
|
||||||
|
ln -s $TOP/scripts/nix-collect-garbage $NIX_BIN_DIR/
|
||||||
mkdir $NIX_BIN_DIR/nix
|
mkdir $NIX_BIN_DIR/nix
|
||||||
ln -s $TOP/scripts/download-using-manifests.pl $NIX_BIN_DIR/nix/
|
ln -s $TOP/scripts/download-using-manifests.pl $NIX_BIN_DIR/nix/
|
||||||
ln -s $TOP/scripts/readmanifest.pm $NIX_BIN_DIR/nix/
|
ln -s $TOP/scripts/readmanifest.pm $NIX_BIN_DIR/nix/
|
||||||
|
|
||||||
mkdir -p "$NIX_LOCALSTATE_DIR"/nix/manifests
|
mkdir -p "$NIX_LOCALSTATE_DIR"/nix/manifests
|
||||||
|
mkdir -p "$NIX_LOCALSTATE_DIR"/nix/gcroots
|
||||||
mkdir -p "$NIX_LOCALSTATE_DIR"/log/nix
|
mkdir -p "$NIX_LOCALSTATE_DIR"/log/nix
|
||||||
|
|
||||||
mkdir $NIX_DATA_DIR/nix
|
mkdir $NIX_DATA_DIR/nix
|
||||||
|
@ -31,6 +33,7 @@ cp -prd $TOP/corepkgs $NIX_DATA_DIR/nix/
|
||||||
for i in $NIX_DATA_DIR/nix/corepkgs/nar/nar.sh \
|
for i in $NIX_DATA_DIR/nix/corepkgs/nar/nar.sh \
|
||||||
$NIX_BIN_DIR/nix/download-using-manifests.pl \
|
$NIX_BIN_DIR/nix/download-using-manifests.pl \
|
||||||
$NIX_BIN_DIR/nix-prefetch-url \
|
$NIX_BIN_DIR/nix-prefetch-url \
|
||||||
|
$NIX_BIN_DIR/nix-collect-garbage \
|
||||||
; do
|
; do
|
||||||
echo "$REAL_BIN_DIR"
|
echo "$REAL_BIN_DIR"
|
||||||
sed < $i > $i.tmp \
|
sed < $i > $i.tmp \
|
||||||
|
|
|
@ -1,18 +1,3 @@
|
||||||
# Set a PATH (!!! impure).
|
|
||||||
export PATH=/bin:/usr/bin:$PATH
|
|
||||||
|
|
||||||
mkdir $out
|
|
||||||
|
|
||||||
cat > $out/substituter <<EOF
|
|
||||||
#! /bin/sh -ex
|
#! /bin/sh -ex
|
||||||
echo \$*
|
echo $*
|
||||||
|
|
||||||
case \$* in
|
|
||||||
*)
|
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
|
||||||
esac
|
|
||||||
EOF
|
|
||||||
|
|
||||||
chmod +x $out/substituter
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue