{ config, lib, pkgs, ... }: with lib; with lib.my; let cfg = config.ragon.services.ddns; domain = config.ragon.services.nginx.domain; dataDir = "/var/lib/inadyn"; cacheDir = "/var/cache/inadyn"; in { options.ragon.services.ddns.enable = mkEnableOption "Enables CloudFlare DDNS to the domain specified in ragon.services.nginx.domain and all subdomains"; options.ragon.services.ddns.ipv4 = mkBoolOpt true; options.ragon.services.ddns.ipv6 = mkBoolOpt true; config = mkIf cfg.enable { systemd.services.inadyn = { description = "inadyn DDNS Client"; after = [ "network.target" ]; wantedBy = [ "multi-user.target" ]; serviceConfig = rec { Type = "simple"; ExecStart = pkgs.writeScript "run-inadyn.sh" '' #!${pkgs.bash}/bin/bash export PATH=$PATH:${pkgs.bash}/bin/bash # idk if that helps source ${config.age.secrets.cloudflareAcme.path} cat >/run/${RuntimeDirectory}/inadyn.cfg <