Synergy. It's a keyboard and mouse sharing client/server application that runs on every platform I use. I don't know if better alternatives exist because it has just been rock-solid for the last 12 years that I've been using it. I've used it in multi-monitor and machine desktop setups (e.g. an Apple laptop paired with a Windows desktop and linux desktop for enterprisey cubicle development), as well as to let me drive…
I just purchased this recently (having used it ages ago) to drive a second computer on my desk. My problem is that once the guest machine goes to sleep, I can't seem to wake it via Synergy. Is this expected behavior? I have WoL enabled, so theoretically I should be able to just move my mouse over to the sleeping monitor to wake it up.
You'd need to patch the synergy server to send a WoL magic packet[1] to wake up the client whenever it sends a message that might hit a client that's asleep. (some systems might support something other than the standard magic packet, but I don't know of anything else that works consistently cross platform.) Might also need to look at making sure the client connection comes back up clean and have some delay to make sure it's ready to receive whatever message started the process, and doesn't timeout while waking up.