table of contents
- bookworm 2.8.0-1.1+b1
- testing 2.24.9+dfsg-2+b1
- unstable 2.24.12+dfsg-1
- experimental 2.25.4+dfsg-1
nix3-flake-lock(1) | General Commands Manual | nix3-flake-lock(1) |
Warning: This program is experimental and its interface is subject to change.
Name¶
nix flake lock - create missing lock file entries
Synopsis¶
nix flake lock [option…] flake-url
Examples¶
- •
- Update the nixpkgs and nix inputs of the flake in the current directory:
# nix flake lock --update-input nixpkgs --update-input nix * Updated 'nix': 'github:NixOS/nix/9fab14adbc3810d5cc1f88672fde1eee4358405c' -> 'github:NixOS/nix/8927cba62f5afb33b01016d5c4f7f8b7d0adde3c' * Updated 'nixpkgs': 'github:NixOS/nixpkgs/3d2d8f281a27d466fa54b469b5993f7dde198375' -> 'github:NixOS/nixpkgs/a3a3dda3bacf61e8a39258a0ed9c924eeca8e293'
Description¶
This command updates the lock file of a flake (flake.lock) so that it contains a lock for every flake input specified in flake.nix. Existing lock file entries are not updated unless required by a flag such as --update-input.
Note that every command that operates on a flake will also update the lock file if needed, and supports the same flags. Therefore,
# nix flake lock --update-input nixpkgs # nix build
is equivalent to:
# nix build --update-input nixpkgs
Thus, this command is only useful if you want to update the lock file separately from any other action such as building.
Options¶
Common evaluation options:
- --arg name expr
Pass the value expr as the argument name to Nix functions. - --argstr name string
Pass the string string as the argument name to Nix functions. - --eval-store store-url
The Nix store to use for evaluations. - --impure
Allow access to mutable paths and repositories. - --include / -I path
Add path to the list of locations used to look up <...> file names. - --override-flake original-ref resolved-ref
Override the flake registries, redirecting original-ref to resolved-ref.
Common flake-related options:
- --commit-lock-file
Commit changes to the flake’s lock file. - --inputs-from flake-url
Use the inputs of the specified flake as registry entries. - --no-registries
Don’t allow lookups in the flake registries. This option is deprecated; use --no-use-registries. - --no-update-lock-file
Do not allow any updates to the flake’s lock file. - --override-input input-path flake-url
Override a specific flake input (e.g. dwarffs/nixpkgs). This implies --no-write-lock-file. - --recreate-lock-file
Recreate the flake’s lock file from scratch. - --update-input input-path
Update a specific flake input (ignoring its previous entry in the lock file).