{ lib, ... }:

{
  options.nomarchy.system = {
    dns = lib.mkOption {
      type = lib.types.enum [ "Cloudflare" "Google" "DHCP" "Custom" ];
      default = "DHCP";
      description = "Selected DNS provider.";
    };
    customDns = lib.mkOption {
      type = lib.types.listOf lib.types.str;
      default = [];
      description = "List of custom DNS servers.";
    };
    wifi = {
      powersave = lib.mkOption {
        type = lib.types.bool;
        default = true;
        description = "Whether to enable wifi power saving.";
      };
    };
    timezone = lib.mkOption {
      type = lib.types.str;
      default = "UTC";
      description = "System timezone.";
    };
    features = {
      fingerprint = lib.mkOption {
        type = lib.types.bool;
        default = false;
        description = "Whether to enable fingerprint support.";
      };
      fido2 = lib.mkOption {
        type = lib.types.bool;
        default = false;
        description = "Whether to enable FIDO2 support.";
      };
      hybridGPU = lib.mkOption {
        type = lib.types.bool;
        default = false;
        description = "Whether to enable hybrid GPU support (supergfxd).";
      };
      makima = lib.mkOption {
        type = lib.types.bool;
        default = false;
        description = "Whether to enable makima key remapper.";
      };
    };
    theme = lib.mkOption {
      type = lib.types.str;
      default = "summer-night";
      description = "Selected system theme.";
    };
  };
}
