aboutsummaryrefslogtreecommitdiff
path: root/src/nix/search.md
diff options
context:
space:
mode:
authoreldritch horrors <pennae@lix.systems>2024-03-04 08:40:12 +0100
committereldritch horrors <pennae@lix.systems>2024-03-04 08:40:12 +0100
commit044c117a9f8ae92241076b2afa1a419cdc912c5e (patch)
tree860bf29fabe4506f43505e83554e099bfec927a6 /src/nix/search.md
parent20d7b93b0c83db3d620009e440263d7ab8faeec6 (diff)
Merge pull request #9481 from iFreilicht/disallow-nix-search-without-search-terms
nix search: Disallow empty regex (cherry picked from commit 1c260fa6d1f47d83954792771d0614db163cc3bc) Change-Id: Iaaf3605c24a342fcb05d0b534a9f305533d3b5fa
Diffstat (limited to 'src/nix/search.md')
-rw-r--r--src/nix/search.md15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/nix/search.md b/src/nix/search.md
index 0c5d22549..f65ac9b17 100644
--- a/src/nix/search.md
+++ b/src/nix/search.md
@@ -5,7 +5,7 @@ R""(
* Show all packages in the `nixpkgs` flake:
```console
- # nix search nixpkgs
+ # nix search nixpkgs ^
* legacyPackages.x86_64-linux.AMB-plugins (0.8.1)
A set of ambisonics ladspa plugins
@@ -34,7 +34,7 @@ R""(
* Show all packages in the flake in the current directory:
```console
- # nix search
+ # nix search . ^
```
* Search for Firefox or Chromium:
@@ -64,11 +64,16 @@ R""(
`nix search` searches [*installable*](./nix.md#installables) (which can be evaluated, that is, a
flake or Nix expression, but not a store path or store derivation path) for packages whose name or description matches all of the
-regular expressions *regex*. For each matching package, It prints the
+regular expressions *regex*. For each matching package, It prints the
full attribute name (from the root of the [installable](./nix.md#installables)), 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.
+were matched by the regular expressions.
+
+To show all packages, use the regular expression `^`. In contrast to `.*`,
+it avoids highlighting the entire name and description of every package.
+
+> Note that in this context, `^` is the regex character to match the beginning of a string, *not* the delimiter for
+> [selecting a derivation output](@docroot@/command-ref/new-cli/nix.md#derivation-output-selection).
# Flake output attributes