aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/writing-nix-expressions.xml
diff options
context:
space:
mode:
authorGergely Risko <errge@nilcons.com>2014-08-27 16:46:02 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-08-28 18:23:55 +0200
commitfd61069a42289da195532bf68d15dc695cca7236 (patch)
treec0bc88b587aa590d7cdd58146e63af663e1917cf /doc/manual/writing-nix-expressions.xml
parent3f0a4bf0e7254edddaa864d23893d98da23c2977 (diff)
Introduce allowedRequisites feature
Diffstat (limited to 'doc/manual/writing-nix-expressions.xml')
-rw-r--r--doc/manual/writing-nix-expressions.xml19
1 files changed, 19 insertions, 0 deletions
diff --git a/doc/manual/writing-nix-expressions.xml b/doc/manual/writing-nix-expressions.xml
index 0470625ff..2c9b4a633 100644
--- a/doc/manual/writing-nix-expressions.xml
+++ b/doc/manual/writing-nix-expressions.xml
@@ -1569,6 +1569,25 @@ allowedReferences = [];
</varlistentry>
+ <varlistentry><term><varname>allowedRequisites</varname></term>
+
+ <listitem><para>This attribute is similar to
+ <varname>allowedReferences</varname>, but it specifies the legal
+ requisites of the whole closure, so all the dependencies
+ recursively. For example,
+
+<programlisting>
+allowedReferences = [ foobar ];
+</programlisting>
+
+ enforces that the output of a derivation cannot have any other
+ runtime dependency than <varname>foobar</varname>, and in addition
+ it enforces that <varname>foobar</varname> itself doesn't
+ introduce any other dependency itself. This is used in NixOS when
+ rebuilding the stdenv on Linux to ensure that the resulting stdenv
+ doesn't have any surprising dependency, e.g. on bootstrapTools.
+
+ </varlistentry>
<varlistentry><term><varname>exportReferencesGraph</varname></term>