forked from lix-project/lix
add more details on CA derivations
This commit is contained in:
parent
5f37ebcf83
commit
2fa90e5824
|
@ -229,6 +229,8 @@ Derivations can declare some infrequently used optional attributes.
|
||||||
[`outputHashAlgo`](#adv-attr-outputHashAlgo)
|
[`outputHashAlgo`](#adv-attr-outputHashAlgo)
|
||||||
like for *fixed-output derivations* (see above).
|
like for *fixed-output derivations* (see above).
|
||||||
|
|
||||||
|
It also implicitly requires that the machine to build the derivation must have the `ca-derivations` [system feature](@docroot@/command-ref/conf-file.md#conf-system-features).
|
||||||
|
|
||||||
- [`passAsFile`]{#adv-attr-passAsFile}\
|
- [`passAsFile`]{#adv-attr-passAsFile}\
|
||||||
A list of names of attributes that should be passed via files rather
|
A list of names of attributes that should be passed via files rather
|
||||||
than environment variables. For example, if you have
|
than environment variables. For example, if you have
|
||||||
|
|
|
@ -693,25 +693,27 @@ public:
|
||||||
|
|
||||||
This complements the [`system`](#conf-system) and [`extra-platforms`](#conf-extra-platforms) configuration options and the corresponding [`system`](@docroot@/language/derivations.md#attr-system) attribute on derivations.
|
This complements the [`system`](#conf-system) and [`extra-platforms`](#conf-extra-platforms) configuration options and the corresponding [`system`](@docroot@/language/derivations.md#attr-system) attribute on derivations.
|
||||||
|
|
||||||
Derivations can require system features in the derivation attribute [`requiredSystemFeatures`](@docroot@/language/advanced-attributes.md#adv-attr-requiredSystemFeatures).
|
A derivation can require system features in the [`requiredSystemFeatures` attribute](@docroot@/language/advanced-attributes.md#adv-attr-requiredSystemFeatures), and the machine to build the derivation must have them.
|
||||||
|
|
||||||
System features are generally user-defined, but the following have special treatment:
|
System features are user-defined, but Nix sets the following defaults:
|
||||||
|
|
||||||
- `kvm`
|
- `kvm`
|
||||||
|
|
||||||
Set by default if `/dev/kvm` is accessible.
|
Included by default if `/dev/kvm` is accessible.
|
||||||
|
|
||||||
- `nixos-test`, `benchmark`, `big-parallel`
|
- `nixos-test`, `benchmark`, `big-parallel`
|
||||||
|
|
||||||
These historical pseudo-features are always enabled for backwards compatibility, used in Nixpkgs to route Hydra builds to specific machines.
|
These historical pseudo-features are always enabled for backwards compatibility, as they are used in Nixpkgs to route Hydra builds to specific machines.
|
||||||
|
|
||||||
- `ca-derivations`
|
- `ca-derivations`
|
||||||
|
|
||||||
Set by default if the [`ca-derivations` experimental feature](@docroot@/contributing/experimental-features.md#xp-feature-ca-derivations) is enabled.
|
Included by default if the [`ca-derivations` experimental feature](@docroot@/contributing/experimental-features.md#xp-feature-ca-derivations) is enabled.
|
||||||
|
|
||||||
|
This system feature is implicitly required by derivations with the [`__contentAddressed` attribute](@docroot@/language/advanced-attributes.md#adv-attr-__contentAddressed).
|
||||||
|
|
||||||
- `recursive-nix`
|
- `recursive-nix`
|
||||||
|
|
||||||
Set by default if the [`recursive-nix` experimental feature](@docroot@/contributing/experimental-features.md#xp-feature-recursive-nix) is enabled.
|
Included by default if the [`recursive-nix` experimental feature](@docroot@/contributing/experimental-features.md#xp-feature-recursive-nix) is enabled.
|
||||||
|
|
||||||
- `uid-range`
|
- `uid-range`
|
||||||
|
|
||||||
|
@ -720,7 +722,7 @@ public:
|
||||||
|
|
||||||
[nspawn]: https://github.com/NixOS/nix/blob/67bcb99700a0da1395fa063d7c6586740b304598/tests/systemd-nspawn.nix.
|
[nspawn]: https://github.com/NixOS/nix/blob/67bcb99700a0da1395fa063d7c6586740b304598/tests/systemd-nspawn.nix.
|
||||||
|
|
||||||
Set by default on Linux if the [`auto-allocate-uids`](#conf-auto-allocate-uids) setting is enabled.
|
Included by default on Linux if the [`auto-allocate-uids`](#conf-auto-allocate-uids) setting is enabled.
|
||||||
)", {}, false};
|
)", {}, false};
|
||||||
|
|
||||||
Setting<Strings> substituters{
|
Setting<Strings> substituters{
|
||||||
|
|
Loading…
Reference in a new issue