#include "common-args.hh" #include "globals.hh" namespace nix { MixCommonArgs::MixCommonArgs(const string & programName) : programName(programName) { mkFlag() .longName("verbose") .shortName('v') .description("increase verbosity level") .handler([]() { verbosity = (Verbosity) (verbosity + 1); }); mkFlag() .longName("quiet") .description("decrease verbosity level") .handler([]() { verbosity = verbosity > lvlError ? (Verbosity) (verbosity - 1) : lvlError; }); mkFlag() .longName("debug") .description("enable debug output") .handler([]() { verbosity = lvlDebug; }); mkFlag() .longName("option") .labels({"name", "value"}) .description("set a Nix configuration option (overriding nix.conf)") .arity(2) .handler([](std::vector ss) { try { settings.set(ss[0], ss[1]); } catch (UsageError & e) { warn(e.what()); } }); } }