···47474848 extraFlags = mkOption {
4949 description = "Extra flags to pass to the k3s command.";
5050+ type = types.str;
5051 default = "";
5152 example = "--no-deploy traefik --cluster-cidr 10.24.0.0/16";
5253 };
+2
nixos/modules/services/mail/postfix.nix
···560560561561 transport = mkOption {
562562 default = "";
563563+ type = types.lines;
563564 description = "
564565 Entries for the transport map, cf. man-page transport(8).
565566 ";
···573574574575 dnsBlacklistOverrides = mkOption {
575576 default = "";
577577+ type = types.lines;
576578 description = "contents of check_client_access for overriding dnsBlacklists";
577579 };
578580
+1
nixos/modules/services/misc/rippled.nix
···389389390390 extraConfig = mkOption {
391391 default = "";
392392+ type = types.lines;
392393 description = ''
393394 Extra lines to be added verbatim to the rippled.cfg configuration file.
394395 '';
+1
nixos/modules/services/misc/svnserve.nix
···2424 };
25252626 svnBaseDir = mkOption {
2727+ type = types.str;
2728 default = "/repos";
2829 description = "Base directory from which Subversion repositories are accessed.";
2930 };
+5
nixos/modules/services/misc/synergy.nix
···23232424 screenName = mkOption {
2525 default = "";
2626+ type = types.str;
2627 description = ''
2728 Use the given name instead of the hostname to identify
2829 ourselves to the server.
2930 '';
3031 };
3132 serverAddress = mkOption {
3333+ type = types.str;
3234 description = ''
3335 The server address is of the form: [hostname][:port]. The
3436 hostname must be the address or hostname of the server. The
···4648 enable = mkEnableOption "the Synergy server (send keyboard and mouse events)";
47494850 configFile = mkOption {
5151+ type = types.path;
4952 default = "/etc/synergy-server.conf";
5053 description = "The Synergy server configuration file.";
5154 };
5255 screenName = mkOption {
5656+ type = types.str;
5357 default = "";
5458 description = ''
5559 Use the given name instead of the hostname to identify
···5761 '';
5862 };
5963 address = mkOption {
6464+ type = types.str;
6065 default = "";
6166 description = "Address on which to listen for clients.";
6267 };
+1
nixos/modules/services/misc/weechat.nix
···2020 type = types.str;
2121 };
2222 binary = mkOption {
2323+ type = types.path;
2324 description = "Binary to execute (by default \${weechat}/bin/weechat).";
2425 example = literalExample ''
2526 ''${pkgs.weechat}/bin/weechat-headless
···4646 enable = mkEnableOption "the Netatalk AFP fileserver";
47474848 port = mkOption {
4949+ type = types.port;
4950 default = 548;
5051 description = "TCP port to be used for AFP.";
5152 };
···6869 };
69707071 path = mkOption {
7272+ type = types.str;
7173 default = "";
7274 example = "afp-data";
7375 description = "Share not the whole user home but this subdirectory path.";
···75777678 basedirRegex = mkOption {
7779 example = "/home";
8080+ type = types.str;
7881 description = "Regex which matches the parent directory of the user homes.";
7982 };
8083
···6161 };
62626363 advertisedAddresses = mkOption {
6464+ type = types.listOf types.str;
6465 default = [];
6566 description = "List of IP addresses this server is advertised under. See NetInfo(5)";
6667 };
···9292 enable = mkEnableOption "XtreemFS";
93939494 homeDir = mkOption {
9595+ type = types.path;
9596 default = "/var/lib/xtreemfs";
9697 description = ''
9798 XtreemFS home dir for the xtreemfs user.
···109110110111 uuid = mkOption {
111112 example = "eacb6bab-f444-4ebf-a06a-3f72d7465e40";
113113+ type = types.str;
112114 description = ''
113115 Must be set to a unique identifier, preferably a UUID according to
114116 RFC 4122. UUIDs can be generated with `uuidgen` command, found in
···117119 };
118120 port = mkOption {
119121 default = 32638;
122122+ type = types.port;
120123 description = ''
121124 The port to listen on for incoming connections (TCP).
122125 '';
123126 };
124127 address = mkOption {
128128+ type = types.str;
125129 example = "127.0.0.1";
126130 default = "";
127131 description = ''
···131135 };
132136 httpPort = mkOption {
133137 default = 30638;
138138+ type = types.port;
134139 description = ''
135140 Specifies the listen port for the HTTP service that returns the
136141 status page.
137142 '';
138143 };
139144 syncMode = mkOption {
145145+ type = types.enum [ "ASYNC" "SYNC_WRITE_METADATA" "SYNC_WRITE" "FDATASYNC" "ASYNC" ];
140146 default = "FSYNC";
141147 example = "FDATASYNC";
142148 description = ''
···229235230236 uuid = mkOption {
231237 example = "eacb6bab-f444-4ebf-a06a-3f72d7465e41";
238238+ type = types.str;
232239 description = ''
233240 Must be set to a unique identifier, preferably a UUID according to
234241 RFC 4122. UUIDs can be generated with `uuidgen` command, found in
···237244 };
238245 port = mkOption {
239246 default = 32636;
247247+ type = types.port;
240248 description = ''
241249 The port to listen on for incoming connections (TCP).
242250 '';
243251 };
244252 address = mkOption {
245253 example = "127.0.0.1";
254254+ type = types.str;
246255 default = "";
247256 description = ''
248257 If specified, it defines the interface to listen on. If not
···251260 };
252261 httpPort = mkOption {
253262 default = 30636;
263263+ type = types.port;
254264 description = ''
255265 Specifies the listen port for the HTTP service that returns the
256266 status page.
···258268 };
259269 syncMode = mkOption {
260270 default = "FSYNC";
271271+ type = types.enum [ "ASYNC" "SYNC_WRITE_METADATA" "SYNC_WRITE" "FDATASYNC" "ASYNC" ];
261272 example = "FDATASYNC";
262273 description = ''
263274 The sync mode influences how operations are committed to the disk
···367378368379 uuid = mkOption {
369380 example = "eacb6bab-f444-4ebf-a06a-3f72d7465e42";
381381+ type = types.str;
370382 description = ''
371383 Must be set to a unique identifier, preferably a UUID according to
372384 RFC 4122. UUIDs can be generated with `uuidgen` command, found in
···375387 };
376388 port = mkOption {
377389 default = 32640;
390390+ type = types.port;
378391 description = ''
379392 The port to listen on for incoming connections (TCP and UDP).
380393 '';
381394 };
382395 address = mkOption {
383396 example = "127.0.0.1";
397397+ type = types.str;
384398 default = "";
385399 description = ''
386400 If specified, it defines the interface to listen on. If not
···389403 };
390404 httpPort = mkOption {
391405 default = 30640;
406406+ type = types.port;
392407 description = ''
393408 Specifies the listen port for the HTTP service that returns the
394409 status page.
···46464747 user = mkOption {
4848 default = null;
4949+ type = types.nullOr types.str;
4950 description = ''
5051 The user the yandex-disk daemon should run as.
5152 '';
5253 };
53545455 directory = mkOption {
5656+ type = types.path;
5557 default = "/home/Yandex.Disk";
5658 description = "The directory to use for Yandex.Disk storage";
5759 };
+34-2
nixos/modules/services/networking/bind.nix
···8899 bindUser = "named";
10101111+ bindZoneOptions = {
1212+ name = mkOption {
1313+ type = types.str;
1414+ description = "Name of the zone.";
1515+ };
1616+ master = mkOption {
1717+ description = "Master=false means slave server";
1818+ type = types.bool;
1919+ };
2020+ file = mkOption {
2121+ type = types.either types.str types.path;
2222+ description = "Zone file resource records contain columns of data, separated by whitespace, that define the record.";
2323+ };
2424+ masters = mkOption {
2525+ type = types.listOf types.str;
2626+ description = "List of servers for inclusion in stub and secondary zones.";
2727+ };
2828+ slaves = mkOption {
2929+ type = types.listOf types.str;
3030+ description = "Addresses who may request zone transfers.";
3131+ default = [];
3232+ };
3333+ extraConfig = mkOption {
3434+ type = types.str;
3535+ description = "Extra zone config to be appended at the end of the zone section.";
3636+ default = "";
3737+ };
3838+ };
3939+1140 confFile = pkgs.writeText "named.conf"
1241 ''
1342 include "/etc/bind/rndc.key";
···7210173102 cacheNetworks = mkOption {
74103 default = ["127.0.0.0/24"];
104104+ type = types.listOf types.str;
75105 description = "
76106 What networks are allowed to use us as a resolver. Note
77107 that this is for recursive queries -- all networks are
···8311384114 blockedNetworks = mkOption {
85115 default = [];
116116+ type = types.listOf types.str;
86117 description = "
87118 What networks are just blocked.
88119 ";
···9012191122 ipv4Only = mkOption {
92123 default = false;
124124+ type = types.bool;
93125 description = "
94126 Only use ipv4, even if the host supports ipv6.
95127 ";
···9712998130 forwarders = mkOption {
99131 default = config.networking.nameservers;
132132+ type = types.listOf types.str;
100133 description = "
101134 List of servers we should forward requests to.
102135 ";
···120153121154 zones = mkOption {
122155 default = [];
156156+ type = types.listOf (types.submodule [ { options = bindZoneOptions; } ]);
123157 description = "
124158 List of zones we claim authority over.
125125- master=false means slave server; slaves means addresses
126126- who may request zone transfer.
127159 ";
128160 example = [{
129161 name = "example.com";
···40404141 serverName = mkOption {
4242 default = "hades.arpa";
4343+ type = types.str;
4344 description = "
4445 IRCD server name.
4546 ";
···47484849 sid = mkOption {
4950 default = "0NL";
5151+ type = types.str;
5052 description = "
5153 IRCD server unique ID in a net of servers.
5254 ";
···54565557 description = mkOption {
5658 default = "Hybrid-7 IRC server.";
5959+ type = types.str;
5760 description = "
5861 IRCD server description.
5962 ";
···6265 rsaKey = mkOption {
6366 default = null;
6467 example = literalExample "/root/certificates/irc.key";
6868+ type = types.nullOr types.path;
6569 description = "
6670 IRCD server RSA key.
6771 ";
···7074 certificate = mkOption {
7175 default = null;
7276 example = literalExample "/root/certificates/irc.pem";
7777+ type = types.nullOr types.path;
7378 description = "
7479 IRCD server SSL certificate. There are some limitations - read manual.
7580 ";
···77827883 adminEmail = mkOption {
7984 default = "<bit-bucket@example.com>";
8585+ type = types.str;
8086 example = "<name@domain.tld>";
8187 description = "
8288 IRCD server administrator e-mail.
···8692 extraIPs = mkOption {
8793 default = [];
8894 example = ["127.0.0.1"];
9595+ type = types.listOf types.str;
8996 description = "
9097 Extra IP's to bind.
9198 ";
···9310094101 extraPort = mkOption {
95102 default = "7117";
103103+ type = types.str;
96104 description = "
97105 Extra port to avoid filtering.
98106 ";
+3-1
nixos/modules/services/networking/mailpile.nix
···2121 enable = mkEnableOption "Mailpile the mail client";
22222323 hostname = mkOption {
2424+ type = types.str;
2425 default = "localhost";
2526 description = "Listen to this hostname or ip.";
2627 };
2728 port = mkOption {
2828- default = "33411";
2929+ type = types.port;
3030+ default = 33411;
2931 description = "Listen on this port.";
3032 };
3133 };
+2-1
nixos/modules/services/networking/prayer.nix
···4444 enable = mkEnableOption "the prayer webmail http server";
45454646 port = mkOption {
4747- default = "2080";
4747+ default = 2080;
4848+ type = types.port;
4849 description = ''
4950 Port the prayer http server is listening to.
5051 '';
+4
nixos/modules/services/networking/quassel.nix
···4545 };
46464747 interfaces = mkOption {
4848+ type = types.listOf types.str;
4849 default = [ "127.0.0.1" ];
4950 description = ''
5051 The interfaces the Quassel daemon will be listening to. If `[ 127.0.0.1 ]',
···5455 };
55565657 portNumber = mkOption {
5858+ type = types.port;
5759 default = 4242;
5860 description = ''
5961 The port number the Quassel daemon will be listening to.
···62646365 dataDir = mkOption {
6466 default = "/home/${user}/.config/quassel-irc.org";
6767+ type = types.str;
6568 description = ''
6669 The directory holding configuration files, the SQlite database and the SSL Cert.
6770 '';
···69727073 user = mkOption {
7174 default = null;
7575+ type = types.nullOr types.str;
7276 description = ''
7377 The existing user the Quassel daemon should run as. If left empty, a default "quassel" user will be created.
7478 '';
+1
nixos/modules/services/networking/radvd.nix
···3333 };
34343535 services.radvd.config = mkOption {
3636+ type = types.lines;
3637 example =
3738 ''
3839 interface eth0 {
···2828 };
29293030 arguments = mkOption {
3131+ type = types.str;
3132 default = "-v -o pa";
3233 description = ''
3334 Arguments to pass to the daemon. Defaults to a local pulseaudio
···3637 };
37383839 user = mkOption {
4040+ type = types.str;
3941 default = "shairport";
4042 description = ''
4143 User account name under which to run shairport-sync. The account
+6
nixos/modules/services/networking/ssh/lshd.nix
···29293030 portNumber = mkOption {
3131 default = 22;
3232+ type = types.port;
3233 description = ''
3334 The port on which to listen for connections.
3435 '';
···36373738 interfaces = mkOption {
3839 default = [];
4040+ type = types.listOf types.str;
3941 description = ''
4042 List of network interfaces where listening for connections.
4143 When providing the empty list, `[]', lshd listens on all
···46484749 hostKey = mkOption {
4850 default = "/etc/lsh/host-key";
5151+ type = types.str;
4952 description = ''
5053 Path to the server's private key. Note that this key must
5154 have been created, e.g., using "lsh-keygen --server |
···79828083 loginShell = mkOption {
8184 default = null;
8585+ type = types.nullOr types.str;
8286 description = ''
8387 If non-null, override the default login shell with the
8488 specified value.
···88928993 srpKeyExchange = mkOption {
9094 default = false;
9595+ type = types.bool;
9196 description = ''
9297 Whether to enable SRP key exchange and user authentication.
9398 '';
···106111 };
107112108113 subsystems = mkOption {
114114+ type = types.listOf types.path;
109115 description = ''
110116 List of subsystem-path pairs, where the head of the pair
111117 denotes the subsystem name, and the tail denotes the path to
+1
nixos/modules/services/web-apps/mediawiki.nix
···180180 };
181181182182 name = mkOption {
183183+ type = types.str;
183184 default = "MediaWiki";
184185 example = "Foobar Wiki";
185186 description = "Name of the wiki.";
···404404405405 logError = mkOption {
406406 default = "stderr";
407407+ type = types.str;
407408 description = "
408409 Configures logging.
409410 The first parameter defines a file that will store the log. The
···25252626 sessionPath = mkOption {
2727 default = [];
2828+ type = types.listOf types.package;
2829 example = literalExample "[ pkgs.gnome3.gpaste ]";
2930 description = ''
3031 Additional list of packages to be added to the session search path.
···118118119119 sessionPath = mkOption {
120120 default = [];
121121+ type = types.listOf types.package;
121122 example = literalExample "[ pkgs.gnome3.gpaste ]";
122123 description = ''
123124 Additional list of packages to be added to the session search path.
···42424343 sessionPath = mkOption {
4444 default = [];
4545+ type = types.listOf types.package;
4546 example = literalExample "[ pkgs.gnome3.gpaste ]";
4647 description = ''
4748 Additional list of packages to be added to the session search path.
···1515 '';
1616in
17171818+if !versionAtLeast ocaml.version "4.08"
1919+then throw "nocrypto is not available for OCaml ${ocaml.version}"
2020+else
2121+1822stdenv.mkDerivation rec {
1923 name = "ocaml${ocaml.version}-nocrypto-${version}";
2024 version = "0.5.4";