aboutsummaryrefslogtreecommitdiff
path: root/scripts/nix-unpack-closure.in
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2006-09-20 16:23:14 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2006-09-20 16:23:14 +0000
commit1b804f88e44e7f6760e9c43e329a8a6eb368c52e (patch)
tree11453454720adfa4ce0355d33502fc65602a95fa /scripts/nix-unpack-closure.in
parent0623359fbc67c421bf76b7433f92c7ef58050321 (diff)
* Absolute path to rm (NIX-51).
* Don't hardcore /nix/bin and /nix/store.
Diffstat (limited to 'scripts/nix-unpack-closure.in')
-rw-r--r--scripts/nix-unpack-closure.in8
1 files changed, 4 insertions, 4 deletions
diff --git a/scripts/nix-unpack-closure.in b/scripts/nix-unpack-closure.in
index 98c7d84db..2c9b4873a 100644
--- a/scripts/nix-unpack-closure.in
+++ b/scripts/nix-unpack-closure.in
@@ -15,7 +15,7 @@ $binDir = "@bindir@" unless defined $binDir;
my $tmpDir;
do { $tmpDir = tmpnam(); }
until mkdir $tmpDir, 0777;
-END { system "rm -rf '$tmpDir'"; }
+END { system "@coreutils@/rm -rf '$tmpDir'"; }
# Unpack the NAR archive on standard input.
@@ -34,15 +34,15 @@ opendir(DIR, "$tmpDir/unpacked/contents") or die "cannot open directory: $!";
foreach my $name (sort(readdir DIR)) {
next if $name eq "." or $name eq "..";
- my $storePath = "/nix/store/$name"; # !!!
+ my $storePath = "@storedir@/$name"; # !!!
# !!! this really isn't a good validity check!
- system "/nix/bin/nix-store --check-validity '$storePath' 2> /dev/null";
+ system "$binDir/nix-store --check-validity '$storePath' 2> /dev/null";
if ($? != 0) {
print STDERR "unpacking `$storePath'...\n";
# !!! race
- system("rm -rf '$storePath'") == 0
+ system("@coreutils@/rm -rf '$storePath'") == 0
or die "cannot remove `$storePath': $?";
system("$binDir/nix-store --restore '$storePath' < '$tmpDir/unpacked/contents/$name'") == 0