summaryrefslogtreecommitdiff
path: root/hosts/ahmed/cloudflare-ddns/default.nix
blob: 77c799c7da04fc55a58920c31f5bede8fc7a428e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# This module sets up cloudflare-dyndns for <linus.onl>.

{ lib, ... }:

let

in
{
  my.secrets.cloudflare-ddns = {
    source = ./secrets.env;
    dest = "/run/keys/cloudflare-ddns.env";
  };

  services.cloudflare-dyndns = {
    enable = true;
    apiTokenFile =  "/run/keys/cloudflare-ddns.env";
    proxied = true;
    domains = [ "linus.onl" ];
  };

  # Override the systemd service generated by `services.cloudflare-dyndns` to wait for key to be decrypted.
  systemd.services.cloudflare-dyndns.after = [ "cloudflare-ddns-key.service" ];
}