treewide: use optional instead of 'then []'

Changed files
+45 -65
nixos
+5 -6
nixos/modules/security/lock-kernel-modules.nix
···
config = mkIf config.security.lockKernelModules {
boot.kernelModules = concatMap (x:
-
if x.device != null
-
then
-
if x.fsType == "vfat"
-
then [ "vfat" "nls-cp437" "nls-iso8859-1" ]
-
else [ x.fsType ]
-
else []) config.system.build.fileSystems;
+
optionals (x.device != null) (
+
if x.fsType == "vfat"
+
then [ "vfat" "nls-cp437" "nls-iso8859-1" ]
+
else [ x.fsType ])
+
) config.system.build.fileSystems;
systemd.services.disable-kernel-module-loading = {
description = "Disable kernel module loading";
+2 -2
nixos/modules/security/sudo.nix
···
${concatStringsSep "\n" (
lists.flatten (
map (
-
rule: if (length rule.commands != 0) then [
+
rule: optionals (length rule.commands != 0) [
(map (user: "${toUserString user} ${rule.host}=(${rule.runAs}) ${toCommandsString rule.commands}") rule.users)
(map (group: "${toGroupString group} ${rule.host}=(${rule.runAs}) ${toCommandsString rule.commands}") rule.groups)
-
] else []
+
]
) cfg.extraRules
)
)}
+1 -1
nixos/modules/services/backup/restic.nix
···
let
extraOptions = concatMapStrings (arg: " -o ${arg}") backup.extraOptions;
resticCmd = "${backup.package}/bin/restic${extraOptions}";
-
excludeFlags = if (backup.exclude != []) then ["--exclude-file=${pkgs.writeText "exclude-patterns" (concatStringsSep "\n" backup.exclude)}"] else [];
+
excludeFlags = optional (backup.exclude != []) "--exclude-file=${pkgs.writeText "exclude-patterns" (concatStringsSep "\n" backup.exclude)}";
filesFromTmpFile = "/run/restic-backups-${name}/includes";
backupPaths =
if (backup.dynamicFilesFrom == null)
+1 -1
nixos/modules/services/games/factorio.nix
···
};
};
-
networking.firewall.allowedUDPPorts = if cfg.openFirewall then [ cfg.port ] else [];
+
networking.firewall.allowedUDPPorts = optional cfg.openFirewall cfg.port;
};
}
+1 -1
nixos/modules/services/games/freeciv.nix
···
generate = name: value:
let mkParam = k: v:
if v == null then []
-
else if isBool v then if v then [("--"+k)] else []
+
else if isBool v then optional v ("--"+k)
else [("--"+k) v];
mkParams = k: v: map (mkParam k) (if isList v then v else [v]);
in escapeShellArgs (concatLists (concatLists (mapAttrsToList mkParams value)));
+2 -2
nixos/modules/services/network-filesystems/glusterfs.nix
···
rm -f /var/lib/glusterd/secure-access
'';
-
restartTriggers = if (cfg.tlsSettings != null) then [
+
restartTriggers = optionals (cfg.tlsSettings != null) [
config.environment.etc."ssl/glusterfs.pem".source
config.environment.etc."ssl/glusterfs.key".source
config.environment.etc."ssl/glusterfs.ca".source
-
] else [];
+
];
cfg = config.services.glusterfs;
+1 -1
nixos/modules/services/networking/ddclient.nix
···
(mkChangedOptionModule [ "services" "ddclient" "domain" ] [ "services" "ddclient" "domains" ]
(config:
let value = getAttrFromPath [ "services" "ddclient" "domain" ] config;
-
in if value != "" then [ value ] else []))
+
in optional (value != "") value))
(mkRemovedOptionModule [ "services" "ddclient" "homeDir" ] "")
(mkRemovedOptionModule [ "services" "ddclient" "password" ] "Use services.ddclient.passwordFile instead.")
(mkRemovedOptionModule [ "services" "ddclient" "ipv6" ] "")
+21 -32
nixos/modules/services/networking/i2pd.nix
···
(boolOpt "enabled" proto.enable)
(strOpt "address" proto.address)
(intOpt "port" proto.port)
-
] ++ (if proto ? keys then optionalNullString "keys" proto.keys else [])
-
++ (if proto ? auth then optionalNullBool "auth" proto.auth else [])
-
++ (if proto ? user then optionalNullString "user" proto.user else [])
-
++ (if proto ? pass then optionalNullString "pass" proto.pass else [])
-
++ (if proto ? strictHeaders then optionalNullBool "strictheaders" proto.strictHeaders else [])
-
++ (if proto ? hostname then optionalNullString "hostname" proto.hostname else [])
-
++ (if proto ? outproxy then optionalNullString "outproxy" proto.outproxy else [])
-
++ (if proto ? outproxyPort then optionalNullInt "outproxyport" proto.outproxyPort else [])
-
++ (if proto ? outproxyEnable then optionalNullBool "outproxy.enabled" proto.outproxyEnable else []);
+
] ++ (optionals (proto ? keys) (optionalNullString "keys" proto.keys))
+
++ (optionals (proto ? auth) (optionalNullBool "auth" proto.auth))
+
++ (optionals (proto ? user) (optionalNullString "user" proto.user))
+
++ (optionals (proto ? pass) (optionalNullString "pass" proto.pass))
+
++ (optionals (proto ? strictHeaders) (optionalNullBool "strictheaders" proto.strictHeaders))
+
++ (optionals (proto ? hostname) (optionalNullString "hostname" proto.hostname))
+
++ (optionals (proto ? outproxy) (optionalNullString "outproxy" proto.outproxy))
+
++ (optionals (proto ? outproxyPort) (optionalNullInt "outproxyport" proto.outproxyPort))
+
++ (optionals (proto ? outproxyEnable) (optionalNullBool "outproxy.enabled" proto.outproxyEnable));
in (concatStringsSep "\n" protoOpts)
));
in
···
"type = client"
(intOpt "port" tun.port)
(strOpt "destination" tun.destination)
-
] ++ (if tun ? destinationPort then optionalNullInt "destinationport" tun.destinationPort else [])
-
++ (if tun ? keys then
-
optionalNullString "keys" tun.keys else [])
-
++ (if tun ? address then
-
optionalNullString "address" tun.address else [])
-
++ (if tun ? inbound.length then
-
optionalNullInt "inbound.length" tun.inbound.length else [])
-
++ (if tun ? inbound.quantity then
-
optionalNullInt "inbound.quantity" tun.inbound.quantity else [])
-
++ (if tun ? outbound.length then
-
optionalNullInt "outbound.length" tun.outbound.length else [])
-
++ (if tun ? outbound.quantity then
-
optionalNullInt "outbound.quantity" tun.outbound.quantity else [])
-
++ (if tun ? crypto.tagsToSend then
-
optionalNullInt "crypto.tagstosend" tun.crypto.tagsToSend else []);
+
] ++ (optionals (tun ? destinationPort) (optionalNullInt "destinationport" tun.destinationPort))
+
++ (optionals (tun ? keys) (optionalNullString "keys" tun.keys))
+
++ (optionals (tun ? address) (optionalNullString "address" tun.address))
+
++ (optionals (tun ? inbound.length) (optionalNullInt "inbound.length" tun.inbound.length))
+
++ (optionals (tun ? inbound.quantity) (optionalNullInt "inbound.quantity" tun.inbound.quantity))
+
++ (optionals (tun ? outbound.length) (optionalNullInt "outbound.length" tun.outbound.length))
+
++ (optionals (tun ? outbound.quantity) (optionalNullInt "outbound.quantity" tun.outbound.quantity))
+
++ (optionals (tun ? crypto.tagsToSend) (optionalNullInt "crypto.tagstosend" tun.crypto.tagsToSend));
in concatStringsSep "\n" outTunOpts))
(flip map
(collect (tun: tun ? port && tun ? address) cfg.inTunnels)
···
"type = server"
(intOpt "port" tun.port)
(strOpt "host" tun.address)
-
] ++ (if tun ? destination then
-
optionalNullString "destination" tun.destination else [])
-
++ (if tun ? keys then
-
optionalNullString "keys" tun.keys else [])
-
++ (if tun ? inPort then
-
optionalNullInt "inport" tun.inPort else [])
-
++ (if tun ? accessList then
-
optionalEmptyList "accesslist" tun.accessList else []);
+
] ++ (optionals (tun ? destination) (optionalNullString "destination" tun.destination))
+
++ (optionals (tun ? keys) (optionalNullString "keys" tun.keys))
+
++ (optionals (tun ? inPort) (optionalNullInt "inport" tun.inPort))
+
++ (optionals (tun ? accessList) (optionalEmptyList "accesslist" tun.accessList));
in concatStringsSep "\n" inTunOpts))];
in pkgs.writeText "i2pd-tunnels.conf" opts;
+2 -3
nixos/modules/services/networking/prosody.nix
···
environment.etc."prosody/prosody.cfg.lua".text =
let
-
httpDiscoItems = if (cfg.uploadHttp != null)
-
then [{ url = cfg.uploadHttp.domain; description = "HTTP upload endpoint";}]
-
else [];
+
httpDiscoItems = optionals (cfg.uploadHttp != null)
+
[{ url = cfg.uploadHttp.domain; description = "HTTP upload endpoint";}];
mucDiscoItems = builtins.foldl'
(acc: muc: [{ url = muc.domain; description = "${muc.domain} MUC endpoint";}] ++ acc)
[]
+1 -1
nixos/modules/services/networking/ssh/sshd.nix
···
};
-
networking.firewall.allowedTCPPorts = if cfg.openFirewall then cfg.ports else [];
+
networking.firewall.allowedTCPPorts = optionals cfg.openFirewall cfg.ports;
security.pam.services.sshd =
{ startSession = true;
+1 -1
nixos/modules/services/networking/vsftpd.nix
···
# If you really have to access root via FTP use mkOverride or userlistDeny
# = false and whitelist root
-
services.vsftpd.userlist = if cfg.userlistDeny then ["root"] else [];
+
services.vsftpd.userlist = optional cfg.userlistDeny "root";
systemd = {
tmpfiles.rules = optional cfg.anonymousUser
+2 -3
nixos/modules/services/security/tor.nix
···
};
options.SOCKSPort = mkOption {
description = lib.mdDoc (descriptionGeneric "SOCKSPort");
-
default = if cfg.settings.HiddenServiceNonAnonymousMode == true then [{port = 0;}] else [];
+
default = lib.optionals cfg.settings.HiddenServiceNonAnonymousMode [{port = 0;}];
defaultText = literalExpression ''
if config.${opt.settings}.HiddenServiceNonAnonymousMode == true
then [ { port = 0; } ]
···
allowedTCPPorts =
concatMap (o:
if isInt o && o > 0 then [o]
-
else if o ? "port" && isInt o.port && o.port > 0 then [o.port]
-
else []
+
else optionals (o ? "port" && isInt o.port && o.port > 0) [o.port]
) (flatten [
cfg.settings.ORPort
cfg.settings.DirPort
+1 -1
nixos/modules/services/web-apps/dex.nix
···
cfg = config.services.dex;
fixClient = client: if client ? secretFile then ((builtins.removeAttrs client [ "secretFile" ]) // { secret = client.secretFile; }) else client;
filteredSettings = mapAttrs (n: v: if n == "staticClients" then (builtins.map fixClient v) else v) cfg.settings;
-
secretFiles = flatten (builtins.map (c: if c ? secretFile then [ c.secretFile ] else []) (cfg.settings.staticClients or []));
+
secretFiles = flatten (builtins.map (c: optional (c ? secretFile) c.secretFile) (cfg.settings.staticClients or []));
settingsFormat = pkgs.formats.yaml {};
configFile = settingsFormat.generate "config.yaml" filteredSettings;
+1 -3
nixos/modules/services/web-apps/mastodon.nix
···
envFile = pkgs.writeText "mastodon.env" (lib.concatMapStrings (s: s + "\n") (
(lib.concatLists (lib.mapAttrsToList (name: value:
-
if value != null then [
-
"${name}=\"${toString value}\""
-
] else []
+
lib.optional (value != null) ''${name}="${toString value}"''
) env))));
mastodonTootctl = let
+1 -3
nixos/modules/services/web-apps/nifi.nix
···
envFile = pkgs.writeText "nifi.env" (lib.concatMapStrings (s: s + "\n") (
(lib.concatLists (lib.mapAttrsToList (name: value:
-
if value != null then [
-
"${name}=\"${toString value}\""
-
] else []
+
lib.optional (value != null) ''${name}="${toString value}"''
) env))));
nifiEnv = pkgs.writeShellScriptBin "nifi-env" ''
+1 -3
nixos/modules/services/web-apps/peertube.nix
···
envFile = pkgs.writeText "peertube.env" (lib.concatMapStrings (s: s + "\n") (
(lib.concatLists (lib.mapAttrsToList (name: value:
-
if value != null then [
-
"${name}=\"${toString value}\""
-
] else []
+
lib.optional (value != null) ''${name}="${toString value}"''
) env))));
peertubeEnv = pkgs.writeShellScriptBin "peertube-env" ''
+1 -1
nixos/modules/system/boot/luksroot.nix
···
++ luks.cryptoModules
# workaround until https://marc.info/?l=linux-crypto-vger&m=148783562211457&w=4 is merged
# remove once 'modprobe --show-depends xts' shows ecb as a dependency
-
++ (if builtins.elem "xts" luks.cryptoModules then ["ecb"] else []);
+
++ (optional (builtins.elem "xts" luks.cryptoModules) "ecb");
# copy the cryptsetup binary and it's dependencies
boot.initrd.extraUtilsCommands = let