A little Linux diversion (Synergy on OpenSUSE 11.0)

My work laptop is a dual-boot Windows XP/OpenSUSE 10.3 affair, and although the company is trialing the use of Macs, I am so far down the pecking order that the only place I can enjoy relatively stress-free computing is on my Mac Pro at home. However, every so often I start tinkering and the latest project was to convert my trusty (but frustrating) Windows XP home PC to an XP/OpenSUSE dual-boot affair as well.

I have three computers and a laptop. No I’m not rich, the two PCs were built from parts acquired over many Two screensyears, the laptop was provided by the company and the Mac Pro… well, I’m still paying for that! Anyway, this plethora of hardware is fed through a pair of handsome Samsung monitors, a SyncMaster 226BW and an equally impressive 2493HM, but the challenge is in how to hook up all machines to use a single keyboard & mouse. I have tried my fair share of KVM switches in the past and aside from the cost, I’ve never really found them a satisfactory solution. Then about a year ago I discovered Synergy. Put simply it’s a free opensource utility that lets you use a single keyboard & mouse to control multiple computers (each with it’s own monitor). It does other clever thing like sharing the clipboard between multiple computers and synchronizing screensavers, but I’ll just concentrate on the keyboard/mouse sharing here. Incidentally, the keyboard is Logitech’s DiNovo Edge, while the mouse is a Logitech MX Revolution, (both wireless).

SynergyThe beauty of Synergy is that it’s cross-platform, supporting Windows, Mac OS X and Linux in its multitude of flavours. It’s main requirement is that the machines you want to control are all networked (using IP). I was already using it between the two Windows PCs and my laptop, and when I got my Mac Pro I got it running on that too. The basic setup is that one of your PCs acts as the ‘server’ sharing its keyboard and mouse with any machine running the Synergy ‘client’, just so happens that my oldest Windows machine became the Synergy server – well, it’s the most reliable of my Windows machines and it’s always switched on.

Synergy on the Mac (OS X 10.5.3)

Apple Mac OS XInstalling Synergy on the Mac was as easy as downloading and unpacking it to a suitable folder, in my case I ended up creating a ‘Synergy’ folder inside my Applications folder. Running the Synergy client is then just a matter of opening a terminal window, navigating to the right folder and running synergyc with the right parameters, like this:

synergyc -n macpro 192.168.1.3

The -n specifies the name the client is to be known by, here it is ‘macpro’ and the last parameter is the address of the Synergy server (you can use either the IP address or the DNS name, your choice). Having tested that it all worked ok, my next task was to get Synergy to start automatically when I logged on to the Mac. Another freeware application called Lingon came to the rescue here. I installed it, then created a User Agent for Synergy with /Applications/Synergy/synergyc -n macpro 192.168.1.3 in Lingon’s ‘What’ box (note you need to give Lingon the full path to the command). I ticked the box ‘Keep it running all the time no matter what happens’ and it’s worked flawlessly ever since.

Synergy on OpenSuse 11.0

opensuse To cut a long story short, the install of OpenSUSE 11.0 was a breeze, unlike the hair-tearing efforts I went through to get Ubuntu 8.04 on to the same machine. I expect by now the web is awash with blogs detailing every aspect of the new OpenSUSE 11.0 offering, but what follows is my little success story with installing Synergy the easy way.

Getting Synergy installed was more of a challenge as Linux expects you to know your way around the system a little if you decide to stray off the standard application path so to speak. I downloaded the rpm version of Synergy for Linux and put it in its own folder. Navigating to that folder as the root user, I was greeted with a dependency failure when I attempted to install it … something about libstdc++-libc6.2-2.so.3 is needed by synergy-1.3.1-1.i386 !  When my friendly Linux ‘guru’ called I mentioned this and he started reeling off what I needed to do to find dependencies, get rpm’s and, well… it all sounded just too complicated. I gave up for the evening and decided to sleep on it.

The next day I started up the Linux machine and started to Google for a solution. There wasn’t anything that didn’t involve arcane commands and compiling things, but as I was browsing through YaST the penny dropped! Tell YaST that my Synergy download folder is a software repository (well it does contain an rpm file) and let YaST worry about the dependencies. So, what follows are the steps to install Synergy under OpenSUSE the ‘easy’ way:

  • Start YaST and enter the root password when prompted.
  • In the righthand pane of the YaST window, choose Software Repositories.
  • Click on the Add button, bottom left.
  • Choose Local Directory and click Next
  • Give your new repository a name and then use the Browse button to navigate to the folder where you downloaded the Synergy rpm file to and click Next.
  • YaST will add your Synergy download folder to its list of Configured Software Repositories.
  • Once that’s done, return to the YaST Control Centre window and choose Software Management.
  • In the Search box type ‘synergy’ (without the quotes).
  • On the right you will see details of the package YaST has found inside your rpm.
  • Put a tick next to the synergy entry and make sure that the Autocheck box at the bottom of the screen is checked.
  • Click on the Accept button and YaST will obligingly install Synergy for you and will also resolve any dependencies it has, downloading extra files if needed.
  • The final step is to open a terminal and test it out. You can use the same command line as you use for the Mac version.

Provided you have already configured the Synergy ‘server’ with the name your client machine is going to use, and which edges of the screen will switch to other computers, all should be well. My last task is going to be to set the Synergy client to automatically load as Linux starts up, but for now I’m just happy that my desk is back down to just ONE keyboard and mouse!

When I was a kid, my mum always told me to say “Thankyou”, so…

Thanks to Chris Schoeneman for creating Synergy and ultimately saving me a bundle of money on trying out ever more expensive hardware solutions. It’s a shame Synergy isn’t being actively developed any more, but I’m sure Chris has better things to do these days and besides – it works! Thanks also to Peter Borg the creator of Lingon. I shall be hitting that Donate button! Finally, if you miss having the GUI that the Windows version of Synergy gives you, then check out QuickSynergy. I haven’t used it myself, but it looks pretty useful if you want to use a Mac or a Linux machine as your Synergy server.

Links

You might want to check out Christy Tucker’s blog for an interesting article about Synergy. Christy, WordPress popped up a link to your blog as soon as I published this article so I thought I’d give you a mention ;-).

Reading Christy’s blog also reminded me of an Engadget article about using Synergy, although their notes assume you know a lot more about resolving Linux dependencies and compiling modules than I do! My Linux friend might shriek in horror when I tell him how I’ve managed to install Synergy, and the next kernel update might well hose everything. We shall see…