aboutsummaryrefslogtreecommitdiff
path: root/src/nix-env
AgeCommit message (Collapse)Author
2012-12-12Allow setting the profile location using $NIX_PROFILEEelco Dolstra
Fixes #69.
2012-12-04nix-env: Install all outputs of a derivationEelco Dolstra
If you explicitly install a package, presumably you want all of it. So symlink all outputs in the user environment.
2012-12-03Fix the ‘--prebuilt-only’ flagEelco Dolstra
2012-12-03WhitespaceEelco Dolstra
2012-11-28nix-env -q --out-path: Support multiple outputsEelco Dolstra
We now print all output paths of a package, e.g. openssl-1.0.0i bin=/nix/store/gq2mvh0wb9l90djvsagln3aqywqmr6vl-openssl-1.0.0i-bin;man=/nix/store/7zwf5r5hsdarl3n86dasvb4chm2xzw9n-openssl-1.0.0i-man;/nix/store/cj7xvk7fjp9q887359j75pw3pzjfmqf1-openssl-1.0.0i or (in XML mode) <item attrPath="openssl" name="openssl-1.0.0i" system="x86_64-linux"> <output name="bin" path="/nix/store/gq2mvh0wb9l90djvsagln3aqywqmr6vl-openssl-1.0.0i-bin" /> <output name="man" path="/nix/store/7zwf5r5hsdarl3n86dasvb4chm2xzw9n-openssl-1.0.0i-man" /> <output name="out" path="/nix/store/cj7xvk7fjp9q887359j75pw3pzjfmqf1-openssl-1.0.0i" /> </item>
2012-10-04getDerivation(): Don't always quietly ignore assertion failureEelco Dolstra
Ignoring assertion failures makes some sense for nix-env -qa, but not for nix-instantiate/nix-build or hydra-eval-jobs.
2012-10-03When ‘--help’ is given, just run ‘man’ to show the manual pageEelco Dolstra
I.e. do what git does. I'm too lazy to keep the builtin help text up to date :-) Also add ‘--help’ to various commands that lacked it (e.g. nix-collect-garbage).
2012-10-03nix-env: Support ‘--repair’ flagEelco Dolstra
2012-09-13nix-env --delete-generations: Support --dry-run flagEelco Dolstra
Fixes #43.
2012-08-01nix-env: Ignore manifest.nix when recursing into ~/.nix-defexprEelco Dolstra
Channels are implemented using a profile now, and profiles contain a manifest.nix file. This should be ignored to prevent bogus packages from showing up in nix-env.
2012-07-30Refactor settings processingEelco Dolstra
Put all Nix configuration flags in a Settings object.
2012-07-26Merge branch 'master' into no-manifestsEelco Dolstra
2012-07-18Use "#pragma once" to prevent repeated header file inclusionEelco Dolstra
2012-07-11Replace hasSubstitutes() with querySubstitutablePaths()Eelco Dolstra
querySubstitutablePaths() takes a set of paths, so this greatly reduces daemon <-> client latency.
2012-07-11Add a function queryValidPaths()Eelco Dolstra
queryValidPaths() combines multiple calls to isValidPath() in one. This matters when using the Nix daemon because it reduces latency. For instance, on "nix-env -qas \*" it reduces execution time from 5.7s to 4.7s (which is indistinguishable from the non-daemon case).
2012-07-11nix-env: Determine which paths have substitutes in parallelEelco Dolstra
2012-06-27nix-store -r: do substitutions in parallelEelco Dolstra
I.e. when multiple non-derivation arguments are passed to ‘nix-store -r’ to be substituted, do them in parallel.
2012-04-14Remove unnecessary "system" argumentEelco Dolstra
2012-04-04Include --keep-going in --helpEelco Dolstra
2012-01-03* Refactoring: Get rid of a few subdirectories in corepkgs/, and someEelco Dolstra
other simplifications. * Use <nix/...> to locate the corepkgs. This allows them to be overriden through $NIX_PATH. * Use bash's pipefail option in the NAR builder so that we don't need to create a temporary file.
2011-12-01* Allow '<nixexpr>' syntax to be used in nix-instantiate, nix-buildEelco Dolstra
and nix-env, e.g., $ nix-env -f '<nixpkgs>' -i patchelf or $ nix-build '<nixos/tests>' -A login.test
2011-08-31* Eliminate all uses of the global variable ‘store’ from libstore.Eelco Dolstra
This should also fix: nix-instantiate: ./../boost/shared_ptr.hpp:254: T* boost::shared_ptr<T>::operator->() const [with T = nix::StoreAPI]: Assertion `px != 0' failed. which was caused by hashDerivationModulo() calling the ‘store’ object (during store upgrades) before openStore() assigned it.
2011-08-06* Add a Nix expression search path feature. Paths between angleEelco Dolstra
brackets, e.g. import <nixpkgs/pkgs/lib> are resolved by looking them up relative to the elements listed in the search path. This allows us to get rid of hacks like import "${builtins.getEnv "NIXPKGS_ALL"}/pkgs/lib" The search path can be specified through the ‘-I’ command-line flag and through the colon-separated ‘NIX_PATH’ environment variable, e.g., $ nix-build -I /etc/nixos ... If a file is not found in the search path, an error message is lazily thrown.
2011-08-06* Refactoring: move parseExprFromFile() and parseExprFromString() intoEelco Dolstra
the EvalState class.
2011-04-11* `nix-env -ub' (`--prebuilt-only') didn't really work because itEelco Dolstra
checked too soon whether substitutes are available. That is, it did so for every available package, rather than those matching installed packages. This was very slow and subject to assertion failures. So do the check much later. Idem for `nix-env -qab' and `nix-env -ib'.
2010-11-16* Sync with the trunk.Eelco Dolstra
2010-10-28* Handle out of memory condition.Eelco Dolstra
2010-10-24* When allocating an attribute set, reserve enough space for allEelco Dolstra
elements. This prevents the vector from having to resize itself.
2010-10-24* Keep attribute sets in sorted order to speed up attribute lookups.Eelco Dolstra
* Simplify the representation of attributes in the AST. * Change the behaviour of listToAttrs() in case of duplicate names.
2010-10-23* Remove allocValues().Eelco Dolstra
2010-10-22* Store Value nodes outside of attribute sets. I.e., Attr now storesEelco Dolstra
a pointer to a Value, rather than the Value directly. This improves the effectiveness of garbage collection a lot: if the Value is stored inside the set directly, then any live pointer to the Value causes all other attributes in the set to be live as well.
2010-10-22* Make building against the Boehm GC a configure option.Eelco Dolstra
2010-10-20* Use the Boehm garbage collector to reclaim unused memory in the NixEelco Dolstra
expression evaluator.
2010-10-04* Sync with the trunk.Eelco Dolstra
2010-09-14* Doh. Remove debug message.Eelco Dolstra
2010-08-04* Sync with the trunk.Eelco Dolstra
2010-08-04* Set the default system filter to "*". This ensures that (forEelco Dolstra
instance) "nix-env -i wine" works on x86_64-linux, even though Wine is built on i686-linux. In the event that there are multiple matching derivations, prefer those built for the current system.
2010-06-21* Sync with the trunk.Eelco Dolstra
2010-05-30* Remove an accidentally committed debug statement.Eelco Dolstra
2010-05-12* Sync with the trunk.Eelco Dolstra
2010-05-07* Keep track of the source positions of attributes.Eelco Dolstra
2010-05-06* Store attribute positions in the AST and report duplicate attributeEelco Dolstra
errors with position info. * For all positions, use the position of the first character of the first token, rather than the last character of the first token plus one.
2010-04-27(no commit message)Eelco Dolstra
2010-04-21* Store user environment manifests as a Nix expression inEelco Dolstra
$out/manifest.nix rather than as an ATerm. (Hm, I thought I committed this two days ago...)
2010-04-19* Drop the dependency on the ATerm library.Eelco Dolstra
2010-04-19* Don't use the ATerm library for parsing/printing .drv files.Eelco Dolstra
2010-04-19* Added parsing of manifests in ATerm format.Eelco Dolstra
2010-04-19* Refactoring: move the user environment stuff into its own module.Eelco Dolstra
2010-04-16* _combineChannels shouldn't be an integer.Eelco Dolstra
2010-04-16* In an nested `with' where the inner with is a variable (`with ...;Eelco Dolstra
with someVar; ...'), the contents of the variable would be clobbered. (The attributes in the outer `with' were added to the variable.)