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…

20 Responses

  1. Thanks for the link! The “possibly related posts” feature does pick up some useful links; I’ve found several interesting posts through things on my blog.

    Obviously, my setup was easy since I’m running two machines with Windows XP. It’s good to hear that you’ve had success with Synergy in your cross-platform setup.

  2. ha – sweet! thanks very much. i almost killed the page without reading it when it mentioned mac at the top, but somehow read on (i was googling for opensuse rpms for synergy) and followed your suggestion – worked perfectly. i had never thought to use a local directory as a repo before…
    cheers, and thanks again, andrew

  3. Holy cow, that’s brilliant. I was just struggling through the same problem with my new openSUSE install…I don’t know that I ever would have come up with your solution myself.

    Great work! You saved me some serious time.

  4. Many thanks for the Synergy on OpenSuse 11.0 trick. I was about to give up on it!!!

    Steve.

  5. Glad it’s helped a few people out. It’s a nice method as it sorts out dependencies for you – something that’s caught me out before!

  6. THanks for your research…. worked a treat!

  7. Hey, was wondering how your MX revolution acted between the two machines. I have a setup between a suse box and my mac, but I can’t get my MX revolution to behave with the native functions or all buttons working.

  8. The basic features of my Logitech MX mouse (left/right-click & scroll wheel) seem to be working fine with OpenSuSE via Synergy. The other features like the search button, side-wheel, etc aren’t recognized by default in Synergy and so don’t get passed through to the Linux box when appropriate.

    However, there is a mousebutton option in the Synergy config file so it’s entirely possible that some of the extra features of the mouse could be programmed to work in some way.

  9. Wow, thanks for the synergy through yast trick. Definitely going to try that on any other dependency problem

  10. Brilliant! I did some searching and it took about 10 minutes to find this site. It worked like a charm. Thanks for providing this little tidbit of info to the world…

  11. VERY COOL! I’ve been using Suse for a couple of years now, and sometimes the dependency issues really want to make you tear your hair out! I’ve had a similar problem when installing Skype for Linux from the Suse RPM–I’m definitely going to give the local directory as a repository method a try! Great thinking, and thanks so much for posting this!

  12. I think I’ll look into this as well… though my laptop screen is 2 inches larger than my desktop (which is quite sad).
    I would love to do that!
    Thanks for this wonderful help, bud!

  13. I just installed Synergy on my 2 openSUSE boxes – one is 11.0, the other is 11.1.

    Easy steps:
    Open YAST
    Open Software Repositories
    Add repository by URL
    Give it a name (X11 UTils is what I used)
    Use the following URL:
    http://download.opensuse.org/repositories/X11:/Utilities/openSUSE_11.0
    (For opensuse 11.1, change the 11.1 in the above line to 11.1)
    Press OK.
    After it has downloaded stuff – go to software management
    In the search box type “synergy”
    Tick synergy, quicksynergy and qsynergy
    Press OK
    This will install it all – and allows automatic updates.
    (You will find a GUI for Synergy in KDE under KMENU->Utilities->Desktop)

    — Ben

  14. Imagine how much better that would have been if I had of proof read it.

    The URL to add as a repository for openSUSE 11.1 is:
    http://download.opensuse.org/repositories/X11:/Utilities/openSUSE_11.1

    I hope this helps.

    — Benjamin Holmes

  15. Thank you very much. I have spent considerable time making synergy to work on suse 11.1 by untaring the file and running configure without any success. But the instruction you have provided was great. Now its all working. Thank you.

  16. Thank you !! This really helped. Thanks for sharing.

  17. […] En el caso de Ubuntu, viene en los repositorios oficiales. En OpenSuse, no. Ya que ésta distro es terreno nuevo, empezé a googlear y di con un post con la solución para poder instalar Synergy en ésta distro. […]

  18. Oh my god. thank you so much!
    I spent the entire day looking for a solution to make synergy work on OpenSuse!

  19. […] in der Konsole <synergyc -n <localHostname> <SynergyServerName> eingeben und testen hier kann man es noch mal […]

  20. Man, you made my day! Thanks just saved 800 bucks which I should of spent on a WEI keyboard. Thanks a lot again.

Leave a comment