Add key remap for macos

This commit is contained in:
Yan Lin 2025-09-09 22:00:05 +02:00
parent ca5e386200
commit 3d5883898f
2 changed files with 23 additions and 0 deletions

View file

@ -3,6 +3,7 @@
{ {
imports = [ imports = [
../../modules/homebrew.nix ../../modules/homebrew.nix
../../modules/keyboard.nix
nix-homebrew.darwinModules.nix-homebrew nix-homebrew.darwinModules.nix-homebrew
]; ];

22
modules/keyboard.nix Normal file
View file

@ -0,0 +1,22 @@
{ config, pkgs, ... }:
{
# Key remapping using hidutil via launchd agent
# This swaps Control and Caps Lock keys bidirectionally
launchd.user.agents.remap-keys = {
serviceConfig = {
ProgramArguments = [
"/usr/bin/hidutil"
"property"
"--set"
''{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x7000000E0},{"HIDKeyboardModifierMappingSrc":0x7000000E0,"HIDKeyboardModifierMappingDst":0x700000039}]}''
];
RunAtLoad = true;
KeepAlive = false;
Label = "org.nixos.remap-keys";
StandardErrorPath = "/tmp/remap-keys.err";
StandardOutPath = "/tmp/remap-keys.out";
};
};
}