Cygwin might get really get some flak sometimes but for what it is, it works moderately well. The packages install and I haven’t really had many problems in the past, although I haven’t had to dig very far.
One thing that did bug me before was having to open the horrible GUI every time I wanted to install something. I’m spoiled by modern, command line based package managers. I don’t want to have to open up the GUI to install something!
Some of you may not be familar with it yet, but apt-cyg is a cygwin package manager: https://github.com/transcode-open/apt-cyg
This particular version picked up from the old one on Google Code, which had some nasty bugs for the 64 bit version of cygwin: https://code.google.com/p/apt-cyg/
I’ve found it pleasant enough to use, and the maintainers have been clever enough to use lynx as an entry point to install the entire package:
lynx -source rawgit.com/transcode-open/apt-cyg/master/apt-cyg > apt-cyg
Security aside, installing apt-cyg as the first thing after your initial cygwin install can be a huge blessing. Now you can script the installs for everything else in bash and you’ll never need to touch the cygwin installer GUI again.