aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorGraham Christensen <graham@grahamc.com>2019-05-21 22:29:23 -0400
committerGraham Christensen <graham@grahamc.com>2019-07-05 15:55:28 -0400
commit648bdf153d2e4d3c6687d8e1780b0dfd0aa98cda (patch)
tree81572e3963778f257e0b842918a52e2b4e7052dc /doc
parent4d829916e7c81529257e25dd4fca1cc27096ba8d (diff)
tarball-ttl: document
Incorporates text from Niklas Hambüchen in #2978 Closes #1115
Diffstat (limited to 'doc')
-rw-r--r--doc/manual/command-ref/conf-file.xml25
-rw-r--r--doc/manual/expressions/builtins.xml4
2 files changed, 27 insertions, 2 deletions
diff --git a/doc/manual/command-ref/conf-file.xml b/doc/manual/command-ref/conf-file.xml
index 24fbf28cf..09aad2e05 100644
--- a/doc/manual/command-ref/conf-file.xml
+++ b/doc/manual/command-ref/conf-file.xml
@@ -864,6 +864,31 @@ requiredSystemFeatures = [ "kvm" ];
</varlistentry>
+ <varlistentry xml:id="conf-tarball-ttl"><term><literal>tarball-ttl</literal></term>
+
+ <listitem>
+ <para>Default: <literal>3600</literal> seconds.</para>
+
+ <para>The number of seconds a downloaded tarball is considered
+ fresh. If the cached tarball is stale, Nix will check whether
+ it is still up to date using the ETag header. Nix will download
+ a new version if the ETag header is unsupported, or the
+ cached ETag doesn't match.
+ </para>
+
+ <para>Setting the TTL to <literal>0</literal> forces Nix to always
+ check if the tarball is up to date.</para>
+
+ <para>Nix caches tarballs in
+ <filename>$XDG_CACHE_HOME/nix/tarballs</filename>.</para>
+
+ <para>Files fetched via <envar>NIX_PATH</envar>,
+ <function>fetchGit</function>, <function>fetchMercurial</function>,
+ <function>fetchTarball</function>, and <function>fetchurl</function>
+ respect this TTL.
+ </para>
+ </listitem>
+ </varlistentry>
<varlistentry xml:id="conf-timeout"><term><literal>timeout</literal></term>
diff --git a/doc/manual/expressions/builtins.xml b/doc/manual/expressions/builtins.xml
index a87639a07..deffcb594 100644
--- a/doc/manual/expressions/builtins.xml
+++ b/doc/manual/expressions/builtins.xml
@@ -347,7 +347,7 @@ stdenv.mkDerivation { … }
You can change the cache timeout either on the command line with
<option>--option tarball-ttl <replaceable>number of seconds</replaceable></option> or
in the Nix configuration file with this option:
- <literal>tarball-ttl <replaceable>number of seconds to cache</replaceable></literal>.
+ <literal><xref linkend="conf-tarball-ttl" /> <replaceable>number of seconds to cache</replaceable></literal>.
</para>
<para>Note that when obtaining the hash with <varname>nix-prefetch-url
@@ -498,7 +498,7 @@ stdenv.mkDerivation { … }
fetch the latest version of a remote branch.
</para>
<note><para>Nix will refetch the branch in accordance to
- <option>tarball-ttl</option>.</para></note>
+ <xref linkend="conf-tarball-ttl" />.</para></note>
<note><para>This behavior is disabled in
<emphasis>Pure evaluation mode</emphasis>.</para></note>
<programlisting>builtins.fetchGit {