Man page - nix-env(1)
Packages contains this manual
- nix3-store-prefetch-file(1)
- nix3-flake(1)
- nix-instantiate(1)
- nix-profiles(5)
- nix3-store-sign(1)
- nix3-hash-to-sri(1)
- nix3-nar-ls(1)
- nix-store-verify(1)
- nix3-profile-wipe-history(1)
- nix3-derivation-add(1)
- nix-env-upgrade(1)
- nix3-store-add(1)
- nix(1)
- nix3-store-verify(1)
- nix-env-list-generations(1)
- nix3-store-repair(1)
- nix-store-query(1)
- nix3-flake-archive(1)
- nix-store-load-db(1)
- nix3-store-dump-path(1)
- nix3-realisation(1)
- nix3-derivation-show(1)
- nix3-store-path-from-hash-part(1)
- nix3-flake-prefetch(1)
- nix3-develop(1)
- nix3-help(1)
- nix3-store-make-content-addressed(1)
- nix3-hash-to-base64(1)
- nix3-log(1)
- nix3-nar(1)
- nix-store-import(1)
- nix3-registry-pin(1)
- nix3-config(1)
- nix3-copy(1)
- nix3-nar-pack(1)
- nix3-nar-cat(1)
- nix3-store-cat(1)
- nix-store-realise(1)
- nix3-key(1)
- nix3-run(1)
- nix3-store-copy-sigs(1)
- nix3-flake-check(1)
- nix3-hash-path(1)
- nix-channel(1)
- nix-store-gc(1)
- nix-build(1)
- nix-store-dump-db(1)
- nix3-flake-clone(1)
- nix3-registry-remove(1)
- nix-store-add-fixed(1)
- nix3-print-dev-env(1)
- nix3-help-stores(1)
- nix3-key-convert-secret-to-public(1)
- nix-env(1)
- nix3-profile(1)
- nix3-profile-list(1)
- nix3-store-ls(1)
- nix3-profile-install(1)
- nix3-flake-lock(1)
- nix-store-dump(1)
- nix-store-delete(1)
- nix3-hash(1)
- nix-env-install(1)
- nix-store-repair-path(1)
- nix3-daemon(1)
- nix3-config-show(1)
- nix3-flake-init(1)
- nix3-profile-diff-closures(1)
- nix3-hash-to-base16(1)
- nix-store-read-log(1)
- nix.conf(5)
- nix3-store-copy-log(1)
- nix3-eval(1)
- nix3-store-info(1)
- nix3-repl(1)
- nix-hash(1)
- nix3-store-add-path(1)
- nix-collect-garbage(1)
- nix3-key-generate-secret(1)
- nix-store-optimise(1)
- nix-store-print-env(1)
- nix3-store-diff-closures(1)
- nix3-flake-new(1)
- nix3-flake-metadata(1)
- nix3-config-check(1)
- nix-store-serve(1)
- nix3-store-gc(1)
- nix-store-generate-binary-cache-key(1)
- nix-store(1)
- nix3-upgrade-nix(1)
- nix-env-switch-generation(1)
- nix3-why-depends(1)
- nix3-path-info(1)
- nix3-store-add-file(1)
- nix3-profile-remove(1)
- nix3-registry-list(1)
- nix3-fmt(1)
- nix3-derivation(1)
- nix3-env-shell(1)
- nix-env-query(1)
- nix-env-switch-profile(1)
- nix3-flake-show(1)
- nix-copy-closure(1)
- nix-env-delete-generations(1)
- nix3-store(1)
- nix3-realisation-info(1)
- nix-daemon(8)
- nix3-hash-convert(1)
- nix-env-set-flag(1)
- nix3-registry(1)
- nix3-bundle(1)
- nix3-profile-upgrade(1)
- nix3-profile-rollback(1)
- nix-prefetch-url(1)
- nix3-edit(1)
- nix3-store-ping(1)
- nix3-store-optimise(1)
- nix-store-add(1)
- nix-store-restore(1)
- nix3-flake-info(1)
- nix-store-export(1)
- nix-store-verify-path(1)
- nix3-store-delete(1)
- nix3-registry-add(1)
- nix3-build(1)
- nix3-nar-dump-path(1)
- nix3-search(1)
- nix-shell(1)
- nix3-hash-file(1)
- nix3-profile-history(1)
- nix-env-uninstall(1)
- nix3-flake-update(1)
- nix-env-set(1)
- nix-env-rollback(1)
- nix3-hash-to-base32(1)
apt-get install nix-bin
Manual
nix-env
NameSynopsis
Description
Package sources
Selectors
Files
Name
nix-env - manipulate or query Nix user environments
Synopsis
nix-env operation [ options ] [ arguments⦠] [--option name value ] [--arg name value ] [--argstr name value ] [{--file | -f} path ] [{--profile | -p} path ] [--system-filter system ] [--dry-run]
Description
The command nix-env is used to manipulate Nix user environments. User environments are sets of software packages available to a user at some point in time. In other words, they are a synthesised view of the programs available in the Nix store. There may be many user environments: different users can have different environments, and individual users can switch between different environments.
nix-env takes exactly one operation flag which indicates the subcommand to be performed. The following operations are available:
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
||||
|
β’ |
These pages can be viewed offline:
|
β’ |
man nix-env-<operation>. |
Example: man nix-env-install
|
β’ |
nix-env --help --<operation> |
Example: nix-env --help --install
Package sources
nix-env can obtain packages from multiple sources:
|
β’ |
An attribute set of derivations from: |
β’
|
The default Nix expression (by default) |
|||
|
β’ |
A Nix file, specified via --file |
||
|
β’ |
A profile , specified via --from-profile |
||
|
β’ |
A Nix expression that is a function which takes default expression as argument, specified via --from-expression |
||
|
β’ |
Selectors
Several operations, such as nix-env --query and nix-env --install , take a list of arguments that specify the packages on which to operate.
Packages are identified based on a name part and a version part of a symbolic derivation name :
|
β’ |
name: Everything up to but not including the first dash (-) that is not followed by a letter. |
||
|
β’ |
version: The rest, excluding the separating dash. |
Example
nix-env parses the symbolic derivation name apache-httpd-2.0.48 as:
{
"name": "apache-httpd",
"version": "2.0.48"
}
Example
nix-env parses the symbolic derivation name firefox.* as:
{
"name": "firefox.*",
"version": ""
}
The name parts of the arguments to nix-env are treated as extended regular expressions and matched against the name parts of derivation names in the package source. The match is case-sensitive. The regular expression can optionally be followed by a dash (-) and a version number; if omitted, any version of the package will match. For details on regular expressions, see regex (7) .
Example
Common patterns for finding package names with nix-env:
|
β’ |
firefox |
Matches the package name firefox and any version.
|
β’ |
firefox-32.0 |
Matches the package name firefox and version 32.0.
|
β’ |
gtk\\+ |
Matches the package name gtk+. The + character must be escaped using a backslash (\) to prevent it from being interpreted as a quantifier, and the backslash must be escaped in turn with another backslash to ensure that the shell passes it on.
|
β’ |
.\* |
Matches any package name. This is the default for most commands.
|
β’ |
β.*zip.*β |
Matches any package name containing the string zip. Note the dots: β*zip*β does not work, because in a regular expression, the character * is interpreted as a quantifier.
|
β’ |
β.*(firefox|chromium).*β |
Matches any package name containing the strings firefox or chromium.
Files
nix-env operates on the following files.
{{#include ./files/default-nix-expression.md}}
{{#include ./files/profiles.md}}