OpenFlowKey is a free and open source keyboard and mouse sharing app. Use the keyboard, mouse, or trackpad of one computer to control nearby computers, and work seamlessly between them. It's like a software KVM (but without the video). TLS encryption is enabled by default. Wayland is supported. Clipboard sharing is supported.
Tip
Chat with us
- Main discussion on Matrix:
#openflowkey:matrix.org(Matrix clients) - Discussion also happens on IRC:
#openflowkeyor#openflowkey-devon Libera Chat - Start a new discussion on our GitHub project.
Note
On Windows, you will need to install the
Microsoft Visual C++ Redistributable.
Download latest: vc_redist.x64.exe vc_redist.arm64.exe
Tip
For macOS users, the easiest way to install and stay up to date is to use Homebrew with our homebrew-tap.
macOS reports unsigned apps as damaged. This occurs because we do not use an Apple certificate for notarization. Clear the quarantine attribute to run the app: xattr -c OpenFlowKey.app
To use OpenFlowKey, download one of our packages, install openflowkey (from your package repository), or build it from source.
There are many ways to contribute to the OpenFlowKey project.
We're a friendly, active, and welcoming community focused on building a great app.
Read our Contributing page to get started.
For instructions on building OpenFlowKey, use the wiki page: Building
We support all major operating systems, including Windows, macOS, Linux, and Unix-like BSD-derived.
Windows 10 v1809 or higher is required.
macOS 13 or higher is required to use our CI builds for Apple Silicon machines. macOS 12 or higher is required for Intel macs or local builds.
Linux requires libei 1.3+ and libportal 0.8+ for the server/client. Additionally, Qt 6.7+ is required for the GUI. Linux users with systems not meeting these requirements should use flatpak in place of a native package.
We officially support FreeBSD, and would also like to support: OpenBSD, NetBSD, DragonFly, Solaris.
Repology monitors a huge number of package repositories and other sources comparing package versions across them and gathering other information.
When you install OpenFlowKey on macOS, you need to allow accessibility access (Privacy & Security) to both the OpenFlowKey app and the openflowkey process.
If using Sequoia, you may also need to allow OpenFlowKey under Local Network settings (Privacy & Security).
When prompted by the OS, go to the settings and enable the access.
If you are upgrading and you already have OpenFlowKey or openflowkey
on the allowed list you will need to manually remove them before accessibility access can be granted to the new version.
macOS users who download directly from releases may need to run xattr -c /Applications/OpenFlowKey.app after copying the app to the Applications dir.
It is recommended to install OpenFlowKey using Homebrew from our homebrew-tap
To add our tap, run:
brew tap openflowkey/tap
Then install either:
- Stable:
brew install openflowkey - Continuous:
brew install openflowkey-dev
In the open source developer community, similar projects collaborate for the improvement of all mouse and keyboard sharing tools. We aim for idea sharing and interoperability.
- Lan Mouse - Rust implementation with the goal of having native front-ends and interoperability with OpenFlowKey/Synergy.
- Synergy - Downstream commercial fork. Synergy sponsors OpenFlowKey with financial support and contributes code (learn more).
- Input Leap - Inactive OpenFlowKey/Synergy-derivative with the goal continuing Barrier development (now a dead fork).
Yes, OpenFlowKey has network compatibility with all forks:
- Requires OpenFlowKey >= v1.17.0.96
- OpenFlowKey will just work with Input Leap and Barrier (server or client).
- Connecting a OpenFlowKey client to a Synergy 1 server will also just work.
- To connect a Synergy 1 client, you need to select the Synergy protocol in the OpenFlowKey server settings.
Note: Only Synergy 1 is compatible with OpenFlowKey (Synergy 3 is not yet compatible).
We would love to see compatibility with Lan Mouse. This may be quite an effort as currently the way they handle the generated input is very different.
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.
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 OpenFlowKey. We would like to give special thanks to Peter Hutterer,
who is the author of libei, a major contributor to libportal, and the author of the Wayland
implementation in OpenFlowKey. Others such as Olivier Fourdan and Povilas Kanapickas helped with the
Wayland implementation.
Some features may be unavailable or broken on Wayland. Please see the known Wayland issues.
OpenFlowKey was first created as Synergy in 2001 by Chris Schoeneman. Read about the history of the project on our wiki.
Synergy sponsors the OpenFlowKey project by contributing code and providing financial support (learn more).
OpenFlowKey is made by possible by these contributors.
This project is licensed under GPL-2.0 with an OpenSSL exception.
