{ config, lib, ... }:

let
  cfg = config.local.keyboard;
in
{
  options.local.keyboard = with lib; {
    enable = mkEnableOption "base keyboard configs";
    variant = mkOption {
      description = "keyboard layout variant in us,ru order";
      type = types.str;
      default = ",";
    };
  };

  config = lib.mkIf cfg.enable {
    home.keyboard = {
      model = "pc105";
      layout = "us,ru";
      variant = cfg.variant;
      options = [ "grp:win_space_toggle" ];
    };
  };
}