summary refs log tree commit diff
path: root/nixos/lib/eval-config.nix
Commit message (Collapse)AuthorAge
* Fix environment.checkConfigurationOptionsEelco Dolstra2013-10-29
| | | | | | This requires delaying the declaredness check until later, otherwise we get an infinite recursion querying environment.checkConfigurationOptions.
* Fix nixos-optionEelco Dolstra2013-10-28
| | | | | In particular, it no longer produces an "infinite recursion" error when run with no arguments.
* Check for undeclared optionsEelco Dolstra2013-10-28
|
* Big cleanup of the NixOS module systemEelco Dolstra2013-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The major changes are: * The evaluation is now driven by the declared options. In particular, this fixes the long-standing problem with lack of laziness of disabled option definitions. Thus, a configuration like config = mkIf false { environment.systemPackages = throw "bla"; }; will now evaluate without throwing an error. This also improves performance since we're not evaluating unused option definitions. * The implementation of properties is greatly simplified. * There is a new type constructor "submodule" that replaces "optionSet". Unlike "optionSet", "submodule" gets its option declarations as an argument, making it more like "listOf" and other type constructors. A typical use is: foo = mkOption { type = type.attrsOf (type.submodule ( { config, ... }: { bar = mkOption { ... }; xyzzy = mkOption { ... }; })); }; Existing uses of "optionSet" are automatically mapped to "submodule". * Modules are now checked for unsupported attributes: you get an error if a module contains an attribute other than "config", "options" or "imports". * The new implementation is faster and uses much less memory.
* Add a way to define obsolete options that have no replacementEelco Dolstra2013-10-23
|
* Terrible backward compatibility hackEelco Dolstra2013-10-11
|
* Update the release expressions and the channel generatorsEelco Dolstra2013-10-10
|
* Move all of NixOS to nixos/ in preparation of the repository mergeEelco Dolstra2013-10-10