HaveClip is a peer-to-peer clipboard synchronization tool. Ctrl+C on one computer, Ctrl+V on another.
Clipboard is instantly synchronized across all your devices. It can handle all forms of text, images and even application-specific data.
HaveClip is multiplatform. Copy something in one OS, paste in another. Supports Windows, Linux, Mac OS X, Sailfish OS and coming to Android.
|Mac OS X||haveclip-desktop-0.14.0-mac.zip (sha1, info)|
x86: haveclip-android-0.15.0-dev-f38b5ff-x86.apk (sha1)
x86: harbour-haveclip-0.15.0-1.i486.rpm (sha1)
|Gentoo Linux||Ebuild in a custom overlay|
All sources and builds are at https://secure.havefun.cz/~aither/pub/releases/haveclip.
Public repositories are available at https://github.com/aither64:
- Desktop version at https://github.com/aither64/haveclip-desktop
- Sailfish version at https://github.com/aither64/haveclip-sailfish
- Android version at https://github.com/aither64/haveclip-android
- Qt >= 4.7 or Qt5
- modules core, gui and network
- Linux version has additional dependencies
- X11 header files
Debian based distributions
# apt-get install g++ libqt4-dev libqt4-dev-bin libX11-dev libssl-dev make pkg-config
Fedora and other RPM based distributions
# yum install gcc-c++ qt-devel xorg-x11-proto-devel openssl-devel
$ tar -xzf haveclip-desktop-0.15.0.tar.gz $ cd haveclip-desktop-0.15.0 $ qmake # (or qmake-qt4, qmake-qt5) $ make
You should now have executable at bin/haveclip.
$ sudo make install
HaveClip runs in the background. There is no window when launched, only tray icon will show up.
Left-click on the tray icon will pop up a menu with clipboard history. Right-click triggers a menu with options. These two menus are merged in one in OS X.
First thing to do is to setup devices where the clipboard will be synced. Right-click on the tray icon and select Settings. Go to tab Devices. Devices in the list share the same clipboard. Click on the”Add” button and follow the verification process. Every two devices needs to be paired together, see the Example setup. As of now, HaveClip is usable only in a LAN or in a VPN when using IPv4.
If the verification process is successful, the clipboard will be synchronized between the two computers.
Let’s say I have a PC, a notebook and a Jolla. I want to sync clipboards on them in my home network.
The devices have following IP addresses:
Before pairing the devices, check that all of them have:
- the same or a compatible version of HaveClip,
- HaveClip’s port (9999 by default) is not blocked by a firewall,
- set the same encryption (TLS by default),
- own private key and certificate (also done by default).
Using HaveClip without the encryption is discouraged.
HaveClip has a simple verification process (device pairing) that makes the configuration easier and safer at the same time.
- Pair PC and notebook (Settings -> Devices -> Add device on the PC)
- Pair PC and Jolla (Settings -> Devices -> Add device on the PC)
- Pair Notebook and Jolla (Settings -> Devices -> Add devices on the notebook)
In the device add dialog, you can search your local network and all computers running HaveClip in your network will show up. If that doesn’t work, type in the IP address and port manually.
To discover your IP addresses, on Linux run
ip a or
ifconfig in the terminal.
On Windows or Mac look to network settings. On Jolla, do the same as on Linux if you have developer mode,
or install application from Harbour that can show your IP address.
If not configured otherwise, TLS is used for sending all data over network. Every HaveClip instance is identified by a self-signed certificate. The pairing process verifies certificates on both sides and remembers them. HaveClip ensures, that the clipboard will be sent and received only to/from authenticated peers (those listed in Devices with appropriate certificates).
If one does not use the encryption, literally everyone can change the content of the clipboard or receive it without the user’s knowledge.
Another factor to consider is the data from clipboard leaking unencrypted on permanent storage when history is saved to disk. This may pose a problem e.g. when you use password manager and copy&paste the password through clipboard and thus HaveClip.
Version compatibility table
Not all versions break backward compatibility, so it is possible to synchronize clipboard using different HaveClip versions, as is shown in the table below.
- yes - compatible
- no - not compatible
In order to sync clipboard from Sailfish to PC, one must bring HaveClip to foreground after copying text, or else HaveClip will not notice it. Sync from PC to Sailfish works as expected.
For Jolla to be auto-discovered by other devices, it must be active, meaning the screen must be turned on.
HaveClip is released under GNU/GPL.