diff --git a/modules/services/cloudflare-dyndns.nix b/modules/services/cloudflare-dyndns.nix index e360a3b..ecc9b5c 100644 --- a/modules/services/cloudflare-dyndns.nix +++ b/modules/services/cloudflare-dyndns.nix @@ -1,8 +1,28 @@ { lib, config, + pkgs, ... -}: { +}: +let + # https://github.com/NixOS/nixpkgs/pull/394352 + cloudflare-dyndns-5-3 = pkgs.cloudflare-dyndns.overrideAttrs rec { + version = "5.3"; + src = pkgs.fetchFromGitHub { + owner = "kissgyorgy"; + repo = "cloudflare-dyndns"; + rev = "v${version}"; + hash = "sha256-t0MqH9lDfl+cAnPYSG7P32OGO8Qpo1ep0Hj3Xl76lhU="; + }; + dependencies = with pkgs.python3Packages; [ + click + httpx + pydantic + truststore + ]; + }; +in +{ options = { myModules.enableCloudflareDyndns = lib.mkOption { type = lib.types.bool; @@ -14,6 +34,7 @@ config = lib.mkMerge [ (lib.mkIf config.myModules.enableCloudflareDyndns { services.cloudflare-dyndns = { + package = cloudflare-dyndns-5-3; enable = true; apiTokenFile = "/persist/cloudflare-dyndns"; proxied = true;