top | item 11960928

Cygwin library now available under GNU LGPL

125 points| rcarmo | 9 years ago |redhat.com | reply

73 comments

order
[+] JoshTriplett|9 years ago|reply
I wonder if the new Linux compatibility subsystem for Windows provided any motivation for this change? That work seems likely to make Cygwin obsolete eventually, since it allows running unmodified applications rather than porting them.
[+] geofft|9 years ago|reply
One big difference between Cygwin and the Linux subsystem is that Cygwin runs Win32 processes, under the Win32 subsystem, so the entire Windows API is available to you. The Linux subsystem (like the Subsystem for UNIX Applications before it) is a separate set of concepts on top of the raw NT system calls, so you get a GNU/Linuxish API instead of the Windows API. With Cygwin you get a GNU/Linuxish API as well as the Windows API.

See, for instance, this discussion about how copy-on-write fork is available as a system call (and had been around for a while, to support SUA), but doesn't work right with the Win32 subsystem, and that means Cygwin can't use it:

https://social.msdn.microsoft.com/Forums/windowsdesktop/en-U...

I don't know how many actual applications take advantage of this, though. But if they do, then Cygwin is definitely not obsolete for them.

[+] richardfontana|9 years ago|reply
No, this change was being contemplated over a year ago and the final internal decision was made before the announcement of that Linux compatibility subsystem. It has more to do with the commercial viability of Cygwin as a product.
[+] rcarmo|9 years ago|reply
I'm going to oversimplify a bit, but unmodified applications cannot have a native GUI or break out of the Linux Subsystem sandbox (other than network connections).

You can cheat using VNC to localhost, of course ;)

I have it installed, and still rely on Cygwin for projects that live on my Windows directory.

[+] skrowl|9 years ago|reply
One thing that I didn't see mentioned here that I'd like to point out (again) is that the Ubuntu on Windows stuff is CLIENT ONLY aimed at developers.

Microsoft has said that they have no plans to push it to / support it on their Server OSs. If you're planning on SERVING something with Windows + Linuxy stuff on top of it, Ubuntu on Windows is not an option.

[+] AdmiralAsshat|9 years ago|reply
So does this mean that we'll expect to see a commercial version of Cygwin in the future? Or is it so that commercially available programs can leverage Cygwin libraries?
[+] richardfontana|9 years ago|reply
Red Hat has had a commercial Cygwin offering (not a different version from the project) ever since the Cygnus acquisition, but this is now being phased out (no new customers will be taken on, and the last existing non-GPL customer license expires in 2020). It is possible that companies other than Red Hat may wish to offer commercial support for Cygwin or some derivative of Cygwin.

The license change does have the effect of making it easier for programs to leverage the Cygwin library without concern about licensing implications. I wouldn't quite say that is the purpose, but if only because Red Hat will no longer be providing commercial support for Cygwin the license change is the right thing to do. (I think there are additional reasons why the license change is right.)

[+] civodul|9 years ago|reply
Is Red Hat suggesting there are no "commercial opportunities" with Linux, Wordpress, GCC, FFmpeg, etc., which are under the GPL?
[+] parent5446|9 years ago|reply
Kind of disappointed to hear this, although at least they did not switch to a permissive license.

What I'm still not sure is why they are dropping copyright assignment. Don't the same litigation problems exist when using LGPL, or is there something I'm missing?

[+] richardfontana|9 years ago|reply
The main reason, I'd say (at least by the time of the Cygnus acquisition) the only reason, for copyright assignment for Cygwin was to ensure that Cygnus/Red Hat was the sole GPL licensor. Thus Cygnus/Red Hat, and only Cygnus/Red Hat, could offer alternative for-fee license arrangements. This was the basis of the business model. Copyright assignment isn't the only means of achieving that result with a GPL-licensed project, but it was the traditional technique and probably the soundest from a legal perspective.

Red Hat is phasing out this commercial model for Cygwin. Hence single-licensor GPL licensing is no longer necessary or, I'd say, appropriate. It has nothing directly to do with litigation issues in any general sense. By 2020, I expect that all contributions to Cygwin will be made under the LGPL, meaning that there will potentially be a diversity of LGPL licensors in contrast to the situation prior to today where there was one GPL licensor.

[+] djsumdog|9 years ago|reply
I hear you on this. I'm currently working on a writeup about the history of open source and the GPL.

The dream of having totally free and open replacements for major tools like Photoshop never really happened. There is a lot of new OSS, but it's all BSDL, Apache, MIT and other license.

I'm not like a hard core Stallman person. I don't run libre-firmware laptops from pre-2008 and I enjoy my Gapps on my phone, but I'm not a big fan of startups/monetization of everything. I think a lot of good ideas are strangled by making them commercially viable.

Cygwin going LGPL allows it to be more widely used, but overall we're going to see less OSS apps as a result.

[+] mappu|9 years ago|reply
This means consumers will probably end up having multiple cygwin1.dll files on their system (something the FAQ warns about).