{ lib, config, ... }:
{
  options = {
    desktop = {
      fuzzel.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };
      hyprexit.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };
      hypridle.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };

      hyprland = {
        enable = lib.mkOption {
          default = false;
          type = lib.types.bool;
        };
        hardware = {
          Lenni.enable = lib.mkOption {
            default = false;
            type = lib.types.bool;
          };
          Puenktchen.enable = lib.mkOption {
            default = false;
            type = lib.types.bool;
          };
          Lillie.enable = lib.mkOption {
            default = false;
            type = lib.types.bool;
          };
        };
      };

      hyprlock.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };
      hyprpaper.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };
      mako.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };
      utils.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };
      wlogout.enable = lib.mkOption {
        default = config.desktop.enable;
        type = lib.types.bool;
      };
    };
  };
}