diff options
author | Silvan Mosberger <infinisil@icloud.com> | 2019-05-01 00:06:11 +0200 |
---|---|---|
committer | Silvan Mosberger <infinisil@icloud.com> | 2019-05-01 00:06:11 +0200 |
commit | a27dc9d3ab31634d40905926203484e5d0f3336c (patch) | |
tree | 5fca0de6ed97f74fcec89c9d830b14fa40dd222e | |
parent | 9db70b6a2ad49e68893a8039cd2f3fd1446063b2 (diff) | |
download | nixlib-a27dc9d3ab31634d40905926203484e5d0f3336c.tar nixlib-a27dc9d3ab31634d40905926203484e5d0f3336c.tar.gz nixlib-a27dc9d3ab31634d40905926203484e5d0f3336c.tar.bz2 nixlib-a27dc9d3ab31634d40905926203484e5d0f3336c.tar.lz nixlib-a27dc9d3ab31634d40905926203484e5d0f3336c.tar.xz nixlib-a27dc9d3ab31634d40905926203484e5d0f3336c.tar.zst nixlib-a27dc9d3ab31634d40905926203484e5d0f3336c.zip |
nixos/znc: Fix config generator for certain null values
The type of ZNC's config option specifies that a configuration like config.User.paul = null; should be valid, which is useful for clearing/disabling property sets like Users and Networks. However until now the config generator implementation didn't actually cover null values, meaning you'd get an error like error: value is null while a set was expected, at /foo.nix:29:10 This fixes the implementation to correcly allow clearing of property sets.
-rw-r--r-- | nixos/modules/services/networking/znc/default.nix | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/nixos/modules/services/networking/znc/default.nix b/nixos/modules/services/networking/znc/default.nix index 1ad8855b86db..46bff6954cdd 100644 --- a/nixos/modules/services/networking/znc/default.nix +++ b/nixos/modules/services/networking/znc/default.nix @@ -47,11 +47,11 @@ let # Baz=baz # Qux=qux # </Foo> - set = concatMap (subname: [ + set = concatMap (subname: optionals (value.${subname} != null) ([ "<${name} ${subname}>" ] ++ map (line: "\t${line}") (toLines value.${subname}) ++ [ "</${name}>" - ]) (filter (v: v != null) (attrNames value)); + ])) (filter (v: v != null) (attrNames value)); }.${builtins.typeOf value}; |