[GH-ISSUE #320] Karabiner is bypassed by lan-mouse #169

Open
opened 2026-05-05 22:12:27 -06:00 by gitea-mirror · 4 comments
Owner

Originally created by @TimMensch on GitHub (Sep 2, 2025).
Original GitHub issue: https://github.com/feschber/lan-mouse/issues/320

I'm a longtime Windows user, but I need to be able to use a Mac for work. I've reconfigured my Mac with Karabiner to have what my fingers consider a "sane" set of keyboard features.

Switching to lan-mouse, Karabiner is completely bypassed and I again can't use the Mac with any dexterity. It completely kills the usability of lan-mouse for me.

Karabiner needs to see a keyboard device that it can grab they keys from and translate them based on all of its installed rules. The fix for this would be to create a virtual keyboard (like Karabiner does itself) and route keys through that virtual keyboard instead of however lan-mouse currently triggers them.

Karabiner is a very core tool on Mac, and I'm surprised that no software-KVM actually supports it. I was hoping that lan-mouse would succeed where all of the Synergy-family products failed, but no, it has the same failure.

Any chance someone can fix this? I can't really justify spending the time to add this feature myself.

Originally created by @TimMensch on GitHub (Sep 2, 2025). Original GitHub issue: https://github.com/feschber/lan-mouse/issues/320 I'm a longtime Windows user, but I need to be able to use a Mac for work. I've reconfigured my Mac with Karabiner to have what my fingers consider a "sane" set of keyboard features. Switching to `lan-mouse`, Karabiner is completely bypassed and I again can't use the Mac with any dexterity. It completely kills the usability of `lan-mouse` for me. Karabiner needs to see a keyboard device that it can grab they keys from and translate them based on all of its installed rules. The fix for this would be to create a virtual keyboard (like Karabiner does itself) and route keys through that virtual keyboard instead of however `lan-mouse` currently triggers them. Karabiner is a very core tool on Mac, and I'm surprised that no software-KVM actually supports it. I was hoping that `lan-mouse` would succeed where all of the Synergy-family products failed, but no, it has the same failure. Any chance someone can fix this? I can't really justify spending the time to add this feature myself.
Author
Owner

@johnhamelink commented on GitHub (Sep 3, 2025):

There are a few apps that have this problem - Xcode is another one, where some of the dropdowns don't interact with lan-mouse at all, such as in this example:

Image
<!-- gh-comment-id:3248706401 --> @johnhamelink commented on GitHub (Sep 3, 2025): There are a few apps that have this problem - Xcode is another one, where some of the dropdowns don't interact with lan-mouse at all, such as in this example: <img width="870" height="363" alt="Image" src="https://github.com/user-attachments/assets/09442cc6-03eb-41e7-8a05-ea30a3343b0c" />
Author
Owner

@feschber commented on GitHub (Sep 3, 2025):

The input emulation on MacOS is pretty bare bones atm. It might be worth looking into https://developer.apple.com/documentation/hiddriverkit to emulate a physical device. Otherwise I see no chance to get this to work with other input modifying software, as those probably operate on the same level.

And heads up: Never download any files from comments in github issues, there are a lot of malicious bots out there spreading malware.

<!-- gh-comment-id:3249492344 --> @feschber commented on GitHub (Sep 3, 2025): The input emulation on MacOS is pretty bare bones atm. It might be worth looking into https://developer.apple.com/documentation/hiddriverkit to emulate a physical device. Otherwise I see no chance to get this to work with other input modifying software, as those probably operate on the same level. And heads up: Never download any files from comments in github issues, there are a lot of malicious bots out there spreading malware.
Author
Owner

@TimMensch commented on GitHub (Sep 4, 2025):

Additional research comes across this:

https://github.com/pqrs-org/Karabiner-DriverKit-VirtualHIDDevice

It's what Karabiner itself uses, but I'm betting it's trivial to change some IDs and deploy it a second time to be the keyboard/mouse for lan-mouse.

<!-- gh-comment-id:3251193234 --> @TimMensch commented on GitHub (Sep 4, 2025): Additional research comes across this: https://github.com/pqrs-org/Karabiner-DriverKit-VirtualHIDDevice It's what Karabiner itself uses, but I'm betting it's trivial to change some IDs and deploy it a second time to be the keyboard/mouse for lan-mouse.
Author
Owner

@emsi commented on GitHub (Jan 9, 2026):

Karabiner-DriverKit-VirtualHIDDevice

Using Karabiner-DriverKit-VirtualHIDDevice is probably the best approach since people using remote keyboard/mouse most often than not are using karabiner to tailor macos to their muscle memory.

There are some considerations though as pqrs’ VirtualHID stack is designed so only root can send events to the virtual devices (to prevent arbitrary apps from injecting keystrokes). (https://github.com/pqrs-org/Karabiner-DriverKit-VirtualHIDDevice)

<!-- gh-comment-id:3730086565 --> @emsi commented on GitHub (Jan 9, 2026): > Karabiner-DriverKit-VirtualHIDDevice Using [Karabiner-DriverKit-VirtualHIDDevice](https://github.com/pqrs-org/Karabiner-DriverKit-VirtualHIDDevice) is probably the best approach since people using remote keyboard/mouse most often than not are using karabiner to tailor macos to their muscle memory. There are some considerations though as pqrs’ VirtualHID stack is designed so only root can send events to the virtual devices (to prevent arbitrary apps from injecting keystrokes). (https://github.com/pqrs-org/Karabiner-DriverKit-VirtualHIDDevice)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/lan-mouse#169
No description provided.