Man page - nix-env-set-flag(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 --set-flag
NameSynopsis
Description
Examples
Name
nix-env --set-flag - modify meta attributes of installed packages
Synopsis
nix-env --set-flag name value drvnames
Description
The --set-flag operation allows meta attributes of installed packages to be modified. There are several attributes that can be usefully modified, because they affect the behaviour of nix-env or the user environment build script:
|
⢠|
priority can be changed to resolve filename clashes. The user environment build script uses the meta.priority attribute of derivations to resolve filename collisions between packages. Lower priority values denote a higher priority. For instance, the GCC wrapper package and the Binutils package in Nixpkgs both have a file bin/ld, so previously if you tried to install both you would get a collision. Now, on the other hand, the GCC wrapper declares a higher priority than Binutils, so the formerâs bin/ld is symlinked in the user environment. |
||
|
⢠|
keep can be set to true to prevent the package from being upgraded or replaced. This is useful if you want to hang on to an older version of a package. |
||
|
⢠|
active can be set to false to âdisableâ the package. That is, no symlinks will be generated to the files of the package, but it remains part of the profile (so it wonât be garbage-collected). It can be set back to true to re-enable the package. |
{{#include ./opt-common.md}}
{{#include ../opt-common.md}}
{{#include ../env-common.md}}
Examples
To prevent the currently installed Firefox from being upgraded:
$ nix-env --set-flag keep true firefox
After this, nix-env --upgrade will ignore Firefox.
To disable the currently installed Firefox, then install a new Firefox while the old remains part of the profile:
$ nix-env
--query
firefox-2.0.0.9 (the current one)
$ nix-env
--preserve-installed --install firefox-2.0.0.11
installing `firefox-2.0.0.11â
building path(s)
`/nix/store/myy0y59q3ig70dgq37jqwg1j0rsapzsl-user-environmentâ
collision between
`/nix/store/...-firefox-2.0.0.11/bin/firefoxâ
and `/nix/store/...-firefox-2.0.0.9/bin/firefoxâ.
(i.e., canât have two active at the same time)
$ nix-env
--set-flag active false firefox
setting flag on `firefox-2.0.0.9â
$ nix-env
--preserve-installed --install firefox-2.0.0.11
installing `firefox-2.0.0.11â
$ nix-env
--query
firefox-2.0.0.11 (the enabled one)
firefox-2.0.0.9 (the disabled one)
To make files from binutils take precedence over files from gcc:
$ nix-env
--set-flag priority 5 binutils
$ nix-env --set-flag priority 10 gcc