Author: eelco
Date: Fri Nov 26 14:34:58 2010
New Revision: 24875
URL: https://svn.nixos.org/websvn/nix/?rev=24875&sc=1

Log:
* Include the system type in manifests as a hint for the
  binary patch generator.

Modified:
   hydra/trunk/src/lib/Hydra/Helper/CatalystUtils.pm
   hydra/trunk/src/lib/Hydra/View/NixManifest.pm

Modified: hydra/trunk/src/lib/Hydra/Helper/CatalystUtils.pm
==============================================================================
--- hydra/trunk/src/lib/Hydra/Helper/CatalystUtils.pm   Fri Nov 26 14:34:29 
2010        (r24874)
+++ hydra/trunk/src/lib/Hydra/Helper/CatalystUtils.pm   Fri Nov 26 14:34:58 
2010        (r24875)
@@ -123,10 +123,16 @@
             # `--include-outputs' flag passed to `nix-store'.
             push @storePaths, $build->drvpath;
         } else {
-            push @storePaths, $build->outpath;
+           push @storePaths, $build->outpath;
         }
         my $pkgName = $build->nixname . "-" . $build->system . "-" . 
$build->id;
         $c->stash->{nixPkgs}->{"${pkgName}.nixpkg"} = {build => $build, name 
=> $pkgName};
+        # Put the system type in the manifest (for top-level paths) as
+       # a hint to the binary patch generator.  (It shouldn't try to
+       # generate patches between builds for different systems.)  It
+       # would be nice if Nix stored this info for every path but it
+       # doesn't.
+       $c->stash->{systemForPath}->{$build->outpath} = $build->system;
     };
 
     $c->stash->{storePaths} = [...@storepaths];

Modified: hydra/trunk/src/lib/Hydra/View/NixManifest.pm
==============================================================================
--- hydra/trunk/src/lib/Hydra/View/NixManifest.pm       Fri Nov 26 14:34:29 
2010        (r24874)
+++ hydra/trunk/src/lib/Hydra/View/NixManifest.pm       Fri Nov 26 14:34:58 
2010        (r24875)
@@ -33,6 +33,8 @@
         
         my $url = $c->stash->{narBase} . "/" . $escaped;
 
+        my $system = $c->stash->{systemForPath}->{$path};
+
         $manifest .=
             "{\n" .
             "  StorePath: $path\n" .
@@ -41,6 +43,7 @@
             "  NarURL: $url\n" .
             "  NarHash: $hash\n" .
             ($narSize != 0 ? "  NarSize: $narSize\n" : "") .
+            (defined $system ? "  System: $system\n" : "") .
             "}\n";
     }
 
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to