Synergy is great. I use it for sharing my mouse and keyboard between my Windows desktop and MacBook Pro. I had some latency issues on WiFi with Synergy 1.x, but that seems to be resolved with 2.x. Licenses are very cheap for their commercial offering and I would highly recommend supporting them!
I've not had good luck with the 2.x releases. Random mouse moves, disconnects, jumping to the center of the screen, mouse not wanting to move between screens and odd clipboard issues. Life is too short, I went back to a KVM.
Mostly the same boat here. I've been using Synergy for a very long time to share between Win desktop and a Macbook. I haven't switched over to 2.x yet so I just have an ethernet adapter on my macbook to deal with the wifi latency issue. But for the license price I paid I've gotten very good use out of this particular software.
Synergy used to be great, the original developers really knew what they were doing, but since then it's been taken over by a commercial developer that seems to have no interest in making a good product and far more interest in charging money for it and licensing - more bugs are introduced with every release, clipboard support is half-broken on Linux for years, the Synergy 2.0 release now causes my mouse to continuously leave my screen while gaming even when locked and random restarts of the service and jumping back to the middle of the screen are far too common. I have to revert back to a very specific version to make Synergy work acceptably and I'm reliant on it for my daily workflow.
Worst part is I actually paid them money for it hoping they'd have fixed it by now...
I had been using Synergy to control my work laptop from my home machine. I hadn't used it in a while (2+ years) and my computer would constantly run out of memory (I think it was in dwm.exe, if I remember correctly) and I would need to reboot. It wasn't until I read the Random ASCII article linked from here (https://randomascii.wordpress.com/2018/02/11/zombie-processe...) about zombie processes that I was able to track it down to Synergy and uninstall it.
To be more specific, most non-software developers were let go with the intent to be to hire more software developers and streamline other aspects of the business. (saw the edit)
Except it looks like Nick fired everyone except himself and one customer service person who is 'Rather excitingly, Sarah is also spending some of her time to improve her software engineering skills so she can help with developing Synergy' (https://symless.com/blog/open-letter-synergy-team)?
Seems like a really terrible plan, when you need to retrain CSRs to do your engineering.
Yep, and starting several months ago I was getting weekly emails asking if I'd be interested in moving to England to work for them as a software engineer. Except, I'm not a software engineer (I'm a hardware guy), just a customer of theirs from V1 days. They made it sound like an emergency situation where they had to stall development until they could recruit some more talent.
It got so bad I had to unsub from their mailing lists.
I don't understand, with the nature of the product (coming from open source) why is Symless doubling down so hard on centralizing this? Look for remote C++ developers across the world and get the tools to make remote work work well.
I was just talking with a coworker -- I used Synergy around 4-8 years ago, then my employment situation changed and I didn't use it for about 3 years. Have just started using it again, and it seems like it's actually worse than it was then. Anecdotal, obviously, but that's not a good trajectory.
Awesome - I wasn't aware of that, but after reading that post I'm greatly reassured. It sounds like they're doing the right things first, glad they've straightened out the priorities.
Some context, the letter came only after months of the same guy dismissing openly or behind the scenes - e.g. not approving posts on the forum - any reported issues and calls from the users that v2 was of beta quality. So I'd say it was an OK move but for sure a forced one after all the negative feedback.
Yep I left after the v2 beta nonsense. He locked my account out from the forums when he didn’t like my feedback. ShareMouse is by far a better product. I feel sorry for the employees but it’ll be a good day when symless goes out of business.
Here’s a fine example of Nick Bolton addressing a longstanding bug:
He deleted a bunch of comments, locked the conversation and then has the audacity to say this a rare issue. I would have gladly helped them debug this issue if he had behaved like an adult.
ShareMouse doesn't support Linux so it's not a 1to1 replacement. Plus I'm very satisfied with synergy v1 just commenting on the approach from the symless CEO here
That's been my experience also. It's kind of surprising given that I was able to replicate 90% of the functionality (that I normally use) for a Raspberry Pi project using only netevent[1] and netcat. Obviously cross-platform and international support (+ handling edge cases) would complicate things, but even in the most basic scenarios, Synergy has been terribly unreliable for me lately.
I thought of using something like this for switching input devices between 4 of my computers that have some kind of desktop interface. Out of desire for much better robustness I opted for a 4-way physical USB switch instead. Extremely cheap, and works even in u-boot, during early boot for FDE password entry, etc. Also has a clear visual indication of apushed in button of where the input is connected atm.
Nick forked a dead project and wanted to keep developing it, but still needed to pay rent and eat (a common problem among programmers). In order to try to both continue paying for necessary life functions and work on Synergy, he began asking for money. This isn't evil. The project was abandoned when he came along. I'm not saying Nick Bolton has done everything right, he clearly had little to no business experience before taking this on and was far too optimistic, but he did something no one else was doing: work on Synergy.
I developed the original Mac port, I guess about 15 years ago now. I’m pretty conflicted as to what’s happened with Synergy recently, but not because I feel like there’s anything morally wrong in what Nick did. I’m more bummed out because it feels like a market failure, for lack of a better way of explaining it: how could a useful open source project, valued by many and (tbh) not terribly complex, require a pivot to a commercial license to remain viable?
I’m as guilty as any for not contributing anything beyond my initial port. But I’m still bummed it’s come to this.
I think he just put too many eggs in that basket too quickly. It's a great product, and the cross platform support is killer since Multiplicity from EdgeRunner/Stardock and Mouse without Borders are both Windows only. I think Nick Bolton saw an opportunity, but wasn't necessarily the most qualified person to handle the task. I'm not trying to insult him, but I was around when Synergy was waiting on Chris to release the fabled 2.0 and when Nick Bolton jumped in to try to make a business out of Synergy.
His twist towards a commercial license came from the fact that despite it being used by many people, few ever paid. He obviously felt he had to force the issue but clearly chose poorly. This is an itch many people feel, but clearly few wish to scratch. It's frustrating.
It is not evil to start charging for a open-source product. However, it IS evil, if you abuse the users money just to build paywall tech instead to improve the software. Look up the bug history and try avoiding the spider webs.
Used Synergy awhile back for development and testing and it worked really well. Glad to see it pop-up again brings back memories. Glad I don't "have" to use it at the moment though.
I tried synergy, with the hope that I could control a Linux media PC from both Linux and Windows machines. Unfortunately it was too flaky, e.g. control keys never being released (I think it's https://github.com/symless/synergy-core/issues/9 ).
These days I use x2x over SSH. I don't use it on Windows, but then again I don't use Windows ;)
I have two system services which poll the surrounding WiFi networks: when I'm at home, I can control the media PC by moving off the left of my screen; when I'm at work, I can control a more powerful desktop by moving off the right (the latter goes through some multi-hop reverse SSH tunnels).
Same here. Paid for 2.0 and it was unusable between by Win 10 and Ubuntu boxes. After fighting with it for several hours I just uninstalled and wrote it off as a loss.
I'm really happy that they open sourced their core code! That's an awesome thing for a company that's making money from this code to do. I know they've had some issues going from 1.x to 2.x (see other comments) but this is a really brave step for them to take and I want to applaud them for moving to an open source model for a portion of their paid product. I hope this helps them turn around their 2.x version.
Adding my support to this. Barrier took a little fiddling to get it working on my 10.9 Mac, but it fixed crashes I'd had with Synergy for years, and seems to have some active devs.
I'm the CEO of Symless, the company behind Synergy. I wanted to chime in and let everyone know that you can ask me anything (reply to this comment).
I've been working on Synergy as the lead developer since 2006 (before I started the company). Synergy 2 is an early beta and is still under development (the final version will be quite different to what's you see now). All users have access to Synergy 1 (https://symless.com/synergy/downloads) which is the recommended version and is still being developed. If you need a refund, that's absolutely fine, please get in touch: https://symless.com/contact
Please let me know if there's anything I can do to help you.
I know ChromeOS considers all programs to be hostile but how long does it take to get either a) Synergy ported to this new operating system or b) some explanation as to why there are no plans to create a ChromeOS version?
Even a phone version would be nice. It would enable people to type their texts rather than 'peck' at the keyboard.
The thing is that people find other workarounds and other products come along to make Synergy redundant. As an example there are the Logitech keyboards that will connect to three devices, e.g. one's phone, computer and laptop.
Over the years I have had genuine 'wow' from people who are truly amazed, as if it is magic when I move from computer to computer with the same keyboard/mouse. They wonder how it works and how it is connected. Few products are so impressive however the impression left on them is that you have to be a linux coder with terminal screens everywhere to use it. So there is no 'where do you get that' follow up question and therefore no mass adoption. It could be done.
That is quite funny. Stock Synergy on stock Windows is an install too far for the regular folk you meet in offices, so the idea of 'just simply installing crouton...' is just kind of lacking convenience.
I find it hard to believe that the Google people who write this ChromeOS would not just put together a version of Synergy to solve their own development use cases. Compared to self-driving cars it is not exactly rocket science.
I can remember when computers went from being networked to being 'personal' and a whole generation of people used non-networked PCs, not knowing any better. We have slipped into that era when it comes to keyboard/mouse sharing.
I payed for Synergy because I love the concept, but the UI is pretty much unusable on high DPI screens on Windows and looks like Windows 95. Are there any plans to update it?
I bought Synergy when I need to work with a windows and mac (Mac being my primary driver) and it made my mac unusable. I used to love Synergy but this made it useless for me and I had to get a refund.
I wrote my own replacement for synergy years ago. It's called touchstream[0] -- it's unlikely to be as full features as, but it's TONS lighter, and I've been using between my mac workstation and my linux workstation for a good many years without a single issue.
Mileage may very, etc etc -- I implemented the features I needed!
This looks awesome and may get me to stop using Synergy altogether! One of my daily use machines at work is a very old laptop I'm basically using as a second screen via Lubuntu, and Synergy is the most resource-heavy program on it by far. It's also really glitchy, causing me to have to stop working and fix it several times a day.
Ah, that's exactly the problem I had with synergy really. Randomly failing -- not terribly nice when one uses it for work.
Mine takes peanuts for resources, and I have uptimes of weeks or more on my machines. My current setup is a 'mac' with a 4K screen and a magic touchpad, and a bigass linux workstation alongside, with a 4K screen also. This one has no keyboard or mouse, and never had!
Feel free to ping me if you need any help, I know it doesn't handle all the scenarios, but with a bit of incentive I'd be very happy to work on it a bit more!
I'm at home now, I think I may test it out on another very old laptop with Slackware. I may even dig my OpenBSD laptop out of the closet and see if I can compile it for that platform. My only Mac right now is a C2D mini with 10.6 so I hope it will compile and run there.
+++
So I just tried to compile on my Elementary OS workstation and got a few errors even after meeting all (I think) of the dependencies. I'm not a programmer beyond the occasional bash script, so I probably missed something somewhere. I have ruby, graphviz, and exuberant-ctags installed, and the usual basic build tools for a Debian based OS. Here's an example of an error, there were a few different ones with the same format:
src/ts_mux.c: In function ‘data_start’:
src/ts_mux.c:339:2: error: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Werror=unused-result]
write(r->socket, msg, strlen(msg)+1);
Yep, Elementary is based on Ubuntu 16.04. Unfortunately it's not completing the build. I get this:
cc1: all warnings being treated as errors
and
cc: error: obj-x86_64-linux-gnu/touchstream.o: No such file or directory
cc: error: obj-x86_64-linux-gnu/ts_signal.o: No such file or directory
cc: error: obj-x86_64-linux-gnu/ts_mux.o: No such file or directory
Error: cc -o obj-x86_64-linux-gnu/touchstream.bin obj-x86_64-linux-gnu/touchstream.o obj-x86_64-linux-gnu/ts_display.o obj-x86_64-linux-gnu/ts_signal.o obj-x86_64-linux-gnu/ts_master.o obj-x86_64-linux-gnu/ts_clipboard.o obj-x86_64-linux-gnu/ts_display_proxy.o obj-x86_64-linux-gnu/ts_mux.o obj-x86_64-linux-gnu/ts_xorg_keymap.o obj-x86_64-linux-gnu/ts_xorg_client.o -lpthread -lX11 -lXtst -lXfixes -lXext -Wl,--relax,--gc-sections
touchstream Done
No binaries are created. I'll try it on a Slackware box, I usually never have odd issues building from source on that OS.
+++
Thanks to j1elo above, I modified the Makefile.common and removed the -Werror CFLAG, and it compiled successfully. Now to do the same on the Mac and see what I get. :-)
Edit Makefile.common and remove -Werror from there.
This is a widespread mistake, using -Werror unconditionally. This flag forbids all warning messages from the compiler, no matter how superficial the actual issue is. -Werror is a very good tool to use during development, i.e. for private (Debug) builds, but it should be disabled for publicly released code (aka Release), or at least a shortcut should always be provided for people who are not interested in editing the code, only in compiling it (e.g. maintainers).
New warnings are added every day so to speak, so with -Werror you never know if your code will stop compiling any time soon. But sadly not many people account for that in their Makefiles.
You'd better write it in the compiler-specific notes! ;-)
As I said, new warnings are added to each new version of the compiler, that's why -Werror is dangerous for code that is intended to keep compiling without changes. The unused-result warning was added in GCC 4.5, I bet in some of those older distros you can try and it will compile just fine, because they come with GCC 4.4 or older... Likewise, probably the author used an sufficiently old GCC version when this code was written.
Got it. As I said I'm certainly not a developer but you've given me a lot of great info here. I do a good bit of compiling from source on Slackware for packages not available in the official or third party repos, and I've rarely had build issues similar to this one. Now I know one more thing to look for.
Careful, it doesn't appear to support encrypting traffic between systems, which means anyone can intercept mouse movements and keyboard presses, and introduce their own.
Sure, but others may not realize this so I thought it was worth pointing out... since many folks here in the thread seems to be using synergy in the office.
Thanks. I'm the sysadmin at work, there are twelve employees, and none of them know much more than how to turn on a PC and use Office and Quickbooks. I'll definitely put it through its paces at home before bringing it to the office though.
Consider folks who have gained unauthorized access to your network, possibly by one of your 12 employeers plugging in some random usb drive or clicking on some email attachment... that's what you'd have to worry about more than them.
I consider that kind of thing every day as part of my job. :-) Email is locked down pretty tight and I'm the only one who uses flash drives.
That said, I won't use a utility like this at work until I've fully vetted it at home first. Besides, if a bad actor has breached my network, I have bigger problems than keylogging between two workstations.
It's easy to tunnel via an SSH connection, if you know how to use port forwarding. Just forward port 24800 from the client to the server, then tell Synergy to connect to localhost on the client. I do it all the time.
I understand you built this for yourself and your use case.
Did I read this correctly in that it _needs_ a mac (because only that can be the server) though? Came to look if this could replace my linux to linux or - more common here - windows to linux scenarios. The latter is straight out I guess, but the former seems impossible too for now, right?
Hi -- yeah there is no support code for windows; I don't use a windows desktop so I never had a need for it -- however the 'skeleton' is in thre, perhaps you could do it by backporting a few bits and pieces of the old synergy..
I was using an old version of Synergy, until one day it stopped working. Since I only needed it for Windows clients, I found Mouse without Borders: https://www.microsoft.com/en-us/download/details.aspx?id=354... . It has the benefit that all input devices can access all devices (Synergy has a "master-slave" structure).
Synergy 2 has so many issues that force me to restart it several times a day. I also need to keep the window open because my Ubuntu machine keeps stealing input priority. It breaks copy paste randomly. But I absolutely need it for quick cross platform testing and there seems to be no other solution besides a KVM switch. I hope this turns the business around.
If you only need to share a keyboard and mouse between Windows machines, then checkout Input Director, which works great! And is free for non-commercial use. I have no relationship with them, just a very satisfied personal user over many years.
If you are using Windows-only machines at your desktop, you might take a look at Input Director [0]. It is the best solution for this. Working clipboard and file sharing, which works because it uses Windows shares.
The best feature in my eyes is that you can rightclick any file and click "open on slave X" and the file will open there.
I left Synergy after they refused to fix longstanding bugs (I was a paying customer.) I paid for ShareMouse and have been happy ever since. Nick Bolton has thin skin (he locked github issues, deleting hundreds of comments on one particular bug because he wanted to bury it.)
98 comments
[ 4.0 ms ] story [ 173 ms ] threadWorst part is I actually paid them money for it hoping they'd have fixed it by now...
This is a great, charitable interpretation of someone's work.
(Edited, thanks corpMaverick and stagger87)
I feel it is the right thing to do, so they can focus on improving the product.
Seems like a really terrible plan, when you need to retrain CSRs to do your engineering.
It got so bad I had to unsub from their mailing lists.
This certainly did create a bit of a crisis, because hiring C++ talent in small towns outside of London is hard.
I don't understand, with the nature of the product (coming from open source) why is Symless doubling down so hard on centralizing this? Look for remote C++ developers across the world and get the tools to make remote work work well.
I was just talking with a coworker -- I used Synergy around 4-8 years ago, then my employment situation changed and I didn't use it for about 3 years. Have just started using it again, and it seems like it's actually worse than it was then. Anecdotal, obviously, but that's not a good trajectory.
I really hope it can become a great product.
Now they are keeping the key members responsible for the buggy v2 (CEO + Devs).
I loved v1. I am skeptical that they will produce a reliable v3...
Here’s a fine example of Nick Bolton addressing a longstanding bug:
https://github.com/symless/synergy-core/issues/5226
He deleted a bunch of comments, locked the conversation and then has the audacity to say this a rare issue. I would have gladly helped them debug this issue if he had behaved like an adult.
[1] https://github.com/Blub/netevent
I developed the original Mac port, I guess about 15 years ago now. I’m pretty conflicted as to what’s happened with Synergy recently, but not because I feel like there’s anything morally wrong in what Nick did. I’m more bummed out because it feels like a market failure, for lack of a better way of explaining it: how could a useful open source project, valued by many and (tbh) not terribly complex, require a pivot to a commercial license to remain viable?
I’m as guilty as any for not contributing anything beyond my initial port. But I’m still bummed it’s come to this.
His twist towards a commercial license came from the fact that despite it being used by many people, few ever paid. He obviously felt he had to force the issue but clearly chose poorly. This is an itch many people feel, but clearly few wish to scratch. It's frustrating.
These days I use x2x over SSH. I don't use it on Windows, but then again I don't use Windows ;)
I have two system services which poll the surrounding WiFi networks: when I'm at home, I can control the media PC by moving off the left of my screen; when I'm at work, I can control a more powerful desktop by moving off the right (the latter goes through some multi-hop reverse SSH tunnels).
long time user, it's always been great. runs most of my home. absolutely invaluable.
i'd love to see standards, a mouse & keyboard & clipboard standard protocol emerge some day.
https://github.com/debauchee/barrier
SSL & other important features
I'm the CEO of Symless, the company behind Synergy. I wanted to chime in and let everyone know that you can ask me anything (reply to this comment).
I've been working on Synergy as the lead developer since 2006 (before I started the company). Synergy 2 is an early beta and is still under development (the final version will be quite different to what's you see now). All users have access to Synergy 1 (https://symless.com/synergy/downloads) which is the recommended version and is still being developed. If you need a refund, that's absolutely fine, please get in touch: https://symless.com/contact
Please let me know if there's anything I can do to help you.
Thanks, Nick
I know ChromeOS considers all programs to be hostile but how long does it take to get either a) Synergy ported to this new operating system or b) some explanation as to why there are no plans to create a ChromeOS version?
Even a phone version would be nice. It would enable people to type their texts rather than 'peck' at the keyboard.
The thing is that people find other workarounds and other products come along to make Synergy redundant. As an example there are the Logitech keyboards that will connect to three devices, e.g. one's phone, computer and laptop.
Over the years I have had genuine 'wow' from people who are truly amazed, as if it is magic when I move from computer to computer with the same keyboard/mouse. They wonder how it works and how it is connected. Few products are so impressive however the impression left on them is that you have to be a linux coder with terminal screens everywhere to use it. So there is no 'where do you get that' follow up question and therefore no mass adoption. It could be done.
I find it hard to believe that the Google people who write this ChromeOS would not just put together a version of Synergy to solve their own development use cases. Compared to self-driving cars it is not exactly rocket science.
I can remember when computers went from being networked to being 'personal' and a whole generation of people used non-networked PCs, not knowing any better. We have slipped into that era when it comes to keyboard/mouse sharing.
I bought Synergy when I need to work with a windows and mac (Mac being my primary driver) and it made my mac unusable. I used to love Synergy but this made it useless for me and I had to get a refund.
Mileage may very, etc etc -- I implemented the features I needed!
[0]: https://github.com/buserror/touchstream
Mine takes peanuts for resources, and I have uptimes of weeks or more on my machines. My current setup is a 'mac' with a 4K screen and a magic touchpad, and a bigass linux workstation alongside, with a 4K screen also. This one has no keyboard or mouse, and never had!
Feel free to ping me if you need any help, I know it doesn't handle all the scenarios, but with a bit of incentive I'd be very happy to work on it a bit more!
Right now It Works(TM) ;-)
That's exactly what I need, no more. :-)
I'm at home now, I think I may test it out on another very old laptop with Slackware. I may even dig my OpenBSD laptop out of the closet and see if I can compile it for that platform. My only Mac right now is a C2D mini with 10.6 so I hope it will compile and run there.
+++
So I just tried to compile on my Elementary OS workstation and got a few errors even after meeting all (I think) of the dependencies. I'm not a programmer beyond the occasional bash script, so I probably missed something somewhere. I have ruby, graphviz, and exuberant-ctags installed, and the usual basic build tools for a Debian based OS. Here's an example of an error, there were a few different ones with the same format:
+++
Thanks to j1elo above, I modified the Makefile.common and removed the -Werror CFLAG, and it compiled successfully. Now to do the same on the Mac and see what I get. :-)
This is a widespread mistake, using -Werror unconditionally. This flag forbids all warning messages from the compiler, no matter how superficial the actual issue is. -Werror is a very good tool to use during development, i.e. for private (Debug) builds, but it should be disabled for publicly released code (aka Release), or at least a shortcut should always be provided for people who are not interested in editing the code, only in compiling it (e.g. maintainers).
New warnings are added every day so to speak, so with -Werror you never know if your code will stop compiling any time soon. But sadly not many people account for that in their Makefiles.
+++
And it worked! Thanks for that! I'll file that in my notes for building on Ubuntu and derivatives for the future.
As I said, new warnings are added to each new version of the compiler, that's why -Werror is dangerous for code that is intended to keep compiling without changes. The unused-result warning was added in GCC 4.5, I bet in some of those older distros you can try and it will compile just fine, because they come with GCC 4.4 or older... Likewise, probably the author used an sufficiently old GCC version when this code was written.
Thanks again!
That said, I won't use a utility like this at work until I've fully vetted it at home first. Besides, if a bad actor has breached my network, I have bigger problems than keylogging between two workstations.
Did I read this correctly in that it _needs_ a mac (because only that can be the server) though? Came to look if this could replace my linux to linux or - more common here - windows to linux scenarios. The latter is straight out I guess, but the former seems impossible too for now, right?
https://www.startech.com/ca/Server-Management/KVM-Switches/2...
The software is not as configurable but it is SO much more reliable and responsive. Basically a wired version of synergy.
http://www.inputdirector.com/
The best feature in my eyes is that you can rightclick any file and click "open on slave X" and the file will open there.
[0] https://inputdirector.com/