2024-04-20 13:42:06 +00:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
lib,
|
|
|
|
...
|
|
|
|
}:
|
|
|
|
{
|
2022-04-29 02:12:16 +00:00
|
|
|
|
2024-03-24 18:55:17 +00:00
|
|
|
config = lib.mkIf config.physical {
|
2022-05-29 17:44:45 +00:00
|
|
|
|
2023-03-21 22:37:22 +00:00
|
|
|
services.xserver = {
|
2022-05-29 17:44:45 +00:00
|
|
|
|
2024-02-07 04:41:28 +00:00
|
|
|
xkb.layout = "us";
|
2022-04-29 02:12:16 +00:00
|
|
|
|
2023-03-21 22:37:22 +00:00
|
|
|
# Keyboard responsiveness
|
|
|
|
autoRepeatDelay = 250;
|
|
|
|
autoRepeatInterval = 40;
|
2023-06-06 03:50:01 +00:00
|
|
|
};
|
2023-03-21 22:37:22 +00:00
|
|
|
|
2023-06-06 03:50:01 +00:00
|
|
|
# Use capslock as escape and/or control
|
|
|
|
services.keyd = {
|
|
|
|
enable = true;
|
2023-07-25 03:16:48 +00:00
|
|
|
keyboards = {
|
|
|
|
default = {
|
|
|
|
ids = [ "*" ];
|
2024-04-20 13:42:06 +00:00
|
|
|
settings = {
|
|
|
|
main = {
|
|
|
|
capslock = "overload(control, esc)";
|
|
|
|
};
|
|
|
|
};
|
2023-07-25 03:16:48 +00:00
|
|
|
};
|
|
|
|
};
|
2023-03-21 22:37:22 +00:00
|
|
|
};
|
|
|
|
|
2023-09-30 14:20:45 +00:00
|
|
|
# For some reason, keyd doesn't restart properly when updating
|
2024-04-20 13:42:06 +00:00
|
|
|
system.activationScripts.keyd.text = "${pkgs.systemd}/bin/systemctl restart keyd.service";
|
2023-09-30 14:20:45 +00:00
|
|
|
|
2023-03-21 22:37:22 +00:00
|
|
|
# Enable num lock on login
|
|
|
|
home-manager.users.${config.user}.xsession.numlock.enable = true;
|
2022-04-29 02:12:16 +00:00
|
|
|
};
|
|
|
|
}
|