{ config, lib, ... }: with lib; let cfg = config.nixfiles.modules.acme; in { imports = [ (mkAliasOptionModule ["certs"] ["security" "acme" "certs"]) ]; options.nixfiles.modules.acme = { enable = mkEnableOption "ACME"; email = mkOption { description = "Email for notifications."; type = with types; str; default = "admin+acme@${my.domain.shire}"; }; }; config = mkIf cfg.enable { security.acme = { acceptTerms = true; defaults = { inherit (cfg) email; validMinDays = 60; }; }; }; }