I am trying to achieve something similar to this: https://superuser.com/questions/67659/linux-share-keyboard-over-network

The difference is that I need the remote keyboard to be usable separate from my local keyboard. The method described in the link seems to pipe the events into an existing device file. I need the remote keyboard to show as a physical (slave) device when I run xinput list

Why do I need this? I am trying to play a two player game but I don't have an external USB keyboard, so I want to pipe the keypresses from the remote computer to a fake device (so I can assign one device per player).

  • If synergy is injecting keystrokes using xtest, I see that xtest shows up as a device under xinput...
    – derobert
    Commented Aug 27, 2012 at 15:43
  • Actually, uinput (e.g., thiemonge.org/getting-started-with-uinput) seems like it may be want you're looking for, to use the solution from the other post
    – derobert
    Commented Aug 27, 2012 at 15:51
  • @derobert: yeah, but I don't know enough C (read: none) to write a utility for it. However, I found this obscure project on github: link which seems to do exactly what I'm looking for (it also uses uinput) Commented Aug 28, 2012 at 10:42
  • If it indeed works for you, please feel free to write your own answer—that is, to answer your own question.
    – derobert
    Commented Aug 28, 2012 at 15:29

2 Answers 2


I found a project called netevent on GitHub which does exactly what I need. It makes local devices available to a remote computer.

I was able to forward the mouse, but not the keyboard due to compatibility issues. Technically, this answers my question of how to share the keyboard over the network and have it appear as a separate device.


You could use usbip, to share a usb keyboard over the network.

  • I mentioned I don't have a USB keyboard. Commented Aug 26, 2012 at 23:31

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .