Synergy-core: Open source core of Synergy, the keyboard and mouse sharing tool
github.com
github.com
Worst part is I actually paid them money for it hoping they'd have fixed it by now...
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.
(Edited, thanks corpMaverick and stagger87)
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.
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.
This is a great, charitable interpretation of someone's work.
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!
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:
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);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!
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. :-)
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://github.com/debauchee/barrier
SSL & other important features
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.
This guy Nick Bolton took the project to squeeze it. He never really contributed to quality but turned it into closed source. He claimed, that he need to charge for it to finance dev. However, he only invested into the payment wall backend development instead of finally making a stable product.
Nick promised, Synergy would be a lifetime license for all future versions for $1. Sniff sniff. Yes, you smell the right thing.
He promptly broke that promise with v2 and charged again. $29!
But half of the promised features actually exist and more than half of that actually work. Synergy became a scam.
"Open letter" sounds so cool but it is a letter of promises again. Dont fall for it. IMHO, Nick has all narcissist symptoms: Pictures of himself everywhere on his website and promises of everything to everyone. Typical symptoms.
Dont take my words. Look it up in Google and archive.org. His current roadmap is his roadmap from 2014.
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.
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.