summary refs log tree commit diff
path: root/pkgs/stdenv/mingw/fetchurl/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/stdenv/mingw/fetchurl/default.nix')
-rw-r--r--pkgs/stdenv/mingw/fetchurl/default.nix28
1 files changed, 28 insertions, 0 deletions
diff --git a/pkgs/stdenv/mingw/fetchurl/default.nix b/pkgs/stdenv/mingw/fetchurl/default.nix
new file mode 100644
index 0000000000000..b4d278b2686fd
--- /dev/null
+++ b/pkgs/stdenv/mingw/fetchurl/default.nix
@@ -0,0 +1,28 @@
+{stdenv, curl, chmod}:
+
+{url, outputHash ? "", outputHashAlgo ? "", md5 ? "", sha1 ? "", sha256 ? ""}:
+
+assert (outputHash != "" && outputHashAlgo != "")
+    || md5 != "" || sha1 != "" || sha256 != "";
+
+stdenv.mkDerivation {
+  name = baseNameOf (toString url);
+  builder = ./builder.sh;
+
+  # Compatibility with Nix <= 0.7.
+  id = md5;
+
+  # New-style output content requirements.
+  outputHashAlgo = if outputHashAlgo != "" then outputHashAlgo else
+      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;
+  
+  inherit url chmod curl;
+
+  # We borrow these environment variables from the caller to allow
+  # easy proxy configuration.  This is impure, but a fixed-output
+  # derivation like fetchurl is allowed to do so since its result is
+  # by definition pure.
+  impureEnvVars = ["http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"];
+}