Cygwin 1.7 Released
jensend writes "The 1.7 branch of Cygwin, the Unix-like environment for Windows, has reached stable status after about 3 1/2 years of effort. Among many other changes, this release drops support for Windows 9x. Since the NT API and NT-based versions of Windows are more capable and somewhat less of a mismatch with POSIX (for instance, they include a security model), this has allowed for code path simplifications, better performance (particularly noticeable with pipe I/O), better security, and better POSIX compatibility."
Even after all these years, Microsoft has nothing equivalent to the UNIX command line. The standard cmd.exe is too limited, and Powershell isn't a good interactive shell, it's more like typing at a Python or Ruby interpreter. Cygwin makes doing anything on Windows marginally tolerable and I install it on any Windows machine I happen to use.
The biggest--perhaps only--reason I install Cygwin on Windows is because so many cross-platform applications require it for compilation (Mozilla, I'm looking at you). Of course, whether they coud ue MinGW and/or the Windows "Services for Unix" layer to accomplish something similar is another story, but until they decide to change and support it, Cygwin it is.
And personally, having had to install Cygwin, I've never even paid attention to the POSIX layer for Windows, but it looks like it might be worth looking into. I think part of the reason some projects use Cygwin owes to their current or not-to-far-in-the-past support of Windows 9x/Me (the POSIX layer, of course, is only for the NT family) and probably no benefit (or perhaps even more problems, having to work out compatibility issues with yet another set of tools) from changing.
R.Mo
It used to be if I wanted to run some Linux code under Windows I'd have to have a Linux box nearby, boot into Linux, or deal with Cygwin. I've never really enjoyed using Cygwin it's a pain to use, maintain, work with, and code for. There are lots of subtle differences in how your code behaves when you go from Linux to Cygwin (for example, re-writing someone's entire program because they liked to use lots of mallocs and Cygwin mallocs are unbelievably slow).
At this point though you can either run VMware, get a full Linux distro, and have easier access to your local Windows files (via a local share) than Cygwin's fun mapping scheme (/cygdrive what now?). Or you can even run an EC2 instance. Cygwin was never painless enough to make it worth while to use, if I needed to do something in Linux I'd rather use a real Linux box.
I don't think most people really miss the command line utilities enough to want to go through the hassle of using Cygwin (I hate the install process btw)... but then again I don't like using Linux as my desktop. I'd rather just use Windows or OS X and ssh into my Linux clusters as needed.
Microsoft, fucking up userland since 1992.
The world's burning. Moped Jesus spotted on I50. Details at 11.