{ lib, config, ... }: let cfg = config.services.ddclientovh; passwords = import ../../variables/passwords.crypt.nix; in { options.services.ddclientovh = with lib; { enable = mkEnableOption "Enable ddclient-ovh"; domain = mkOption {type = types.str;}; }; config = lib.mkIf cfg.enable { services.ddclient = { enable = true; protocol = "dyndns2"; server = "www.ovh.com"; ssl = true; domains = [cfg.domain]; use = "web"; inherit (passwords.dyndns.${cfg.domain}) username; passwordFile = builtins.toFile passwords.dyndns._filename passwords.dyndns.${cfg.domain}.password; }; }; }