about summary refs log tree commit diff
path: root/src/nix/main.cc
AgeCommit message (Collapse)AuthorFilesLines
2018-08-30 nix: Remove the -h flagEelco Dolstra1-1/+0
2018-05-30 Modularize config settingsEelco Dolstra1-3/+4
Allow global config settings to be defined in multiple Config classes. For example, this means that libutil can have settings and evaluator settings can be moved out of libstore. The Config classes are registered in a new GlobalConfig class to which config files etc. are applied. Relevant to https://github.com/NixOS/nix/issues/2009 in that it removes the need for ad hoc handling of useCaseHack, which was the underlying cause of that issue.
2018-02-08 Add plugins to make Nix more extensible.Shea Levy1-0/+2
All plugins in plugin-files will be dlopened, allowing them to statically construct instances of the various Register* types Nix supports.
2018-01-31 Add 'nix upgrade-nix' commandEelco Dolstra1-1/+4
This command upgrades Nix to the latest stable version by installing a store path obtained from https://github.com/NixOS/nixpkgs/raw/master/nixos/modules/installer/tools/nix-fallback-paths.nix which is the same store path that the installer at https://nixos.org/nix/install.sh uses. The upgrade fails if Nix is not installed in a profile (e.g. on NixOS, or when installed outside of the Nix store).
2017-11-14 Make config options available to legacy commandsEelco Dolstra1-4/+0
2017-10-24 nix: Respect -I, --arg, --argstrEelco Dolstra1-13/+23
Also, random cleanup to argument handling.
2017-08-29 nix edit / log: Operate on a single InstallableEelco Dolstra1-0/+3
2017-08-29 nix run: Flush the progress bar before starting the commandEelco Dolstra1-1/+2
2017-08-29 nix run: Fix chroot executionEelco Dolstra1-0/+11
Running "nix run" with a diverted store, e.g. $ nix run --store local?root=/tmp/nix nixpkgs.hello stopped working when Nix became multithreaded, because unshare(CLONE_NEWUSER) doesn't work in multithreaded processes. The obvious solution is to terminate all other threads first, but 1) there is no way to terminate Boehm GC marker threads; and 2) it appears that the kernel has a race where unshare(CLONE_NEWUSER) will still fail for some indeterminate amount of time after joining other threads. So instead, "nix run" will now exec() a single-threaded helper ("nix __run_in_chroot") that performs the actual unshare()/chroot()/exec().
2017-07-30 Replace Unicode quotes in user-facing strings by ASCIIJörg Thalheim1-3/+3
Relevant RFC: NixOS/rfcs#4 $ ag -l | xargs sed -i -e "/\"/s/’/'/g;/\"/s/‘/'/g"
2017-07-14 nix: Show help when no arguments are givenEelco Dolstra1-6/+9
Fixes #1464.
2017-06-07 Don't show flags from config settings in "nix --help"Eelco Dolstra1-1/+3
2017-06-07 nix: Add --help-config flagEelco Dolstra1-0/+20
2017-06-07 nix: Make all options available as flagsEelco Dolstra1-0/+2
Thus, instead of ‘--option <name> <value>’, you can write ‘--<name> <value>’. So --option http-connections 100 becomes --http-connections 100 Apart from brevity, the difference is that it's not an error to set a non-existent option via --option, but unrecognized arguments are fatal. Boolean options have special treatment: they're mapped to the argument-less flags ‘--<name>’ and ‘--no-<name>’. E.g. --option auto-optimise-store false becomes --no-auto-optimise-store
2017-05-16 Improve progress indicatorEelco Dolstra1-0/+1
2017-04-13 Convert Settings to the new config systemEelco Dolstra1-1/+0
This makes all config options self-documenting. Unknown or unparseable config settings and --option flags now cause a warning.
2017-04-08 Process nix.conf options in "new" nix commands, add test.Will Dietz1-0/+1
Without this (minor) change, the options set using "--option" or read from nix.conf were parsed but not used.
2016-04-25 nix: Disable verbose buildsEelco Dolstra1-0/+2
2016-04-25 Improved logging abstractionEelco Dolstra1-0/+3
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-03-04 Add warning about "nix" being experimentalEelco Dolstra1-0/+1
2016-02-09 Start of new Nix command-line interfaceEelco Dolstra1-0/+55