nixpkgs/pkgs/build-support/fetchadc/default.nix
2014-10-02 06:50:09 +01:00

47 lines
1.1 KiB
Nix

{ stdenv, curl, adc_user, adc_pass }:
let
impureEnvVars = [
# 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.
"http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
];
in
{ # Path to fetch.
path
# Hash of the downloaded file
, sha256
, # Additional curl options needed for the download to succeed.
curlOpts ? ""
, # Name of the file. If empty, use the basename of `path'.
name ? ""
}:
stdenv.mkDerivation {
url = "https://developer.apple.com/downloads/download.action?path=${path}";
name = if name != "" then name else baseNameOf path;
builder = ./builder.sh;
buildInputs = [ curl ];
meta = {
# Password-guarded files from ADC are certainly unfree, as far as we're concerned!
license = stdenv.lib.licenses.unfree;
};
outputHashAlgo = "sha256";
outputHash = sha256;
outputHashMode = "flat";
inherit curlOpts adc_user adc_pass;
preferLocalBuild = true;
}