about summary refs log tree commit diff
path: root/src/libutil/config.cc
AgeCommit message (Collapse)AuthorFilesLines
2018-05-30 Modularize config settingsEelco Dolstra1-20/+68
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-19 Config::handleUnknownSettings(): Remove unused 'fatal' argumentEelco Dolstra1-5/+2
2018-02-13 Allow plugins to define new settings.Shea Levy1-21/+21
2018-02-13 Allow includes from nix.confShea Levy1-1/+25
2017-11-21 Propagate flags like --sandbox to the daemon properlyEelco Dolstra1-3/+3
2017-10-24 nix: Respect -I, --arg, --argstrEelco Dolstra1-3/+3
Also, random cleanup to argument handling.
2017-07-30 Replace Unicode quotes in user-facing strings by ASCIIJörg Thalheim1-1/+1
Relevant RFC: NixOS/rfcs#4 $ ag -l | xargs sed -i -e "/\"/s/’/'/g;/\"/s/‘/'/g"
2017-06-07 Don't show flags from config settings in "nix --help"Eelco Dolstra1-8/+21
2017-06-07 nix: Make all options available as flagsEelco Dolstra1-0/+25
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-03 Fix build on gcc 4.9Eelco Dolstra1-2/+2
http://hydra.nixos.org/build/52408843
2017-04-28 Hopefully fix the Darwin buildEelco Dolstra1-0/+1
http://hydra.nixos.org/build/52080911
2017-04-20 Improve nix show-config --jsonEelco Dolstra1-0/+38
In particular, show descriptions. This could be used for manpage generation etc.
2017-04-20 Setting: Remove "Tag" template argumentEelco Dolstra1-32/+21
2017-04-20 Read per-user settings from ~/.config/nix/nix.confEelco Dolstra1-2/+11
2017-04-14 Fix 32-bit buildEelco Dolstra1-1/+3
http://hydra.nixos.org/build/51569816
2017-04-13 Convert Settings to the new config systemEelco Dolstra1-21/+83
This makes all config options self-documenting. Unknown or unparseable config settings and --option flags now cause a warning.
2017-04-13 Support arbitrary numeric types for settingsEelco Dolstra1-4/+17
2017-04-13 Validate Boolean settings betterEelco Dolstra1-1/+6
2017-04-13 Add a Config class to simplify adding configuration settingsEelco Dolstra1-0/+112
The typical use is to inherit Config and add Setting<T> members: class MyClass : private Config { Setting<int> foo{this, 123, "foo", "the number of foos to use"}; Setting<std::string> bar{this, "blabla", "bar", "the name of the bar"}; MyClass() : Config(readConfigFile("/etc/my-app.conf")) { std::cout << foo << "\n"; // will print 123 unless overriden } }; Currently, this is used by Store and its subclasses for store parameters. You now get a warning if you specify a non-existant store parameter in a store URI.