190 lines
11 KiB
Markdown
190 lines
11 KiB
Markdown
<picture>
|
||
<source media="(prefers-color-scheme: dark)" srcset="https://github.com/deskflow/deskflow-artwork/blob/main/logo/deskflow-logo-dark-200px.png?raw=true">
|
||
<source media="(prefers-color-scheme: light)" srcset="https://github.com/deskflow/deskflow-artwork/blob/main/logo/deskflow-logo-light-200px.png?raw=true">
|
||
<img alt="Deskflow" src="https://github.com/user-attachments/assets/f005b958-24df-4f4a-9bfd-4f834dae59d6">
|
||
</picture>
|
||
|
||
**Deskflow** 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: [`#deskflow:matrix.org`](https://matrix.to/#/#deskflow:matrix.org) ([Matrix clients](https://matrix.org/ecosystem/clients/))
|
||
> - Discussion also happens on IRC: `#deskflow` or `#deskflow-dev` on [Libera Chat](https://libera.chat/)
|
||
> - Start a [new discussion](https://github.com/deskflow/deskflow/discussions) on our GitHub project.
|
||
|
||
## Download
|
||
|
||
[](https://github.com/deskflow/deskflow/releases/latest) [](https://github.com/deskflow/deskflow/releases/continuous) [](https://flathub.org/apps/org.deskflow.deskflow)
|
||
|
||
> [!NOTE]
|
||
> On Windows, you will need to install the
|
||
> [Microsoft Visual C++ Redistributable](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170#latest-microsoft-visual-c-redistributable-version).
|
||
> Download latest: [`vc_redist.x64.exe`](https://aka.ms/vs/17/release/vc_redist.x64.exe) [`vc_redist.arm64.exe`](https://aka.ms/vs/17/release/vc_redist.arm64.exe)
|
||
|
||
> [!TIP]
|
||
> For macOS users, the easiest way to install and stay up to date is to use [Homebrew](https://brew.sh) with our [homebrew-tap](https://github.com/deskflow/homebrew-tap).
|
||
|
||
To use Deskflow, download one of our [packages](https://github.com/deskflow/deskflow/releases), install `deskflow` (from your package repository), or [build it](https://github.com/deskflow/deskflow/wiki/Building) from source.
|
||
|
||
## Stats
|
||
|
||
[](https://github.com/deskflow/deskflow/commits/master/)
|
||
[](https://github.com/deskflow/deskflow/commits/master/)
|
||
[](LICENSE)
|
||
[](https://api.reuse.software/info/github.com/deskflow/deskflow)
|
||
|
||
[](https://sonarcloud.io/summary/new_code?id=deskflow_deskflow)
|
||
[](https://sonarcloud.io/summary/new_code?id=deskflow_deskflow)
|
||
[](https://sonarcloud.io/summary/new_code?id=deskflow_deskflow)
|
||
[](https://sonarcloud.io/summary/new_code?id=deskflow_deskflow)
|
||
|
||
[](https://github.com/deskflow/deskflow/actions/workflows/continuous-integration.yml)
|
||
[](https://github.com/deskflow/deskflow/actions/workflows/codeql-analysis.yml)
|
||
[](https://github.com/deskflow/deskflow/actions/workflows/sonarcloud-analysis.yml)
|
||
|
||
## Contribute
|
||
|
||
[](https://github.com/deskflow/deskflow/labels/good%20first%20issue) [](https://github.com/deskflow/deskflow/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22%F0%9F%92%8E%20bounty%22) [](https://github.com/deskflow/deskflow/issues?q=label%3A%22%F0%9F%92%B0%20rewarded%22%20sort%3Aupdated-desc)
|
||
|
||
There are many ways to contribute to the Deskflow project.
|
||
|
||
We're a friendly, active, and welcoming community focused on building a great app.
|
||
|
||
Read our [Contributing](https://github.com/deskflow/deskflow/wiki/Contributing) page to get started.
|
||
|
||
For instructions on building Deskflow, use the wiki page: [Building](https://github.com/deskflow/deskflow/wiki/Building)
|
||
|
||
## Operating Systems
|
||
|
||
We support all major operating systems, including Windows, macOS, Linux, and Unix-like BSD-derived.
|
||
|
||
Windows 10 or higher is required.
|
||
|
||
macOS 12 or higher is required.
|
||
|
||
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
|
||
|
||
Repology monitors a huge number of package repositories and other sources comparing package
|
||
versions across them and gathering other information.
|
||
|
||
[](https://repology.org/project/deskflow/versions)
|
||
|
||
**Note:** We are working with package maintainers to have our new package name adopted.
|
||
|
||
## Installing on macOS
|
||
|
||
When you install Deskflow on macOS, you need to allow accessibility access (Privacy & Security) to both the `Deskflow` app and the `deskflow` process.
|
||
|
||
If using Sequoia, you may also need to allow `Deskflow` 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 `Deskflow` or `deskflow`
|
||
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/Deskflow.app` after copying the app to the `Applications` dir.
|
||
|
||
It is recommend to install Deskflow using [Homebrew](https://brew.sh) from our [homebrew-tap](https://github.com/deskflow/homebrew-tap)
|
||
|
||
To add our tap, run:
|
||
|
||
```
|
||
brew tap deskflow/homebrew-tap
|
||
```
|
||
|
||
Then install either:
|
||
|
||
- Stable: `brew install deskflow`
|
||
- Continuous: `brew install deskflow-dev`
|
||
|
||
## Similar Projects
|
||
|
||
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**](https://github.com/feschber/lan-mouse) -
|
||
Rust implementation with the goal of having native front-ends and interoperability with
|
||
Deskflow/Synergy.
|
||
- [**Input Leap**](https://github.com/input-leap/input-leap) -
|
||
Deskflow/Synergy-derivative with the goal of continuing what Barrier started, after Barrier
|
||
became a dead fork.
|
||
- [**Synergy**](https://symless.com/synergy) -
|
||
Downstream commercial fork. Synergy sponsors Deskflow with financial support and contributes code ([learn more](https://github.com/deskflow/deskflow/wiki/Relationship-with-Synergy)).
|
||
|
||
## FAQ
|
||
|
||
### Is Deskflow compatible with Synergy, Input Leap, or Barrier?
|
||
|
||
Yes, Deskflow has network compatibility with all forks:
|
||
|
||
- Requires Deskflow >= v1.17.0.96
|
||
- Deskflow will _just work_ with Input Leap and Barrier (server or client).
|
||
- Connecting a Deskflow 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 Deskflow server settings.
|
||
|
||
_Note:_ Only Synergy 1 is compatible with Deskflow (Synergy 3 is not yet compatible).
|
||
|
||
### Is Deskflow compatible with Lan Mouse?
|
||
|
||
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.
|
||
|
||
### If I want to solve issues in Deskflow do I need to contribute to a fork?
|
||
|
||
We welcome PRs (pull requests) from the community. If you'd like to make a change, please feel
|
||
free to [start a discussion](https://github.com/deskflow/deskflow/discussions) or
|
||
[open a PR](https://github.com/deskflow/deskflow/wiki/Contributing).
|
||
|
||
### Is clipboard sharing supported?
|
||
|
||
Absolutely. The clipboard-sharing feature is a cornerstone feature of the product and we are
|
||
committed to maintaining and improving that feature.
|
||
|
||
### Is Wayland for Linux supported?
|
||
|
||
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`](https://gitlab.freedesktop.org/libinput/libei) and
|
||
[`libportal`](https://github.com/flatpak/libportal) libraries enable
|
||
Wayland support for Deskflow. 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 Deskflow. 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](https://github.com/deskflow/deskflow/discussions/7499).
|
||
|
||
### Where did it all start?
|
||
|
||
Deskflow was first created as Synergy in 2001 by Chris Schoeneman.
|
||
Read about the [history of the project](https://github.com/deskflow/deskflow/wiki/History) on our
|
||
wiki.
|
||
|
||
## Meow'Dib (our mascot)
|
||
|
||

|
||
|
||
## Deskflow Contributors
|
||
|
||
[](https://symless.com/synergy)
|
||
|
||
[Synergy](https://symless.com/synergy) sponsors the Deskflow project by contributing code and providing financial support ([learn more](https://github.com/deskflow/deskflow/wiki/Relationship-with-Synergy)).
|
||
|
||
Deskflow is made by possible by these contributors.
|
||
|
||
<a href = "https://github.com/deskflow/deskflow/graphs/contributors">
|
||
<img src = "https://contrib.rocks/image?repo=deskflow/deskflow"/>
|
||
</a>
|
||
|
||
## License
|
||
|
||
This project is licensed under [GPL-2.0](LICENSE) with an [OpenSSL exception](LICENSES/LicenseRef-OpenSSL-Exception.txt).
|