diff options
Diffstat (limited to 'nixpkgs/doc/functions/trivial-builders.xml')
-rw-r--r-- | nixpkgs/doc/functions/trivial-builders.xml | 46 |
1 files changed, 6 insertions, 40 deletions
diff --git a/nixpkgs/doc/functions/trivial-builders.xml b/nixpkgs/doc/functions/trivial-builders.xml index 0211a4f31728..ae9f3a1b255d 100644 --- a/nixpkgs/doc/functions/trivial-builders.xml +++ b/nixpkgs/doc/functions/trivial-builders.xml @@ -5,11 +5,7 @@ <title>Trivial builders</title> <para> - Nixpkgs provides a couple of functions that help with building derivations. - The most important one, <function>stdenv.mkDerivation</function>, has already - been documented above. The following functions wrap - <function>stdenv.mkDerivation</function>, making it easier to use in certain - cases. + Nixpkgs provides a couple of functions that help with building derivations. The most important one, <function>stdenv.mkDerivation</function>, has already been documented above. The following functions wrap <function>stdenv.mkDerivation</function>, making it easier to use in certain cases. </para> <variablelist> @@ -19,17 +15,7 @@ </term> <listitem> <para> - This takes three arguments, <literal>name</literal>, - <literal>env</literal>, and <literal>buildCommand</literal>. - <literal>name</literal> is just the name that Nix will append to the store - path in the same way that <literal>stdenv.mkDerivation</literal> uses its - <literal>name</literal> attribute. <literal>env</literal> is an attribute - set specifying environment variables that will be set for this derivation. - These attributes are then passed to the wrapped - <literal>stdenv.mkDerivation</literal>. <literal>buildCommand</literal> - specifies the commands that will be run to create this derivation. Note - that you will need to create <literal>$out</literal> for Nix to register - the command as successful. + This takes three arguments, <literal>name</literal>, <literal>env</literal>, and <literal>buildCommand</literal>. <literal>name</literal> is just the name that Nix will append to the store path in the same way that <literal>stdenv.mkDerivation</literal> uses its <literal>name</literal> attribute. <literal>env</literal> is an attribute set specifying environment variables that will be set for this derivation. These attributes are then passed to the wrapped <literal>stdenv.mkDerivation</literal>. <literal>buildCommand</literal> specifies the commands that will be run to create this derivation. Note that you will need to create <literal>$out</literal> for Nix to register the command as successful. </para> <para> An example of using <literal>runCommand</literal> is provided below. @@ -62,10 +48,7 @@ </term> <listitem> <para> - This works just like <literal>runCommand</literal>. The only difference is - that it also provides a C compiler in <literal>buildCommand</literal>’s - environment. To minimize your dependencies, you should only use this if - you are sure you will need a C compiler as part of running your command. + This works just like <literal>runCommand</literal>. The only difference is that it also provides a C compiler in <literal>buildCommand</literal>’s environment. To minimize your dependencies, you should only use this if you are sure you will need a C compiler as part of running your command. </para> </listitem> </varlistentry> @@ -75,20 +58,10 @@ </term> <listitem> <para> - These functions write <literal>text</literal> to the Nix store. This is - useful for creating scripts from Nix expressions. - <literal>writeTextFile</literal> takes an attribute set and expects two - arguments, <literal>name</literal> and <literal>text</literal>. - <literal>name</literal> corresponds to the name used in the Nix store - path. <literal>text</literal> will be the contents of the file. You can - also set <literal>executable</literal> to true to make this file have the - executable bit set. + These functions write <literal>text</literal> to the Nix store. This is useful for creating scripts from Nix expressions. <literal>writeTextFile</literal> takes an attribute set and expects two arguments, <literal>name</literal> and <literal>text</literal>. <literal>name</literal> corresponds to the name used in the Nix store path. <literal>text</literal> will be the contents of the file. You can also set <literal>executable</literal> to true to make this file have the executable bit set. </para> <para> - Many more commands wrap <literal>writeTextFile</literal> including - <literal>writeText</literal>, <literal>writeTextDir</literal>, - <literal>writeScript</literal>, and <literal>writeScriptBin</literal>. - These are convenience functions over <literal>writeTextFile</literal>. + Many more commands wrap <literal>writeTextFile</literal> including <literal>writeText</literal>, <literal>writeTextDir</literal>, <literal>writeScript</literal>, and <literal>writeScriptBin</literal>. These are convenience functions over <literal>writeTextFile</literal>. </para> </listitem> </varlistentry> @@ -98,14 +71,7 @@ </term> <listitem> <para> - This can be used to put many derivations into the same directory - structure. It works by creating a new derivation and adding symlinks to - each of the paths listed. It expects two arguments, - <literal>name</literal>, and <literal>paths</literal>. - <literal>name</literal> is the name used in the Nix store path for the - created derivation. <literal>paths</literal> is a list of paths that will - be symlinked. These paths can be to Nix store derivations or any other - subdirectory contained within. + This can be used to put many derivations into the same directory structure. It works by creating a new derivation and adding symlinks to each of the paths listed. It expects two arguments, <literal>name</literal>, and <literal>paths</literal>. <literal>name</literal> is the name used in the Nix store path for the created derivation. <literal>paths</literal> is a list of paths that will be symlinked. These paths can be to Nix store derivations or any other subdirectory contained within. </para> </listitem> </varlistentry> |