about summary refs log tree commit diff
path: root/nixos/modules/services/networking/teamspeak3.nix
diff options
context:
space:
mode:
authorJörg Thalheim <joerg@thalheim.io>2018-10-20 13:09:41 +0100
committerJörg Thalheim <joerg@thalheim.io>2019-02-08 10:28:20 +0000
commit6c28dd858ba87939f46973be16c25a1329ae6912 (patch)
tree376cac22eb87156404d5a0b1aaba0db4cc0b359d /nixos/modules/services/networking/teamspeak3.nix
parent0710c9fc25b79d22904c5ba87b58352a5dc05fba (diff)
downloadnixlib-6c28dd858ba87939f46973be16c25a1329ae6912.tar
nixlib-6c28dd858ba87939f46973be16c25a1329ae6912.tar.gz
nixlib-6c28dd858ba87939f46973be16c25a1329ae6912.tar.bz2
nixlib-6c28dd858ba87939f46973be16c25a1329ae6912.tar.lz
nixlib-6c28dd858ba87939f46973be16c25a1329ae6912.tar.xz
nixlib-6c28dd858ba87939f46973be16c25a1329ae6912.tar.zst
nixlib-6c28dd858ba87939f46973be16c25a1329ae6912.zip
teamspeak: ipv6 support
Unlike the options descriptions the service was not listen to any
IPs because the address family was limited to ipv4.
Diffstat (limited to 'nixos/modules/services/networking/teamspeak3.nix')
-rw-r--r--nixos/modules/services/networking/teamspeak3.nix24
1 files changed, 15 insertions, 9 deletions
diff --git a/nixos/modules/services/networking/teamspeak3.nix b/nixos/modules/services/networking/teamspeak3.nix
index 410d650b1f64..9ea9c83e37cd 100644
--- a/nixos/modules/services/networking/teamspeak3.nix
+++ b/nixos/modules/services/networking/teamspeak3.nix
@@ -41,8 +41,9 @@ in
       };
 
       voiceIP = mkOption {
-        type = types.str;
-        default = "0.0.0.0";
+        type = types.nullOr types.str;
+        default = null;
+        example = "0.0.0.0";
         description = ''
           IP on which the server instance will listen for incoming voice connections. Defaults to any IP.
         '';
@@ -57,8 +58,9 @@ in
       };
 
       fileTransferIP = mkOption {
-        type = types.str;
-        default = "0.0.0.0";
+        type = types.nullOr types.str;
+        default = null;
+        example = "0.0.0.0";
         description = ''
           IP on which the server instance will listen for incoming file transfer connections. Defaults to any IP.
         '';
@@ -73,8 +75,9 @@ in
       };
 
       queryIP = mkOption {
-        type = types.str;
-        default = "0.0.0.0";
+        type = types.nullOr types.str;
+        default = null;
+        example = "0.0.0.0";
         description = ''
           IP on which the server instance will listen for incoming ServerQuery connections. Defaults to any IP.
         '';
@@ -122,9 +125,12 @@ in
         ExecStart = ''
           ${ts3}/bin/ts3server \
             dbsqlpath=${ts3}/lib/teamspeak/sql/ logpath=${cfg.logPath} \
-            voice_ip=${cfg.voiceIP} default_voice_port=${toString cfg.defaultVoicePort} \
-            filetransfer_ip=${cfg.fileTransferIP} filetransfer_port=${toString cfg.fileTransferPort} \
-            query_ip=${cfg.queryIP} query_port=${toString cfg.queryPort} license_accepted=1
+            ${optionalString (cfg.voiceIP != null) "voice_ip=${cfg.voiceIP}"} \
+            default_voice_port=${toString cfg.defaultVoicePort} \
+            ${optionalString (cfg.fileTransferIP != null) "filetransfer_ip=${cfg.fileTransferIP}"} \
+            filetransfer_port=${toString cfg.fileTransferPort} \
+            ${optionalString (cfg.queryIP != null) "query_ip=${cfg.queryIP}"} \
+            query_port=${toString cfg.queryPort} license_accepted=1
         '';
         WorkingDirectory = cfg.dataDir;
         User = user;