Add netrc-file support
This commit is contained in:
parent
1351b0df87
commit
e6e74f987f
|
@ -430,6 +430,21 @@ flag, e.g. <literal>--option gc-keep-outputs false</literal>.</para>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
|
|
||||||
|
<varlistentry><term><literal>netrc-file</literal></term>
|
||||||
|
|
||||||
|
<listitem><para>If set to an absolute path to a <filename>netrc</filename>
|
||||||
|
file, Nix will use the HTTP authentication credentials in this file when
|
||||||
|
trying to download from a remote host through HTTP or HTTPS. Defaults to
|
||||||
|
<filename>$NIX_CONF_DIR/netrc</filename>.</para>
|
||||||
|
|
||||||
|
<para>The <filename>netrc</filename> file consists of zero or more lines
|
||||||
|
like: <literal>machine <replaceable>my-machine</replaceable> login
|
||||||
|
<replaceable>my-username</replaceable> password
|
||||||
|
<replaceable>my-password</replaceable></literal>.</para></listitem>
|
||||||
|
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
|
||||||
<varlistentry><term><literal>system</literal></term>
|
<varlistentry><term><literal>system</literal></term>
|
||||||
|
|
||||||
<listitem><para>This option specifies the canonical Nix system
|
<listitem><para>This option specifies the canonical Nix system
|
||||||
|
|
|
@ -230,6 +230,11 @@ struct CurlDownloader : public Downloader
|
||||||
curl_easy_setopt(req, CURLOPT_SSL_VERIFYHOST, 0);
|
curl_easy_setopt(req, CURLOPT_SSL_VERIFYHOST, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Path netrcFile = settings.get("netrc-file",
|
||||||
|
(format("%1%/%2%") % settings.nixConfDir % "netrc").str());
|
||||||
|
curl_easy_setopt(req, CURLOPT_NETRC_FILE, netrcFile.c_str());
|
||||||
|
curl_easy_setopt(req, CURLOPT_NETRC, CURL_NETRC_OPTIONAL);
|
||||||
|
|
||||||
result.data = std::make_shared<std::string>();
|
result.data = std::make_shared<std::string>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue