aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/src/expressions
diff options
context:
space:
mode:
Diffstat (limited to 'doc/manual/src/expressions')
-rw-r--r--doc/manual/src/expressions/advanced-attributes.md14
-rw-r--r--doc/manual/src/expressions/build-script.md20
-rw-r--r--doc/manual/src/expressions/builder-syntax.md20
-rw-r--r--doc/manual/src/expressions/derivations.md16
-rw-r--r--doc/manual/src/expressions/generic-builder.md13
-rw-r--r--doc/manual/src/expressions/language-values.md4
-rw-r--r--doc/manual/src/expressions/simple-building-testing.md2
7 files changed, 45 insertions, 44 deletions
diff --git a/doc/manual/src/expressions/advanced-attributes.md b/doc/manual/src/expressions/advanced-attributes.md
index 683b504a7..01e18513d 100644
--- a/doc/manual/src/expressions/advanced-attributes.md
+++ b/doc/manual/src/expressions/advanced-attributes.md
@@ -87,7 +87,7 @@ Derivations can declare some infrequently used optional attributes.
impureEnvVars = [ "http_proxy" "https_proxy" ... ];
to make it use the proxy server configuration specified by the user
- in the environment variables http\_proxy and friends.
+ in the environment variables `http_proxy` and friends.
This attribute is only allowed in [fixed-output
derivations](#fixed-output-drvs), where impurities such as these are
@@ -201,15 +201,15 @@ Derivations can declare some infrequently used optional attributes.
```
- then when the builder runs, the environment variable bigPath will
+ then when the builder runs, the environment variable `bigPath` will
contain the absolute path to a temporary file containing `a very
long
string`. That is, for any attribute x listed in `passAsFile`, Nix
- will pass an environment variable xPath holding the path of the file
- containing the value of attribute x. This is useful when you need to
- pass large strings to a builder, since most operating systems impose
- a limit on the size of the environment (typically, a few hundred
- kilobyte).
+ will pass an environment variable `xPath` holding the path of the
+ file containing the value of attribute x. This is useful when you
+ need to pass large strings to a builder, since most operating
+ systems impose a limit on the size of the environment (typically, a
+ few hundred kilobyte).
- `preferLocalBuild`
If this attribute is set to `true` and [distributed building is
diff --git a/doc/manual/src/expressions/build-script.md b/doc/manual/src/expressions/build-script.md
index 256a5cd44..a359ebc46 100644
--- a/doc/manual/src/expressions/build-script.md
+++ b/doc/manual/src/expressions/build-script.md
@@ -19,29 +19,29 @@ what a builder does. It performs the following steps:
- When Nix runs a builder, it initially completely clears the
environment (except for the attributes declared in the derivation).
- For instance, the PATH variable is empty\[1\]. This is done to
+ For instance, the `PATH` variable is empty\[1\]. This is done to
prevent undeclared inputs from being used in the build process. If
- for example the PATH contained `/usr/bin`, then you might
+ for example the `PATH` contained `/usr/bin`, then you might
accidentally use `/usr/bin/gcc`.
So the first step is to set up the environment. This is done by
calling the `setup` script of the standard environment. The
- environment variable stdenv points to the location of the standard
+ environment variable `stdenv` points to the location of the standard
environment being used. (It wasn't specified explicitly as an
attribute in [???](#ex-hello-nix), but `mkDerivation` adds it
automatically.)
- Since Hello needs Perl, we have to make sure that Perl is in the
- PATH. The perl environment variable points to the location of the
- Perl package (since it was passed in as an attribute to the
+ `PATH`. The `perl` environment variable points to the location of
+ the Perl package (since it was passed in as an attribute to the
derivation), so `$perl/bin` is the directory containing the Perl
interpreter.
- Now we have to unpack the sources. The `src` attribute was bound to
the result of fetching the Hello source tarball from the network, so
- the src environment variable points to the location in the Nix store
- to which the tarball was downloaded. After unpacking, we `cd` to the
- resulting source directory.
+ the `src` environment variable points to the location in the Nix
+ store to which the tarball was downloaded. After unpacking, we `cd`
+ to the resulting source directory.
The whole build is performed in a temporary directory created in
`/tmp`, by the way. This directory is removed after the builder
@@ -55,13 +55,13 @@ what a builder does. It performs the following steps:
separate location in the Nix store, for instance
`/nix/store/9a54ba97fb71b65fda531012d0443ce2-hello-2.1.1`. Nix
computes this path by cryptographically hashing all attributes of
- the derivation. The path is passed to the builder through the out
+ the derivation. The path is passed to the builder through the `out`
environment variable. So here we give `configure` the parameter
`--prefix=$out` to cause Hello to be installed in the expected
location.
- Finally we build Hello (`make`) and install it into the location
- specified by out (`make install`).
+ specified by `out` (`make install`).
If you are wondering about the absence of error checking on the result
of various commands called in the builder: this is because the shell
diff --git a/doc/manual/src/expressions/builder-syntax.md b/doc/manual/src/expressions/builder-syntax.md
index c92acf106..916159d40 100644
--- a/doc/manual/src/expressions/builder-syntax.md
+++ b/doc/manual/src/expressions/builder-syntax.md
@@ -19,29 +19,29 @@ what a builder does. It performs the following steps:
- When Nix runs a builder, it initially completely clears the
environment (except for the attributes declared in the derivation).
- For instance, the PATH variable is empty\[1\]. This is done to
+ For instance, the `PATH` variable is empty\[1\]. This is done to
prevent undeclared inputs from being used in the build process. If
- for example the PATH contained `/usr/bin`, then you might
+ for example the `PATH` contained `/usr/bin`, then you might
accidentally use `/usr/bin/gcc`.
So the first step is to set up the environment. This is done by
calling the `setup` script of the standard environment. The
- environment variable stdenv points to the location of the standard
+ environment variable `stdenv` points to the location of the standard
environment being used. (It wasn't specified explicitly as an
attribute in [???](#ex-hello-nix), but `mkDerivation` adds it
automatically.)
- Since Hello needs Perl, we have to make sure that Perl is in the
- PATH. The perl environment variable points to the location of the
- Perl package (since it was passed in as an attribute to the
+ `PATH`. The `perl` environment variable points to the location of
+ the Perl package (since it was passed in as an attribute to the
derivation), so `$perl/bin` is the directory containing the Perl
interpreter.
- Now we have to unpack the sources. The `src` attribute was bound to
the result of fetching the Hello source tarball from the network, so
- the src environment variable points to the location in the Nix store
- to which the tarball was downloaded. After unpacking, we `cd` to the
- resulting source directory.
+ the `src` environment variable points to the location in the Nix
+ store to which the tarball was downloaded. After unpacking, we `cd`
+ to the resulting source directory.
The whole build is performed in a temporary directory created in
`/tmp`, by the way. This directory is removed after the builder
@@ -55,13 +55,13 @@ what a builder does. It performs the following steps:
separate location in the Nix store, for instance
`/nix/store/9a54ba97fb71b65fda531012d0443ce2-hello-2.1.1`. Nix
computes this path by cryptographically hashing all attributes of
- the derivation. The path is passed to the builder through the out
+ the derivation. The path is passed to the builder through the `out`
environment variable. So here we give `configure` the parameter
`--prefix=$out` to cause Hello to be installed in the expected
location.
- Finally we build Hello (`make`) and install it into the location
- specified by out (`make install`).
+ specified by `out` (`make install`).
If you are wondering about the absence of error checking on the result
of various commands called in the builder: this is because the shell
diff --git a/doc/manual/src/expressions/derivations.md b/doc/manual/src/expressions/derivations.md
index 7ffc6fabe..a4df20baa 100644
--- a/doc/manual/src/expressions/derivations.md
+++ b/doc/manual/src/expressions/derivations.md
@@ -83,32 +83,32 @@ as a command-line argument. See the Nixpkgs manual for details.
The builder is executed as follows:
- A temporary directory is created under the directory specified by
- TMPDIR (default `/tmp`) where the build will take place. The current
- directory is changed to this directory.
+ `TMPDIR` (default `/tmp`) where the build will take place. The
+ current directory is changed to this directory.
- The environment is cleared and set to the derivation attributes, as
specified above.
- In addition, the following variables are set:
- - NIX\_BUILD\_TOP contains the path of the temporary directory for
+ - `NIX_BUILD_TOP` contains the path of the temporary directory for
this build.
- - Also, TMPDIR, TEMPDIR, TMP, TEMP are set to point to the
+ - Also, `TMPDIR`, `TEMPDIR`, `TMP`, `TEMP` are set to point to the
temporary directory. This is to prevent the builder from
accidentally writing temporary files anywhere else. Doing so
might cause interference by other processes.
- - PATH is set to `/path-not-set` to prevent shells from
+ - `PATH` is set to `/path-not-set` to prevent shells from
initialising it to their built-in default value.
- - HOME is set to `/homeless-shelter` to prevent programs from
+ - `HOME` is set to `/homeless-shelter` to prevent programs from
using `/etc/passwd` or the like to find the user's home
- directory, which could cause impurity. Usually, when HOME is
+ directory, which could cause impurity. Usually, when `HOME` is
set, it is used as the location of the home directory, even if
it points to a non-existent path.
- - NIX\_STORE is set to the path of the top-level Nix store
+ - `NIX_STORE` is set to the path of the top-level Nix store
directory (typically, `/nix/store`).
- For each output declared in `outputs`, the corresponding
diff --git a/doc/manual/src/expressions/generic-builder.md b/doc/manual/src/expressions/generic-builder.md
index cbc484199..a00b08b55 100644
--- a/doc/manual/src/expressions/generic-builder.md
+++ b/doc/manual/src/expressions/generic-builder.md
@@ -22,9 +22,9 @@ build facilities in shown in [example\_title](#ex-hello-builder2).
genericBuild
- - The buildInputs variable tells `setup` to use the indicated packages
- as “inputs”. This means that if a package provides a `bin`
- subdirectory, it's added to PATH; if it has a `include`
+ - The `buildInputs` variable tells `setup` to use the indicated
+ packages as “inputs”. This means that if a package provides a `bin`
+ subdirectory, it's added to `PATH`; if it has a `include`
subdirectory, it's added to GCC's header search path; and so
on.\[1\]
@@ -37,7 +37,7 @@ build facilities in shown in [example\_title](#ex-hello-builder2).
It can be customised in many ways; see the Nixpkgs manual for
details.
-Discerning readers will note that the buildInputs could just as well
+Discerning readers will note that the `buildInputs` could just as well
have been set in the Nix expression, like this:
```
@@ -57,5 +57,6 @@ entirely.
1. How does it work? `setup` tries to source the file
`pkg/nix-support/setup-hook` of all dependencies. These “setup
hooks” can then set up whatever environment variables they want;
- for instance, the setup hook for Perl sets the PERL5LIB environment
- variable to contain the `lib/site_perl` directories of all inputs.
+ for instance, the setup hook for Perl sets the `PERL5LIB`
+ environment variable to contain the `lib/site_perl` directories of
+ all inputs.
diff --git a/doc/manual/src/expressions/language-values.md b/doc/manual/src/expressions/language-values.md
index 98ad97c97..fac0be47e 100644
--- a/doc/manual/src/expressions/language-values.md
+++ b/doc/manual/src/expressions/language-values.md
@@ -120,8 +120,8 @@ Nix has the following basic data types:
Paths can also be specified between angle brackets, e.g.
`<nixpkgs>`. This means that the directories listed in the
- environment variable NIX\_PATH will be searched for the given file
- or directory name.
+ environment variable NIX\_PATH\</literal\> will be searched for the
+ given file or directory name.
- *Booleans* with values `true` and `false`.
diff --git a/doc/manual/src/expressions/simple-building-testing.md b/doc/manual/src/expressions/simple-building-testing.md
index bc064c733..c3e8d7f82 100644
--- a/doc/manual/src/expressions/simple-building-testing.md
+++ b/doc/manual/src/expressions/simple-building-testing.md
@@ -32,7 +32,7 @@ of the build will be safely kept on your system. You can use
Nix has transactional semantics. Once a build finishes successfully, Nix
makes a note of this in its database: it registers that the path denoted
-by out is now “valid”. If you try to build the derivation again, Nix
+by `out` is now “valid”. If you try to build the derivation again, Nix
will see that the path is already valid and finish immediately. If a
build fails, either because it returns a non-zero exit code, because Nix
or the builder are killed, or because the machine crashes, then the