add linearmouse module

This commit is contained in:
Yan Lin 2026-02-04 12:12:47 +01:00
parent 48b0aa2ef6
commit ca4f1226b7
5 changed files with 50 additions and 18 deletions

View file

@ -42,6 +42,7 @@
"aerospace"
"hiddenbar"
"keycastr"
"linearmouse"
"localsend"
"maccy"
"snipaste"

View file

@ -0,0 +1,17 @@
{ config, pkgs, ... }:
{
home.file.".config/linearmouse/linearmouse.json".text = builtins.toJSON {
"$schema" = "https://app.linearmouse.org/schema/0.10.0";
schemes = [{
"if" = {
device.category = "mouse";
};
scrolling.reverse.vertical = true;
pointer = {
acceleration = 0;
speed = 0.6;
};
}];
};
}

View file

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