Intro: What is Synergy?
You can also use the Raspberry Pi as a Synergy server, but this is not recommended. One reason is that Synergy isn't perfect, certain keys or special keys do not work. Some keyboards and mice have special functions that require special drivers, which Synergy and Linux might have trouble supporting.
Although a version of Synergy compiled for ARM (Raspberry Pi uses ARMv6) is available through Raspbian's package manager, it is not the latest version of Synergy. Existing users of Synergy may have updated their server installation. The protocol changes between different versions of Synergy means that you must run the same version of the client and server. Thus, we must recompile Synergy from the source code on the Raspberry Pi.
Page last edited December 09, 2013
Text editor powered by tinymce.
Setting up a Synergy Server
Before starting the server, configure the server to accept connections from a computer named "pi". Configure the hot-corners or hot-keys as you desire.
If you get a server/client verison mismatch, make sure you're running 1.4.15. If you're using Ubuntru, try this package, which is able to sucessfully install synergy 1.4.15 on ubuntu 14.04.2:
https://launchpad.net/~eugenesan/+archive/ubuntu/ppa/+build/5381426
The command I used to install the package was:
sudo dpkg -i synergy_1.4.15-0-eugenesan-lucid1_i386.deb
At first attempt, it didn`t work because of some dependency problems. To solve that, I did two things:
1 - Ran this commands:
sudo apt-get install -f
sudo dpkg --configure -a
sudo apt-get clean
sudo apt-get update
sudo apt-get upgrade
2 - Installed libcryto++8 manually, downloading it from http://packages.ubuntu.com/lucid/i386/libcrypto++8/download
Page last edited December 09, 2013
Text editor powered by tinymce.
Compiling Synergy for Raspbian
cd /home/pi/downloads sudo wget http://synergy.googlecode.com/files/synergy-1.4.15-Source.tar.gz
sudo tar -xzf synergy-1.4.15-Source.tar.gz
sudo apt-get update && sudo apt-get upgrade -y sudo apt-get install gcc cmake libx11-dev libxtst-dev
cd synergy-1.4.15-Source
sudo nano CMakeLists.txt
set(CMAKE_INCLUDE_PATH "${CMAKE_INCLUDE_PATH}:/usr/local/include")
set(CMAKE_INCLUDE_PATH "${CMAKE_INCLUDE_PATH}:/usr/include")
It will ask you to save before closing, you must save it
sudo unzip ./tools/cryptopp562.zip -d ./tools/cryptopp562
sudo nano ./tools/CMakeLists.txt
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
and edit it to the following on a Pi 1
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=armv6zk")
for the Pi 2, do this instead:
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=armv7-a")
It will ask you to save before closing, you must save it
Now we can use cmake to configure our makefile build
sudo cmake .
-- Configuring done -- Generating done -- Build files have been written to: /home/pi/download/synergy-1.4.15-Source
Now you can use make to build the source code according to the makefile
sudo make
When it finishes with no errors, a new directory at synergy-1.4.15-Source/bin should exist, and inside should be several executables files. Install these by using the copy command to copy the files into the /usr/bin directory
sudo cp -a ./bin/. /usr/bin
Page last edited December 09, 2013
Text editor powered by tinymce.
Setup Synergy Client Autostart
You need to create an autostart file for LXDE, or add to it if it already exists, do the following through the terminal
sudo mkdir -p ~/.config/lxsession/LXDE sudo touch ~/.config/lxsession/LXDE/autostart sudo nano ~/.config/lxsession/LXDE/autostart
~/.startsynergy.sh
We need to write the .startsynergy.sh script, again, open the file using nano
sudo nano ~/.startsynergy.sh
#!/bin/bash killall synergyc sleep 1 synergyc --name pi 192.168.0.16 exit 0
It will ask you to save before closing, you must save it
sudo chmod 777 ~/.startsynergy.sh
Page last edited December 09, 2013
Text editor powered by tinymce.