1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-07 06:01:48 +02:00

Document "final" semantics

This commit is contained in:
Eelco Dolstra 2024-11-06 13:05:37 +01:00
parent f314e35b37
commit a150798ce4

View file

@ -666,6 +666,11 @@ following fields:
other attributes are necessary because they provide information not other attributes are necessary because they provide information not
stored in the store path. stored in the store path.
The attributes in `locked` are considered "final", meaning that they are the only ones that are passed via the arguments of the `outputs` function of a flake.
For instance, if `locked` contains a `lastModified` attribute while the fetcher does not return a `lastModified` attribute, then the `lastModified` attribute will be passed to the `outputs` function.
Conversely, if `locked` does *not* contain a `lastModified` attribute while the fetcher *does* return a `lastModified` attribute, then no `lastModified` attribute will be passed.
If `locked` contains a `lastModifed` attribute and the fetcher returns a `lastModified` attribute, then they must have the same value.
* `flake`: A Boolean denoting whether this is a flake or non-flake * `flake`: A Boolean denoting whether this is a flake or non-flake
dependency. Corresponds to the `flake` attribute in the `inputs` dependency. Corresponds to the `flake` attribute in the `inputs`
attribute in `flake.nix`. attribute in `flake.nix`.