config: [ (_final: prev: { lib = prev.lib // { mkIngressHost = { name, gated }: let inherit (prev.lib) types; in prev.lib.mkOption { type = types.nullOr types.str; default = if config.homelab.domain != null then if gated then "${name}.i.${config.homelab.domain}" else "${name}.${config.homelab.domain}" else null; description = "Hostname base for ${name} ingress (defaults to ${name}.i. if gated, ${name}. otherwise)"; }; }; }) ]