table of contents
- bookworm 2.8.0-1.1+b1
- testing 2.24.12+dfsg-1
- unstable 2.24.12+dfsg-1+b1
- experimental 2.25.4+dfsg-1
nix3-search(1) | General Commands Manual | nix3-search(1) |
Warning: This program is experimental and its interface is subject to change.
Name¶
nix search - search for packages
Synopsis¶
nix search [option…] installable regex…
Examples¶
- •
- Show all packages in the nixpkgs flake:
# nix search nixpkgs * legacyPackages.x86_64-linux.AMB-plugins (0.8.1) A set of ambisonics ladspa plugins * legacyPackages.x86_64-linux.ArchiSteamFarm (4.3.1.0) Application with primary purpose of idling Steam cards from multiple accounts simultaneously …
- •
- Show packages in the nixpkgs flake containing blender in its name or description:
# nix search nixpkgs blender * legacyPackages.x86_64-linux.blender (2.91.0) 3D Creation/Animation/Publishing System
- •
- Search for packages underneath the attribute gnome3 in Nixpkgs:
# nix search nixpkgs#gnome3 vala * legacyPackages.x86_64-linux.gnome3.vala (0.48.9) Compiler for GObject type system
- •
- Show all packages in the flake in the current directory:
# nix search
- •
- Search for Firefox or Chromium:
# nix search nixpkgs 'firefox|chromium'
- •
- Search for packages containing git'and either frontend or gui:
# nix search nixpkgs git 'frontend|gui'
Description¶
nix search searches installable (which must be evaluatable, e.g. a flake) for packages whose name or description matches all of the regular expressions regex. For each matching package, It prints the full attribute name (from the root of the installable), the version and the meta.description field, highlighting the substrings that were matched by the regular expressions. If no regular expressions are specified, all packages are shown.
Flake output attributes¶
If no flake output attribute is given, nix search searches for packages:
- Directly underneath packages.<system>.
- Underneath legacyPackages.<system>, recursing into attribute sets that contain an attribute recurseForDerivations = true.
Options¶
- •
- --json
Produce output in JSON format, suitable for consumption by another program.
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. - --no-write-lock-file
Do not write the flake’s newly generated 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).
Options that change the interpretation of installables:
- --derivation
Operate on the store derivation rather than its outputs. - --expr expr
Interpret installables as attribute paths relative to the Nix expression expr. - --file / -f file
Interpret installables as attribute paths relative to the Nix expression stored in file. If file is the character -, then a Nix expression will be read from standard input.