table of contents
other versions
- bookworm 2.8.0-1.1+b1
- testing 2.24.9+dfsg-2+b1
- unstable 2.24.9+dfsg-2+b1
- experimental 2.25.4+dfsg-1
nix3-repl(1) | General Commands Manual | nix3-repl(1) |
Warning: This program is experimental and its interface is subject to change.
Name¶
nix repl - start an interactive environment for evaluating Nix expressions
Synopsis¶
nix repl [option…] files…
Examples¶
- •
- Display all special commands within the REPL:
# nix repl nix-repl> :?
- •
- Evaluate some simple Nix expressions:
# nix repl nix-repl> 1 + 2 3 nix-repl> map (x: x * 2) [1 2 3] [ 2 4 6 ]
- •
- Interact with Nixpkgs in the REPL:
# nix repl '<nixpkgs>' Loading '<nixpkgs>'... Added 12428 variables. nix-repl> emacs.name "emacs-27.1" nix-repl> emacs.drvPath "/nix/store/lp0sjrhgg03y2n0l10n70rg0k7hhyz0l-emacs-27.1.drv" nix-repl> drv = runCommand "hello" { buildInputs = [ hello ]; } "hello; hello > $out" nix-repl> :b drv this derivation produced the following outputs: out -> /nix/store/0njwbgwmkwls0w5dv9mpc1pq5fj39q0l-hello nix-repl> builtins.readFile drv "Hello, world!\n" nix-repl> :log drv Hello, world!
Description¶
This command provides an interactive environment for evaluating Nix expressions. (REPL stands for ‘read–eval–print loop’.)
On startup, it loads the Nix expressions named files and adds them into the lexical scope. You can load addition files using the :l <filename> command, or reload all files using :r.
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.