summary refs log tree commit diff
path: root/scripts/nix-pull.in
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2004-12-20 14:57:03 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2004-12-20 14:57:03 +0000
commit7eed57e784068ae6e2e9bf4409639067df467cd3 (patch)
tree9424c5e456887a896593bc63ddcf0dd7916ba0fd /scripts/nix-pull.in
parent96c3d8a61550545549dfa31c62e68d16f4e89c0c (diff)
downloadguix-7eed57e784068ae6e2e9bf4409639067df467cd3.tar.gz
* Sync with changed substitute mechanism.
* Accept the NarHash line.
* Clear substitutes in `nix-channel --update'.

Diffstat (limited to 'scripts/nix-pull.in')
-rw-r--r--scripts/nix-pull.in9
1 files changed, 4 insertions, 5 deletions
diff --git a/scripts/nix-pull.in b/scripts/nix-pull.in
index a06ee7e575..d2c38d0ca1 100644
--- a/scripts/nix-pull.in
+++ b/scripts/nix-pull.in
@@ -48,10 +48,10 @@ my $nixExpr =
     "(import @datadir@/nix/corepkgs/nix-pull) " .
     "{system = \"@system@\";}";
 
-print STDERR "instantiating store expression...\n";
-my $storeExpr = `echo '$nixExpr' | @bindir@/nix-instantiate -`
+print STDERR "building downloader...\n";
+my $substProgram = `echo '$nixExpr' | @bindir@/nix-store -qnf \$(@bindir@/nix-instantiate -)`
     or die "cannot instantiate Nix expression";
-chomp $storeExpr;
+chomp $substProgram;
 
 
 # Register all substitutes.
@@ -66,8 +66,7 @@ foreach my $storePath (keys %narFiles) {
     my $narFileList = $narFiles{$storePath};
     foreach my $narFile (@{$narFileList}) {
         print WRITE "$storePath\n";
-        print WRITE "$storeExpr\n";
-        print WRITE "/fetch\n";
+        print WRITE "$substProgram/fetch\n";
         print WRITE "2\n";
         print WRITE "$narFile->{url}\n";
         print WRITE "$narFile->{hash}\n";