Skip to content

Deskflow lets you share one mouse and keyboard between multiple computers on Windows, macOS and Linux.

License

Notifications You must be signed in to change notification settings

deskflow/deskflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deskflow

Tip

Join us! Real-time discussion on Matrix: #deskflow:matrix.org

Alternatively, we have other ways to communicate.

Important

🚀 Deskflow is now the upstream project for Synergy.

The project has been renamed to draw a line between the community-run project (now Deskflow), and the commercially licensed product, Synergy.

We are currently in the process of renaming the project to Deskflow and moving all licensing code downstream.

Hold on to your butts, this is going to be a hell of a ride.

Join the discussion

Sponsored by: Synergy

GitHub Release GitHub commit activity GitHub top language GitHub License Quality Gate Status

CI CodeQL Analysis SonarCloud Analysis Build containers

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.

Wayland support: Experimental support in Deskflow v1.16 (required >= GNOME 46 or KDE Plasma 6.1).

Deskflow GUI

To use Deskflow you can follow the Build Quick Start, use one of our packages, or if it's available by your favorite package repository, install deskflow (see: installing packages).

Project values

  • Motivated by the community interests (not business-driven)
  • Privacy by default (no update check or phone home on by default)
  • Nothing customer-related (this is all moved downstream to Synergy)
  • Have fun; we don't need to worry about impressing anyone

Ways to get involved

Here are a few ways to join in with the project and get involved:

  • Build 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

Build Quick Start

Tip

Check the Build Guide wiki page if you have problems.

1. Dependencies:

You can either copy/paste the commands for your OS from config.yaml or use the deps script.

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/deskflow

How to install (packages)

macOS: (coming soon)

brew install deskflow

Fedora, Red Hat, etc: (coming soon)

sudo dnf install deskflow

Debian, Ubuntu, etc: (coming soon)

sudo apt install deskflow

Arch, Manjaro, etc: (coming soon)

sudo pacman -S deskflow

Windows: (coming soon)

choco install deskflow

Note: We are working with package maintainers to have our new package name adopted.

Operating Systems

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.

Collaborative Projects

In the open source developer community, similar projects collaborate for the betterment 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 Deskflow/Synergy.
  • Input Leap - Deskflow/Synergy-derivative with the goal of continuing what Barrier started, after Barrier became a dead fork.
  • Synergy - Downstream commercial fork and Deskflow sponsor, geared toward adapting upstream to customer needs, offering business and enterprise licensing.

FAQ

Is Deskflow compatible with Lan Mouse or Input Leap?

We would love to see compatibility between our fellow open source projects, Lan Mouse and Input Leap. This idea is discussed from time in the communities for all of our projects, so it may happen in the not-too-distant future.

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 or open a PR.

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 and 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.

Where did it all start?

Deskflow was first created as Synergy in 2001 by Chris Schoeneman. Read about the history of the project on our wiki.

Repology

Repology monitors a huge number of package repositories and other sources comparing package versions across them and gathering other information.

Repology

License

This project is licensed under GPL-2.0 with an OpenSSL exception.