aboutsummaryrefslogtreecommitdiff
path: root/src/nix-env
AgeCommit message (Collapse)Author
2019-12-04Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-11-22getEnv(): Return std::optionalEelco Dolstra
This allows distinguishing between an empty value and no value.
2019-10-21Add getDefaultProfile() functionEelco Dolstra
2019-10-10nix-env: Ignore failures creating ~/.nix-profile and ~/.nix-defexprEelco Dolstra
https://hydra.nixos.org/build/102803093
2019-10-09nix-env: Create ~/.nix-defexpr automaticallyEelco Dolstra
2019-10-09nix-env: Create ~/.nix-profile automaticallyEelco Dolstra
2019-10-09OCD performance fix: {find,count}+insert => insertEelco Dolstra
2019-07-27Add pname and version to nix-env -q --jsonTom McLaughlin
2018-10-26Merge all nix-* binaries into nixEelco Dolstra
These are all symlinks to 'nix' now, reducing the installed size by about ~1.7 MiB.
2018-09-17nix-env: Fix segfault if -f argument is not a directory or a Nix expressionEelco Dolstra
Fixes #2425.
2018-05-31Merge pull request #767 from mogorman/garbage_collect_keep_last_fewPeter Simons
Implement --delete-generations + flag for keeping last N number of gens
2018-05-02Fix some random -Wconversion warningsEelco Dolstra
2018-03-01Update nix-env.ccMatt O'Gorman
missing comma
2018-03-01this updates issues that were addressed by people in prMatthew O'Gorman
2018-03-01Implement --delete-generations + flag for keeping last N number of generationsMatthew O'Gorman
2018-02-08Add plugins to make Nix more extensible.Shea Levy
All plugins in plugin-files will be dlopened, allowing them to statically construct instances of the various Register* types Nix supports.
2017-10-24nix: Respect -I, --arg, --argstrEelco Dolstra
Also, random cleanup to argument handling.
2017-07-30Replace Unicode quotes in user-facing strings by ASCIIJörg Thalheim
Relevant RFC: NixOS/rfcs#4 $ ag -l | xargs sed -i -e "/\"/s/’/'/g;/\"/s/‘/'/g"
2017-07-20Add "nix search" commandEelco Dolstra
2017-07-03Replace a few bool flags with enumsEelco Dolstra
Functions like copyClosure() had 3 bool arguments, which creates a severe risk of mixing up arguments. Also, implement copyClosure() using copyPaths().
2017-05-16Improve progress indicatorEelco Dolstra
2017-05-05Figure out the user's home directory if $HOME is not setEelco Dolstra
2016-11-26Revert "Get rid of unicode quotes (#1140)"Eelco Dolstra
This reverts commit f78126bfd6b6c8477fcdbc09b2f98772dbe9a1e7. There really is no need for such a massive change...
2016-11-25Get rid of unicode quotes (#1140)Guillaume Maudoux
2016-09-21printMsg(lvlError, ...) -> printError(...) etc.Eelco Dolstra
2016-08-29nix path-info: Add --json flagEelco Dolstra
Also, factor out JSON generation from value-to-json.{cc,hh}, and support producing indented JSON.
2016-08-23nix build: Use Nix search pathEelco Dolstra
That is, unless --file is specified, the Nix search path is synthesized into an attribute set. Thus you can say $ nix build nixpkgs.hello assuming $NIX_PATH contains an entry of the form "nixpkgs=...". This is more verbose than $ nix build hello but is less ambiguous.
2016-06-02Allow setting the state directory as a store parameterEelco Dolstra
E.g. "local?store=/tmp/store&state=/tmp/var".
2016-06-01Make the store directory a member variable of StoreEelco Dolstra
2016-05-04Cleanup: Remove singleton()Eelco Dolstra
2016-04-25Improved logging abstractionEelco Dolstra
This also gets rid of --log-type, since the nested log type isn't useful in a multi-threaded situation, and nobody cares about the "pretty" log type.
2016-02-23nix-env: respect meta.outputsToInstallVladimír Čunát
Discussed on https://github.com/NixOS/nixpkgs/pull/12653#discussion_r51601849
2016-02-12Merge pull request #762 from ctheune/ctheune-floatsEelco Dolstra
Implement floats
2016-02-04Eliminate the "store" global variableEelco Dolstra
Also, move a few free-standing functions into StoreAPI and Derivation. Also, introduce a non-nullable smart pointer, ref<T>, which is just a wrapper around std::shared_ptr ensuring that the pointer is never null. (For reference-counted values, this is better than passing a "T&", because the latter doesn't maintain the refcount. Usually, the caller will have a shared_ptr keeping the value alive, but that's not always the case, e.g., when passing a reference to a std::thread via std::bind.)
2016-01-05First hit at providing support for floats in the language.Christian Theune
2015-11-21Print license information on '--xml --meta'Pascal Wittmann
The nixpkgs manual prescribes the use of values from stdenv.lib.licenses for the meta.license attribute. Those values are attribute sets and currently skipped when running nix-env with '--xml --meta'. This has the consequence that also nixpkgs-lint will report missing licenses. With this commit nix-env with '--xml --meta' will print all attributes of an attribute set that are of type tString. For example the output for the package nixpkgs.hello is <meta name="license" type="strings"> <string type="url" value="http://spdx.org/licenses/GPL-3.0+" /> <string type="shortName" value="gpl3Plus" /> <string type="fullName" value="GNU General Public License v3.0 or later" /> <string type="spdxId" value="GPL-3.0+" /> </meta> This commit fixes nixpkgs-lint, too.
2015-09-18Shut up clang warningsEelco Dolstra
2015-09-17nix-env --upgrade: show "downgrading" when doing soVladimír Čunát
It was strange to show "upgrading" when the version was getting lower. This is left on "upgrading" when the versions are the same, as I can't see any better wording.
2015-09-17nix-env --upgrade: avoid unexpected downgradesVladimír Čunát
Until now, if one explicitly installed a low-priority version, nix-env --upgrade would downgrade it by default and even with --leq. Let's never accept an upgrade with version not matching the upgradeType. Additionally, let's never decrease the priority of an installed package; you can use --install to force that. Also refactor to use variable bestVersion instead of bestName, as only version was used from it.
2015-07-23Optimize small listsEelco Dolstra
The value pointers of lists with 1 or 2 elements are now stored in the list value itself. In particular, this makes the "concatMap (x: if cond then [(f x)] else [])" idiom cheaper.
2015-07-23--version: Print some config infoEelco Dolstra
Such as whether Nix is built with signed binary cache support, and the location of the configuration file.
2015-07-17OCD: foreach -> C++11 ranged forEelco Dolstra
2015-05-21nix-collect-garbage: Don't call nix-envEelco Dolstra
Also, make sure --delete-older-than doesn't delete the current generation.
2015-05-21Move profiles.{cc,hh} to libstoreEelco Dolstra
2015-05-21Merge branch 'submit/sparse-generation-symlinks' of ↵Eelco Dolstra
https://github.com/ctheune/nix
2015-05-20Mis-read Eelko's request to not make this an option: now, let's not makeChristian Theune
it an option. :)
2015-05-19Implement alternative to lazy generations:Christian Theune
* only the last generation can be lazy * depend on the '--lazy-generation' flag to be set
2015-05-18Enable lazy/sparse allocation of generation symlinks: avoid creatingChristian Theune
new generations if a generation already exists. Alternatively or additionally I propose a mode where only the *last* generation will be sparse.
2015-05-05Allow URLs in the Nix search pathEelco Dolstra
E.g. to install "hello" from the latest Nixpkgs: $ nix-build '<nixpkgs>' -A hello -I nixpkgs=https://nixos.org/channels/nixpkgs-unstable/nixexprs.tar.xz Or to install a specific version of NixOS: $ nixos-rebuild switch -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/63def04891a0abc328b1b0b3a78ec02c58f48583.tar.gz
2015-04-09Implement caching of fetchurl/fetchTarball resultsEelco Dolstra
ETags are used to prevent redownloading unchanged files.