Merge pull request #20144 from ericsagnes/feat/module-enums

modules: use enum when relevant
This commit is contained in:
Joachim F 2016-11-05 12:18:04 +01:00 committed by GitHub
commit 2c567dbd4d
7 changed files with 8 additions and 15 deletions

View File

@ -21,8 +21,7 @@ in
language = mkOption { language = mkOption {
default = "English"; default = "English";
type = types.addCheck types.str type = types.enum [ "English" "Spanish" "Russian" "Serbian" "Turkish" ];
(lang: elem lang [ "English" "Spanish" "Russian" "Serbian" "Turkish" ]);
description = "The language of bot messages: English, Spanish, Russian, Serbian or Turkish."; description = "The language of bot messages: English, Spanish, Russian, Serbian or Turkish.";
}; };

View File

@ -55,9 +55,9 @@ let
levelOption = mkOption { levelOption = mkOption {
default = "server"; default = "server";
type = types.str; type = types.enum [ "workstation" "server" "paranoid" ];
description = '' description = ''
Set the logcheck level. Either "workstation", "server", or "paranoid". Set the logcheck level.
''; '';
}; };

View File

@ -7,11 +7,6 @@ let
cfg = config.services.bitlbee; cfg = config.services.bitlbee;
bitlbeeUid = config.ids.uids.bitlbee; bitlbeeUid = config.ids.uids.bitlbee;
authModeCheck = v:
v == "Open" ||
v == "Closed" ||
v == "Registered";
bitlbeeConfig = pkgs.writeText "bitlbee.conf" bitlbeeConfig = pkgs.writeText "bitlbee.conf"
'' ''
[settings] [settings]
@ -67,7 +62,7 @@ in
authMode = mkOption { authMode = mkOption {
default = "Open"; default = "Open";
type = types.addCheck types.str authModeCheck; type = types.enum [ "Open" "Closed" "Registered" ];
description = '' description = ''
The following authentication modes are available: The following authentication modes are available:
Open -- Accept connections from anyone, use NickServ for user authentication. Open -- Accept connections from anyone, use NickServ for user authentication.

View File

@ -68,7 +68,7 @@ in
interfaceType = mkOption { interfaceType = mkOption {
default = "tun"; default = "tun";
type = types.addCheck types.str (n: n == "tun" || n == "tap"); type = types.enum [ "tun" "tap" ];
description = '' description = ''
The type of virtual interface used for the network connection The type of virtual interface used for the network connection
''; '';

View File

@ -21,7 +21,7 @@ in {
}; };
socketType = mkOption { socketType = mkOption {
type = types.addCheck types.str (t: t == "unix" || t == "tcp" || t == "tcp6"); type = types.enum [ "unix" "tcp" "tcp6" ];
default = "unix"; default = "unix";
description = "Socket type: 'unix', 'tcp' or 'tcp6'."; description = "Socket type: 'unix', 'tcp' or 'tcp6'.";
}; };

View File

@ -324,8 +324,7 @@ in
fsIdentifier = mkOption { fsIdentifier = mkOption {
default = "uuid"; default = "uuid";
type = types.addCheck types.str type = types.enum [ "uuid" "label" "provided" ];
(type: type == "uuid" || type == "label" || type == "provided");
description = '' description = ''
Determines how GRUB will identify devices when generating the Determines how GRUB will identify devices when generating the
configuration file. A value of uuid / label signifies that grub configuration file. A value of uuid / label signifies that grub

View File

@ -245,7 +245,7 @@ let
virtualType = mkOption { virtualType = mkOption {
default = null; default = null;
type = types.nullOr (types.addCheck types.str (v: v == "tun" || v == "tap")); type = with types; nullOr (enum [ "tun" "tap" ]);
description = '' description = ''
The explicit type of interface to create. Accepts tun or tap strings. The explicit type of interface to create. Accepts tun or tap strings.
Also accepts null to implicitly detect the type of device. Also accepts null to implicitly detect the type of device.