diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2016-07-09 16:49:48 +0200 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2016-07-09 16:49:48 +0200 |
commit | 95a9fa0ba0d211e575e5055c52c6024f61650ae3 (patch) | |
tree | 22764064943ba8fa827992d819ec585e13265629 /nixos/modules | |
parent | b7c134358d738db7f8ff862219ad48d53ce4b62a (diff) | |
parent | 3b2627586d4ce20e2a8e7b47dbcce5d72e45673a (diff) | |
download | nixlib-95a9fa0ba0d211e575e5055c52c6024f61650ae3.tar nixlib-95a9fa0ba0d211e575e5055c52c6024f61650ae3.tar.gz nixlib-95a9fa0ba0d211e575e5055c52c6024f61650ae3.tar.bz2 nixlib-95a9fa0ba0d211e575e5055c52c6024f61650ae3.tar.lz nixlib-95a9fa0ba0d211e575e5055c52c6024f61650ae3.tar.xz nixlib-95a9fa0ba0d211e575e5055c52c6024f61650ae3.tar.zst nixlib-95a9fa0ba0d211e575e5055c52c6024f61650ae3.zip |
Merge branch 'master' into staging
Diffstat (limited to 'nixos/modules')
-rw-r--r-- | nixos/modules/services/networking/ddclient.nix | 36 |
1 files changed, 21 insertions, 15 deletions
diff --git a/nixos/modules/services/networking/ddclient.nix b/nixos/modules/services/networking/ddclient.nix index c5dd1e71c189..633ceaebfa4e 100644 --- a/nixos/modules/services/networking/ddclient.nix +++ b/nixos/modules/services/networking/ddclient.nix @@ -7,22 +7,8 @@ let stateDir = "/var/spool/ddclient"; ddclientUser = "ddclient"; - ddclientFlags = "-foreground -verbose -noquiet -file ${ddclientCfg}"; + ddclientFlags = "-foreground -verbose -noquiet -file /etc/ddclient.conf"; ddclientPIDFile = "${stateDir}/ddclient.pid"; - ddclientCfg = pkgs.writeText "ddclient.conf" '' - daemon=600 - cache=${stateDir}/ddclient.cache - pid=${ddclientPIDFile} - use=${config.services.ddclient.use} - login=${config.services.ddclient.username} - password=${config.services.ddclient.password} - protocol=${config.services.ddclient.protocol} - server=${config.services.ddclient.server} - ssl=${if config.services.ddclient.ssl then "yes" else "no"} - wildcard=YES - ${config.services.ddclient.domain} - ${config.services.ddclient.extraConfig} - ''; in @@ -122,10 +108,30 @@ in home = stateDir; }; + environment.etc."ddclient.conf" = { + uid = config.ids.uids.ddclient; + mode = "0600"; + text = '' + daemon=600 + cache=${stateDir}/ddclient.cache + pid=${ddclientPIDFile} + use=${config.services.ddclient.use} + login=${config.services.ddclient.username} + password=${config.services.ddclient.password} + protocol=${config.services.ddclient.protocol} + server=${config.services.ddclient.server} + ssl=${if config.services.ddclient.ssl then "yes" else "no"} + wildcard=YES + ${config.services.ddclient.domain} + ${config.services.ddclient.extraConfig} + ''; + }; + systemd.services.ddclient = { description = "Dynamic DNS Client"; wantedBy = [ "multi-user.target" ]; after = [ "network.target" ]; + restartTriggers = [ config.environment.etc."ddclient.conf".source ]; serviceConfig = { # Uncomment this if too many problems occur: |