summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2010-02-05 14:14:43 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2010-02-05 14:14:43 +0000
commite7906f26affbc36d99c67d99cd3e2c237d0f67fe (patch)
treee0d399f8da315ad6e153b133b4a17f2f7120cfa1
parent631ea038757bd88e55c10ec9b1aa1d2aee1af05f (diff)
* Make copy-tarballs.sh work on release.nix.
svn path=/nixpkgs/trunk/; revision=19834
-rw-r--r--doc/release-notes.xml2
-rwxr-xr-xmaintainers/scripts/copy-tarballs.sh2
-rw-r--r--maintainers/scripts/eval-release.nix20
3 files changed, 22 insertions, 2 deletions
diff --git a/doc/release-notes.xml b/doc/release-notes.xml
index 0a57aa7da189..82a43c2887b6 100644
--- a/doc/release-notes.xml
+++ b/doc/release-notes.xml
@@ -5,7 +5,7 @@
<title>Nixpkgs Release Notes</title>
-<section><title>Release 0.13 (January NNN, 2010)</title>
+<section><title>Release 0.13 (February 5, 2010)</title>
<para>As always, there are many changes. Some of the most important
updates are:
diff --git a/maintainers/scripts/copy-tarballs.sh b/maintainers/scripts/copy-tarballs.sh
index 76ced8a01d90..c8f357100036 100755
--- a/maintainers/scripts/copy-tarballs.sh
+++ b/maintainers/scripts/copy-tarballs.sh
@@ -2,7 +2,7 @@
distDir=/data/webserver/tarballs
-urls=$(nix-instantiate --eval-only --xml --strict pkgs/top-level/build-for-release.nix \
+urls=$(nix-instantiate --eval-only --xml --strict ./eval-release.nix \
| grep -A2 'name="urls"' \
| grep '<string value=' \
| sed 's/.*"\(.*\)".*/\1/' \
diff --git a/maintainers/scripts/eval-release.nix b/maintainers/scripts/eval-release.nix
new file mode 100644
index 000000000000..64dbbd15cf38
--- /dev/null
+++ b/maintainers/scripts/eval-release.nix
@@ -0,0 +1,20 @@
+# Evaluate `release.nix' like Hydra would (i.e. call each job
+# attribute with the expected `system' argument). Too bad
+# nix-instantiate can't to do this.
+
+let
+
+ lib = (import ../.. {}).lib;
+
+ rel = removeAttrs (import ../../pkgs/top-level/release.nix) ["tarball"];
+
+ maybe = x: let y = builtins.tryEval x; in if y.success then y.value else null;
+
+ call = attrs: lib.flip lib.mapAttrs attrs
+ (n: v: builtins.trace n (
+ if builtins.isFunction v then maybe (v { system = "i686-linux"; })
+ else if builtins.isAttrs v then call v
+ else null
+ ));
+
+in call rel