summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorJörg Thalheim <Mic92@users.noreply.github.com>2017-02-07 17:17:17 +0100
committerGitHub <noreply@github.com>2017-02-07 17:17:17 +0100
commit3aff6c07ab2909ba5006d3258d99cb105a45a17b (patch)
tree3a643d9bea38acd38ed92fd3b27df861d0fc29d7 /nixos
parent8dd90abc1763a50bcb2372468e1bb6f074433077 (diff)
parentaf4e6f155e29df6a8b4c938f0e79eb7be706f447 (diff)
downloadnixlib-3aff6c07ab2909ba5006d3258d99cb105a45a17b.tar
nixlib-3aff6c07ab2909ba5006d3258d99cb105a45a17b.tar.gz
nixlib-3aff6c07ab2909ba5006d3258d99cb105a45a17b.tar.bz2
nixlib-3aff6c07ab2909ba5006d3258d99cb105a45a17b.tar.lz
nixlib-3aff6c07ab2909ba5006d3258d99cb105a45a17b.tar.xz
nixlib-3aff6c07ab2909ba5006d3258d99cb105a45a17b.tar.zst
nixlib-3aff6c07ab2909ba5006d3258d99cb105a45a17b.zip
Merge pull request #22518 from wizeman/u/fix-chrony-conf
nixos.chrony: pass config file directly to daemon
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/networking/chrony.nix39
1 files changed, 19 insertions, 20 deletions
diff --git a/nixos/modules/services/networking/chrony.nix b/nixos/modules/services/networking/chrony.nix
index f2ff11633b1b..ff62acff6eb8 100644
--- a/nixos/modules/services/networking/chrony.nix
+++ b/nixos/modules/services/networking/chrony.nix
@@ -12,6 +12,24 @@ let
 
   cfg = config.services.chrony;
 
+  configFile = pkgs.writeText "chrony.conf" ''
+    ${concatMapStringsSep "\n" (server: "server " + server) cfg.servers}
+
+    ${optionalString
+      cfg.initstepslew.enabled
+      "initstepslew ${toString cfg.initstepslew.threshold} ${concatStringsSep " " cfg.initstepslew.servers}"
+    }
+
+    driftfile ${stateDir}/chrony.drift
+
+    keyfile ${keyFile}
+    generatecommandkey
+
+    ${optionalString (!config.time.hardwareClockInLocalTime) "rtconutc"}
+
+    ${cfg.extraConfig}
+  '';
+
 in
 
 {
@@ -70,25 +88,6 @@ in
     # Make chronyc available in the system path
     environment.systemPackages = [ pkgs.chrony ];
 
-    environment.etc."chrony.conf".text =
-      ''
-        ${concatMapStringsSep "\n" (server: "server " + server) cfg.servers}
-
-        ${optionalString
-          cfg.initstepslew.enabled
-          "initstepslew ${toString cfg.initstepslew.threshold} ${concatStringsSep " " cfg.initstepslew.servers}"
-        }
-
-        driftfile ${stateDir}/chrony.drift
-
-        keyfile ${keyFile}
-        generatecommandkey
-
-        ${optionalString (!config.time.hardwareClockInLocalTime) "rtconutc"}
-
-        ${cfg.extraConfig}
-      '';
-
     users.extraGroups = singleton
       { name = "chrony";
         gid = config.ids.gids.chrony;
@@ -124,7 +123,7 @@ in
           '';
 
         serviceConfig =
-          { ExecStart = "${pkgs.chrony}/bin/chronyd -n -m -u chrony";
+          { ExecStart = "${pkgs.chrony}/bin/chronyd -n -m -u chrony -f ${configFile}";
           };
       };