Searching packages: Difference between revisions
Package search does not only search package names, but also the description. Added pro/contra to a subsection. Added idea of search engines in browser) |
m changed link from redirect page to article |
||
(One intermediate revision by one other user not shown) | |||
Line 3: | Line 3: | ||
== Using <code>search.nixos.org</code> website == | == Using <code>search.nixos.org</code> website == | ||
There is a web service to search | There is a web service to search with | ||
: | : [[channel branches]] | ||
:* Nix packages at [https://search.nixos.org/packages search.nixos.org/packages] | :* Nix packages at [https://search.nixos.org/packages search.nixos.org/packages] | ||
:* NixOS options at [https://search.nixos.org/options search.nixos.org/options] | :* NixOS options at [https://search.nixos.org/options search.nixos.org/options] | ||
: | : [[flakes]] | ||
:* packages at [https://search.nixos.org/flakes?type=packages search.nixos.org/flakes?type=packages] | :* packages at [https://search.nixos.org/flakes?type=packages search.nixos.org/flakes?type=packages] | ||
:* options at [https://search.nixos.org/flakes?type=options search.nixos.org/flakes?type=options] | :* options at [https://search.nixos.org/flakes?type=options search.nixos.org/flakes?type=options] | ||
Line 17: | Line 17: | ||
* browser extensions possible (like @nixpgs as search engine in Firefox) | * browser extensions possible (like @nixpgs as search engine in Firefox) | ||
; cons: | ; cons: | ||
* always requires Internet connection | * always requires Internet connection | ||
== Using the <code>nix search</code> command == | == Using the <code>nix search</code> command == | ||
While this command | While this command requires [[flakes]], you can use it to search for a package. It may be slow the first time, but further runs will use cached results. | ||
<syntaxhighlight lang="bash">nix | <syntaxhighlight lang="bash">nix search nixpkgs firefox</syntaxhighlight> | ||
; pros: | ; pros: | ||
Line 45: | Line 45: | ||
With the read–eval–print loop (REPL) of nix you can browse packages interactively. | With the read–eval–print loop (REPL) of nix you can browse packages interactively. | ||
Starting the [ | Starting the [https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-repl.html nix repl] | ||
<syntaxhighlight lang="bash">nix repl</syntaxhighlight> | <syntaxhighlight lang="bash">nix repl</syntaxhighlight> | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
Welcome to Nix 2. | Welcome to Nix 2.18.2. Type :? for help. | ||
nix-repl> | nix-repl> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 57: | Line 57: | ||
nix-repl> | nix-repl> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<syntaxhighlight lang="bash">:load <nixpkgs | <syntaxhighlight lang="bash">nix-repl> :load <nixpkgs> | ||
Added 21181 variables. | |||
Added | </syntaxhighlight>Type the first letters of a package | ||
</syntaxhighlight> | <syntaxhighlight lang="bash">nix-repl> neo </syntaxhighlight> | ||
Type the first letters of a package | |||
<syntaxhighlight lang=" | |||
Press <tt>Tab ↹</tt> key<!-- {{[[mw:Template::Key press]]|Tab}} --> for auto completion | Press <tt>Tab ↹</tt> key<!-- {{[[mw:Template::Key press]]|Tab}} --> for auto completion | ||
== Reverse search: searching which package provides a file == | == Reverse search: searching which package provides a file == | ||
There is | There is third party programs [https://github.com/nix-community/nix-index nix-index], and [https://wiki.nixos.org/wiki/Flakes rippkgs] to find which package provides a given file. This is particularly useful when you are looking for a very specific file but you don't know which package installs it. | ||
[[Category:Reference]] | [[Category:Reference]] | ||
[[Category:Nixpkgs]] | [[Category:Nixpkgs]] |