about summary refs log tree commit diff
path: root/nixos/modules/services/networking/openntpd.nix
diff options
context:
space:
mode:
authorLongrin Wischnewski <robberer@freakmail.de>2015-01-23 16:15:20 +0100
committerLongrin Wischnewski <robberer@freakmail.de>2015-01-23 16:15:20 +0100
commit4fa5d1f626bcac4841c4862ace736d41d5e6cc53 (patch)
tree8a01252452b39df9d55a6a7f50839ddbf649d1d0 /nixos/modules/services/networking/openntpd.nix
parente92c942d1ddb72ed84f3921e1bb282992c057a96 (diff)
openntpd: add extraConfig and extraOptions
Diffstat (limited to 'nixos/modules/services/networking/openntpd.nix')
-rw-r--r--nixos/modules/services/networking/openntpd.nix24
1 files changed, 23 insertions, 1 deletions
diff --git a/nixos/modules/services/networking/openntpd.nix b/nixos/modules/services/networking/openntpd.nix
index 2f9031481d1d6..d1c32db49c4cd 100644
--- a/nixos/modules/services/networking/openntpd.nix
+++ b/nixos/modules/services/networking/openntpd.nix
@@ -12,6 +12,7 @@ let
 
   cfgFile = pkgs.writeText "openntpd.conf" ''
     ${concatStringsSep "\n" (map (s: "server ${s}") cfg.servers)}
+    ${cfg.extraConfig}
   '';
 in
 {
@@ -25,6 +26,27 @@ in
       type = types.listOf types.str;
       inherit (options.services.ntp.servers) description;
     };
+
+    extraConfig = mkOption {
+      type = with types; lines;
+      default = "";
+      example = ''
+        listen on 127.0.0.1 
+        listen on ::1 
+      '';
+      description = ''
+        Additional text appended to <filename>openntpd.conf</filename>.
+      '';
+    };
+
+    extraOptions = mkOption {
+      type = with types; string;
+      default = "";
+      example = "-s";
+      description = ''
+        Extra options used when launching openntpd.
+      '';
+    };
   };
 
   ###### implementation
@@ -42,7 +64,7 @@ in
     systemd.services.openntpd = {
       description = "OpenNTP Server";
       wantedBy = [ "multi-user.target" ];
-      serviceConfig.ExecStart = "${package}/sbin/ntpd -d -f ${cfgFile}";
+      serviceConfig.ExecStart = "${package}/sbin/ntpd -d -f ${cfgFile} ${cfg.extraOptions}";
     };
   };
 }