summary refs log tree commit diff
path: root/maintainers/scripts/eval-release.nix
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 /maintainers/scripts/eval-release.nix
parent631ea038757bd88e55c10ec9b1aa1d2aee1af05f (diff)
downloadnixpkgs-e7906f26affbc36d99c67d99cd3e2c237d0f67fe.tar
nixpkgs-e7906f26affbc36d99c67d99cd3e2c237d0f67fe.tar.gz
nixpkgs-e7906f26affbc36d99c67d99cd3e2c237d0f67fe.tar.bz2
nixpkgs-e7906f26affbc36d99c67d99cd3e2c237d0f67fe.tar.lz
nixpkgs-e7906f26affbc36d99c67d99cd3e2c237d0f67fe.tar.xz
nixpkgs-e7906f26affbc36d99c67d99cd3e2c237d0f67fe.tar.zst
nixpkgs-e7906f26affbc36d99c67d99cd3e2c237d0f67fe.zip
* Make copy-tarballs.sh work on release.nix.
svn path=/nixpkgs/trunk/; revision=19834
Diffstat (limited to 'maintainers/scripts/eval-release.nix')
-rw-r--r--maintainers/scripts/eval-release.nix20
1 files changed, 20 insertions, 0 deletions
diff --git a/maintainers/scripts/eval-release.nix b/maintainers/scripts/eval-release.nix
new file mode 100644
index 00000000000..64dbbd15cf3
--- /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