Synergy is a mouse and keyboard sharing application. It uses the server-client model to allow virtual sharing of physical keyboard and mouse over the network. While it is not as reliable as a USB switch or KVM hardware. While it is not free a trial version can work indefinitely offering most features the paid version offers. It can work seamlessly across Windows, Linux and Mac which makes it an option to use with GPU Passthrough on Arch Linux.
Install Synergy with pacman.
sudo pacman -S synergy
Configure Synergy Server
Once installed start the server from the Desktop Environment or type synergy in the terminal. Click Configure Server… and configure the virtual screen layout and optionally Hotkeys
Start button to run the server. To have it start on boot use the Desktop Environment’s functionality as systemctl service files are not installed along with the package and custom systemctl scripts fail to start.
Settings page and tick the
Hide on startup option which will minimize the application on startup.
On the client the mouse can be oversensitive to the point of being unusable due to a bug in certain applications. Games like Portal, GTA 5, World of Warcraft, No Man’s Sky and others have insanely sensitive mouse movements when used with Synergy. A partial workaround to this bug is to turn on relative mouse movements.
In the Synergy server click
Configure Server... button and then
Advanced server settings. Tick the
Use relative mouse moves checkbox and click
OK to save the change.
Configure Synergy Client
Assuming the client is also running Arch Linux, repeat the installation as on the server. On windows the latest version needs to be downloaded from unofficial sources as the official website does not offer the trial version download.
In the Windows, Linux or Mac client tick the
Client (use another computer's mouse and keyboard): checkbox. Enter the IP address of the previously configured server in the
Server IP: text field and click
Apply to complete the configuration.
Depending on the server configuration the mouse sharing could be activated by a keyboard shortcut or by Simpy moving the mouse to a designated area of the screen. To fix the sensitive mouse issue in certain applications hit
Scroll Lock key on the keyboard to turn it on and the mouse should now have the same sensitivity as in any other application.
Mouse lag and even complete unresponsiveness from both mouse and keyboard can still crop up particularly during periods of high CPU load. When this occurs toggling Scroll Lock does seem to provide at least a temporary fix. Another limitation is that only basic inputs are passed to the client so a for example a additional buttons like forward, back or sound controls will not work at all. These and other issues makes network mouse sharing unreliable for real-time applications such as games. For general use however it is perfectly acceptable and very convenient way to share mouse and keyboard.