Synergy is open source, cross platform software used to manage multiple X11 clients with a single keyboard and mouse. It can be thought of as a KVM - but only supporting keyboard and mouse. Although the website says prompts support though purchasing "Basic" and "Pro" versions, the same functionality can be replicated through a little elbow grease.
As of April 5, 2020, Synergy does not support compositors running on the Wayland protocol.
There are currently two versions of Synergy being maintained: 1.x and 2.x. The 2.x branch appears to be still in beta.
USE flags for x11-misc/synergy Lets you easily share a single mouse and keyboard between multiple computers
||Enable support for a graphical user interface|
||Use dev-libs/libressl instead of dev-libs/openssl when applicable (see also the ssl useflag)|
||Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)|
||Support for DNS Service Discovery (DNS-SD)|
emerge --ask x11-misc/synergy
- /etc/synergy.conf - Global (system wide) configuration file.
- ~/.synergy - Local (per user) configuration directory.
The Synergy wiki upstream provides details for enabling encryption between the client/server connection(s).
In short, copy the bundled encryption plugin to the Synergy user's home directory:
mkdir -p ~/.synergy/plugins
cp /usr/lib64/synergy/plugins/libns.so ~/.synergy/plugins
Next, generate the certificate:
There are a few executable files that are merged after the compilation:
emerge --ask --depclean --verbose x11-misc/synergy
- TigerVNC — a client/server software package allowing remote network access to graphical desktops.
- https://github.com/symless/synergy-core/wiki - Upstream's project wiki.
- https://brahma-dev.github.io/synergy-stable-builds/ - A third party site that hosts compiled binaries for Windows and OSX.