
It has been for quite some time, and it has seen a number of improvements in the last few years. I think Synergy is the best software available for anyone who would like to run multiple physical machines that have their own monitors and share a mouse and keyboard. The server configuration dialogs all work well, with an intuitive and well-thought-out layout. I work on a 4k monitor under Linux and the initial view is quite squashed (see above), but that is easily fixed by resizing. You can copy and paste between operating systems, and applications cannot tell that the mouse and keyboard are remote.įor me the graphical interface has some layout issues. The way it works is quite simple: The software sets the screen edges as special areas, and when you push to the edge of the screen your mouse will appear on the other monitor. I have also run configurations that included laptops. I have a Windows test machine to the right of my main screens, and a Mac machine to the left. I generally run the server on my Linux machine, and the one at work has two 4k monitors attached to it. The interface in the screenshot above (taken on a Linux system) is all new, and it enables you to graphically layout your screens using a friendly Qt-based interface.

Each machine gets its own monitor(s), and the client machines connect to the server (which has the keyboard and mouse physically attached) to receive events. I always used a simple layout, such as the one shown above, to share my keyboard and mouse. It was at this point, well over ten years ago now, that I discovered Synergy, an open source software replacement for a physical KVM switch.īack then it did not have any kind of graphical interface to configure your desktops, but it did have a simple text configuration file for the server where you expressed where each monitor was in relation to the others. Then I obtained a second monitor, which gave me multiple options for different window layouts.Įventually, I stopped using the KVM switch, and ended up with a mess of keyboards and mice strewn all over my desk.

I also used VNC and remote desktop software to see what things looked like on other operating systems. When I first started doing cross-platform development I used a KVM switch to share my mouse, keyboard, and monitor between several physical systems.


