about summary refs log tree commit diff
path: root/scripts/nix-push.in
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2004-12-13T16·56+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2004-12-13T16·56+0000
commite3b051aeeb968528d918b6af6c1e1df0bd7de958 (patch)
tree19f659c9a99bc6bc9516a1ce6d50210c694f65b9 /scripts/nix-push.in
parent862f4c154e883611ba9dfefe921c87e6423075ea (diff)
* Include the size of the bzipped archive (necessary for computing the
  cheapest download path), as well as the hash of the contents of the
  path (necessary for checking patch applicability).

Diffstat (limited to 'scripts/nix-push.in')
-rw-r--r--scripts/nix-push.in20
1 files changed, 15 insertions, 5 deletions
diff --git a/scripts/nix-push.in b/scripts/nix-push.in
index fc44d02c6cba..9f1d5d22b459 100644
--- a/scripts/nix-push.in
+++ b/scripts/nix-push.in
@@ -125,16 +125,26 @@ for (my $n = 0; $n < scalar @storepaths; $n++) {
     (-f $narfile) or die "narfile for $storepath not found";
     push @nararchives, $narfile;
 
-    open MD5, "$nardir/md5" or die "cannot open hash";
-    my $hash = <MD5>;
-    chomp $hash;
-    $hash =~ /^[0-9a-z]{32}$/ or die "invalid hash";
+    open MD5, "$nardir/narbz2-hash" or die "cannot open narbz2-hash";
+    my $narbz2Hash = <MD5>;
+    chomp $narbz2Hash;
+    $narbz2Hash =~ /^[0-9a-z]{32}$/ or die "invalid hash";
     close MD5;
 
+    open MD5, "$nardir/nar-hash" or die "cannot open nar-hash";
+    my $narHash = <MD5>;
+    chomp $narHash;
+    $narHash =~ /^[0-9a-z]{32}$/ or die "invalid hash";
+    close MD5;
+    
+    my $size = (stat $narfile)[7];
+
     print MANIFEST "{\n";
     print MANIFEST "  StorePath: $storepath\n";
     print MANIFEST "  NarURL: $archives_get_url/$narname\n";
-    print MANIFEST "  MD5: $hash\n";
+    print MANIFEST "  MD5: $narbz2Hash\n";
+    print MANIFEST "  NarHash: $narHash\n";
+    print MANIFEST "  Size: $size\n";
 
     if ($storepath =~ /\.store$/) {
         open PREDS, "@bindir@/nix-store --query --predecessors $storepath |" or die "cannot run nix";