* Fix nix-pull.

This commit is contained in:
Eelco Dolstra 2004-12-16 15:31:50 +00:00
parent f4041cc175
commit 4d25b0b0bb
1 changed files with 14 additions and 11 deletions

View File

@ -15,8 +15,8 @@ my $manifest = "$tmpdir/manifest";
# Obtain URLs either from the command line or from a configuration file.
my %storePaths2urls;
my %urls2hashes;
my %narFiles;
my %patches;
my %successors;
sub processURL {
@ -29,7 +29,7 @@ sub processURL {
"'$url' > '$manifest'") == 0
or die "curl failed: $?";
readManifest $manifest, \%storePaths2urls, \%urls2hashes, \%successors;
readManifest $manifest, \%narFiles, \%patches, \%successors;
}
while (@ARGV) {
@ -38,7 +38,7 @@ while (@ARGV) {
}
my $size = scalar (keys %storePaths2urls);
my $size = scalar (keys %narFiles);
print "$size store paths in manifest\n";
@ -62,13 +62,16 @@ my $pid = open2(\*READ, \*WRITE, "@bindir@/nix-store --substitute")
close READ;
foreach my $storePath (keys %storePaths2urls) {
print WRITE "$storePath\n";
print WRITE "$storeExpr\n";
print WRITE "/fetch\n";
print WRITE "2\n";
print WRITE "$storePaths2urls{$storePath}\n";
print WRITE "$urls2hashes{$storePaths2urls{$storePath}}\n";
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 "2\n";
print WRITE "$narFile->{url}\n";
print WRITE "$narFile->{hash}\n";
}
}
close WRITE;