| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
|
|
|
| |
attrsets with packages such as kde.
|
|
|
|
| |
Signed-off-by: Shea Levy <shea@shealevy.com>
|
|
|
|
| |
Signed-off-by: Shea Levy <shea@shealevy.com>
|
|
|
|
| |
Also some whitespace nitpicks.
|
|
|
|
| |
Use more of the original makefile 2 space indent
|
| |
|
|
|
|
| |
Nixpkgs requires at least Nix 1.2 anyway, so these are now useless.
|
| |
|
|\
| |
| | |
New application: Milkytracker v0.90.85
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
"with" used to be less lazy, so don't rely on that. Also don't use
the "<" operator.
|
| | |
|
| |
| |
| |
| | |
And fix various instances of bad arguments.
|
| |
| |
| |
| |
| |
| |
| |
| | |
E.g.
The unique option `fileSystems./.device' is defined multiple times, in `/etc/nixos/configuration.nix' and `/etc/nixos/foo.nix'.
This requires passing file/value tuples to the merge functions.
|
| | |
|
| |
| |
| |
| |
| |
| | |
This requires delaying the declaredness check until later, otherwise
we get an infinite recursion querying
environment.checkConfigurationOptions.
|
| | |
|
| |
| |
| |
| | |
NixOps uses it.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
An annoying and dangerous property of "types.string" is that it merges
multiple definitions by concatenating them, which almost never
produces a sensible result. (Those options for which it does make
sense typically should use "types.lines" instead, and things only work
because the option definitions already end in a newline.) Of course,
you can use "types.uniq types.string", but that's rather verbose, and
inconsistent with other basic types like "types.int".
Changing the behaviour of "types.string" to be unique by default is
not an option, given the large number of options that use it. So
instead, we now have "types.str", which is equivalent to "types.uniq
types.string".
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Now that overriding fileSystems in qemu-vm.nix works again, it's
important that the VM tests that add additional file systems use the
same override priority. Instead of using the same magic constant
everywhere, they can now use mkVMOverride.
http://hydra.nixos.org/build/6695561
|
| |
| |
| |
| |
| | |
In particular, it no longer produces an "infinite recursion" error
when run with no arguments.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For instance, if time.timeZone is defined multiple times, you now get
the error message:
error: user-thrown exception: The unique option `time.timeZone' is defined multiple times, in `/etc/nixos/configurations/misc/eelco/x11vnc.nix' and `/etc/nixos/configuration.nix'.
while previously you got:
error: user-thrown exception: Multiple definitions of string. Only one is allowed for this option.
and only an inspection of the stack trace gave a clue as to what
option caused the problem.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
It's redundant because you can (and should) specify an option type, or
an apply function.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Also, when an option definition fails to type-check, print the file
name of the module in which the offending definition occurs, e.g.
error: user-thrown exception: The option value `boot.loader.grub.version' in `/etc/nixos/configuration.nix' is not a integer.
|
| | |
|
| |
| |
| |
| | |
mkFixStrictness is no longer needed, woohoo!
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| | |
|
| | |
|
| | |
|