{lib, ...}:
with lib; {
  options.my.server = {
    name = mkOption {
      type = types.str;
      default = "Server";
      example = "Venus";
      description = "User-facing name of the server.";
    };
    domain = mkOption {
      type = types.str;
      example = "example.com";
      description = "Full domain name of the server.";
    };
    proxyIP = mkOption {
      type = types.str;
      default = "127.0.0.1";
      example = "127.0.0.1";
      description = "IP address of server hosting services behind reverse proxy.";
    };
    firewallInterface = mkOption {
      type = types.str;
      default = "eth0";
      example = "wg0";
      description = "Network interface to expose services on.";
    };
  };
}