summaryrefslogtreecommitdiffstats
path: root/corepkgs
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2013-01-18 19:59:23 -0500
committerEelco Dolstra <eelco.dolstra@logicblox.com>2013-01-21 10:20:52 +0100
commitd6fd6d8aff06740f6c2595d13482d9183c11d243 (patch)
tree222b30257b6e1b952af9aa87d32deb31eff4b482 /corepkgs
parent536c85ea49c16a2ecd5a1ba169975b296cd6158c (diff)
corepkgs/fetchurl: Enable making the downloaded file executable
Diffstat (limited to 'corepkgs')
-rw-r--r--corepkgs/fetchurl.nix7
1 files changed, 4 insertions, 3 deletions
diff --git a/corepkgs/fetchurl.nix b/corepkgs/fetchurl.nix
index 4a0ae8279..39b9dd508 100644
--- a/corepkgs/fetchurl.nix
+++ b/corepkgs/fetchurl.nix
@@ -1,6 +1,6 @@
with import <nix/config.nix>;
-{system ? builtins.currentSystem, url, outputHash ? "", outputHashAlgo ? "", md5 ? "", sha1 ? "", sha256 ? ""}:
+{system ? builtins.currentSystem, url, outputHash ? "", outputHashAlgo ? "", md5 ? "", sha1 ? "", sha256 ? "", executable ? false}:
assert (outputHash != "" && outputHashAlgo != "")
|| md5 != "" || sha1 != "" || sha256 != "";
@@ -8,10 +8,10 @@ assert (outputHash != "" && outputHashAlgo != "")
let
builder = builtins.toFile "fetchurl.sh"
- ''
+ (''
echo "downloading $url into $out"
${curl} --fail --location --max-redirs 20 --insecure "$url" > "$out"
- '';
+ '' + (if executable then "${coreutils}/chmod +x $out" else ""));
in
@@ -25,6 +25,7 @@ derivation {
if sha256 != "" then "sha256" else if sha1 != "" then "sha1" else "md5";
outputHash = if outputHash != "" then outputHash else
if sha256 != "" then sha256 else if sha1 != "" then sha1 else md5;
+ outputHashMode = if executable then "recursive" else "flat";
inherit system url;