Synergy is a keyboard and mouse sharing app. Use the keyboard, mouse, or trackpad of one computer to control nearby computers, and work seamlessly between them.
This project contains the source code for Synergy 1 Community Edition which is actively maintained. Synergy 1 Community Edition is free and open source software, and anyone is welcome to build it, run it, tinker with it, redistribute it as part of their own app, etc.
Wayland support: Experimental support in Synergy v1.16 (required >= GNOME 46 or KDE Plasma 6.1).
To use the community edition, we encourage you to build it yourself using the Build Quick Start
instructions below or you can install the synergy
package with your favorite package manager
(please note that some package managers have older versions and need to be updated).
Version | Main goal | Date | Status |
---|---|---|---|
v1.16 | Experimental Wayland support (libei and libportal ) |
9th Sep 2024 | Beta released |
v1.17 | Cross-platform daemon to replace legacy daemon | 18th Oct 2024 | Planning |
Dates are likely to change. If you have any questions, please start a discussion.
Version 1.15 brings a new philosophy of being more approachable to the open source community instead of wholly focusing on commercial interests. We still have customers to finance the development of the code, but we are committed to maintaining and improving Synergy 1 Community Edition for years to come and we're excited to work with our community of open source users to improve the code for the benefit of everyone.
We support all major operating systems, including Windows, macOS, Linux, and Unix-like BSD-derived.
All Linux distributions are supported, primarily focusing on: Debian, Ubuntu, Linux Mint, Fedora, RHEL, AlmaLinux, Rocky Linux, Arch Linux, openSUSE, Gentoo.
We officially support FreeBSD, and would also like to support: OpenBSD, NetBSD, DragonFly, Solaris.
Here are a few ways to join in with the project and get involved:
- Compile the latest
master
version (see below) and report a bug - Submit a PR (pull request) with a bug fix or improvement
- Let us know if you have an idea for an improvement
- Join us on Discord or Slack (
#open source
channel) - Start a discussion on our GitHub project
- Read the wiki for guides and info
Synergy 1 Community Edition is free and open source software, and anyone is welcome to build it, run it, tinker with it, redistribute it as part of their own app, etc.
Tip
These instructions will build Synergy 1 Community Edition, which doesn't require a license or serial key. Check the Build Guide wiki page if you have problems.
1. Dependencies:
Linux, macOS, or BSD-derived:
./scripts/install_deps.sh
Windows:
python scripts/install_deps.py
2. Configure:
Linux, macOS, or BSD-derived:
cmake -B build
Windows:
cmake -B build --preset=windows-release
3. Build:
cmake --build build -j8
4. Test:
./build/bin/unittests
./build/bin/integtests
5. Run
./build/bin/synergy
Synergy 1 Community Edition is packaged by the community (status shown below).
Synergy 2 is no longer in development and we recommend that package maintainers do not provide it.
Synergy 3 and Synergy 1 (licensed) are available to download from the official packages.
Community edition:
macOS:
brew install synergy
Fedora, Red Hat, etc:
sudo dnf install synergy
Debian, Ubuntu, etc: (temporarily broken)
sudo apt install synergy
Arch, Manjaro, etc: (temporarily broken)
sudo pacman -S synergy
Windows: (very outdated)
choco install synergy
Note: Some packages are temporarily broken. We have reached out to the package maintainers to resolve this. If you're a package maintainer and have a question for us, please let us know.
Synergy is already available through most package managers as synergy
, and we would love to see
the latest version of Synergy 1 Community Edition on every package manager for every OS we support
(Windows, macOS, Linux, Unix-like BSD-derived, etc).
Package maintainers can use scripts/package.py
to see how we build packages,
but most package maintainers will create a packaging script rather than use our scripts
(which is fine by us).
If you're a package maintainer and have a question, please
get in touch.
Good packages:
Broken packages:
It appears that the synergy
package has been removed or discontinued from some package
repositories. There are many reasons why this may happen, but sometimes if a package maintainer
steps down or leaves the project without finding a replacement, the package might lose support,
leading to its removal.
This can also happen when there are difficulties updating the package to the latest version,
and communication has broken down between the package maintainer and the upstream developers.
If you're a package maintainer and would like to bring the synergy
package back to life, please
get in touch if you need our help.
- Lan Mouse - A Rust implementation with the goal of having native front-ends and interoperability with Synergy.
Our goal for Synergy 1 (including the community edition) has always been and will always be to make a simple, reliable, and feature-rich mouse and keyboard-sharing tool. We do maintain another product called Synergy 3, but as this uses Synergy 1 Core (the server and client part of Synergy), we depend on Synergy 1 to remain stable and modern which is why we continue to develop and improve the product.
We welcome PRs (pull requests) from the community. If you'd like to make a change, please feel free to start a discussion or open a PR. It's great that people spin up re-branded forks of Synergy, power to them. However, it's not necessary if you want to make changes. If you're thinking of starting your own re-branded fork of Synergy, it might be because we're doing something wrong so please let us know what we can do to let you feel welcome in our community.
Absolutely. The clipboard-sharing feature is a cornerstone feature of the product and we are committed to maintaining and improving that feature.
Yes! Wayland (the Linux display server protocol aimed to become the successor of the X Window
System) is an important platform for us.
The libei
and
libportal
libraries enable
Wayland support for Synergy. We would like to give special thanks to Peter Hutterer (@whot),
who is the author of libei
, a major contributor to libportal
, and the author of the Wayland
implementation in Synergy. Others such as Olivier Fourdan helped with the Wayland implementation,
and we rely on the work of our community of developers to continue the development of Wayland
support.
Synergy was first created in 2001 by Chris Schoeneman. Read about the history of the project on our wiki.
Repology monitors a huge number of package repositories and other sources comparing package versions across them and gathering other information.
This project is licensed under GPL-2.0 with an OpenSSL exception.