aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorValentin Gagarin <valentin.gagarin@tweag.io>2023-05-11 15:41:29 +0200
committerValentin Gagarin <valentin.gagarin@tweag.io>2023-05-11 17:46:37 +0200
commit69a0e6f86cd1548a50365744b1d50f01097654ef (patch)
tree4e6e7456c526bdc133bd27b9506da285d9147a29
parent2ef7f14e28258f2f203bbd03af49dd9c07078234 (diff)
reword documentation on `builtins`
- add anchor to `builtins` - add type information - reword description of `builtins` to offer more information concisely
-rw-r--r--doc/manual/src/language/builtin-constants.md19
1 files changed, 9 insertions, 10 deletions
diff --git a/doc/manual/src/language/builtin-constants.md b/doc/manual/src/language/builtin-constants.md
index 3898bfd66..c6bc9b74c 100644
--- a/doc/manual/src/language/builtin-constants.md
+++ b/doc/manual/src/language/builtin-constants.md
@@ -1,20 +1,19 @@
# Built-in Constants
-Here are the constants built into the Nix expression evaluator:
+These constants are built into the Nix language evaluator:
+
+- [`builtins`]{#builtins-builtins} (attribute set)
+
+ Contains all the [built-in functions](./builtins.md) and values, in order to avoid polluting the global scope.
+
+ Since built-in functions were added over time, [testing for attributes](./operators.md#has-attribute) in `builtins` can be used for graceful fallback on older Nix installations:
-- `builtins`\
- The set `builtins` contains all the built-in functions and values.
- You can use `builtins` to test for the availability of features in
- the Nix installation, e.g.,
-
```nix
if builtins ? getEnv then builtins.getEnv "PATH" else ""
```
-
- This allows a Nix expression to fall back gracefully on older Nix
- installations that don’t have the desired built-in function.
-- [`builtins.currentSystem`]{#builtins-currentSystem}\
+- [`builtins.currentSystem`]{#builtins-currentSystem} (string)
+
The built-in value `currentSystem` evaluates to the Nix platform
identifier for the Nix installation on which the expression is being
evaluated, such as `"i686-linux"` or `"x86_64-darwin"`.