Hacker News new | past | comments | ask | show | jobs | submit login
[dupe] The time has come to stand up for the GPL (sfconservancy.org)
425 points by tobltobs on Mar 6, 2015 | hide | past | web | favorite | 273 comments

So many people hate on the GPL. I personally like. It will protect your freedom as an open source developer. It is a good thing.

Agreed. I can't help but be depressed that anti-GPL FUD dominates convos on HN. I mean, my own work has been disrupted by GPL being "inconvenient" but I will still defend it. My life has been enriched by the great software written under it, and the fact that it continues to thrive under this terrific license.

Is that a function of the software, or of the license? (And more importantly, can that difference be quantified?)

BSD/MIT is pretty well thriving, too. You probably use OpenSSH every day :)

The more permissive licenses always seemed the way to go, to me. I'd rather people contribute out of personal desire to, rather than legal obligation. That, and the GPL always seemed a bit too communist (in the sense of implying that other people have a moral right to your work) for my taste.

Does it really matter?

If a software author wants for people to use/distribute his software under a specific license, that's his prerogative.

And the GPL is a truly free and open source license, it does allow you to use it commercially and for whatever reason, it does allow you to create derivates, all it asks is that in case you redistribute a derivate, you must also give the source-code on request. It's not even an EULA, it's just a copyright license.

And btw, compared to BSD/MIT, the GPL also contains a patents grant (implicit but powerful enough for version 2, explicit for version 3). And unfortunately in this universe, the big companies contributing to open-source also have really big patents portfolios, therefore I always look suspiciously at code licensed with BSD/MIT. And unfortunately patent trolls are a reality.

If you prefer more permissive licenses, then go for the Apache 2.0 ;-)

If a software author wants for people to use/distribute his software under a specific license, that's his prerogative.

We're discussing the merits of particular licenses, particularly their impact on the software world, so this is kind of tautological, don't you think?

In any case, I was not aware of that difference between Apache and BSD, so you have my sincere thanks for pointing that out. I've got a few things on Github to modify methinks...

Well, I wanted to point out that as far as open-source goes, it has a pretty good definition and in the larger scheme of things, the actual open-source license used does not matter, all that matters is to get people to contribute.

But people contribute when they've got reasons to do so and many people believe in copyleft. And the GPL is an interesting case, because it happened because its author hated copyright, so he decided to turn it on its head and use it to his advantage. And in a world in which copyright (and other IP laws) keep getting worse, copyleft gets even more relevant.

To the issue of whether copyleft did any good versus MIT/BSD, well, would have Apple open-sourced WebKit if it wasn't for KHTML's LGPL license? I'm inclined towards no, but truth is, we'll never know.

On GCC on the other hand, its authors not only used GPL, but actually made it hard in the actual code for proprietary extensions to happen. This might have been good 15-20 years ago, when the landscape was dominated by proprietary compilers, but now I consider that we're better off with LLVM taking off.

> Does it really matter?

Yes, it does. You set up a pretty big straw man there, allow me to illustrate:

  "Smoking is bad"

  "I don't know, I have very good friends who smoke."
There is undoubtedly great software that was shipped under the GPL but they became successful because they are great software, not because of the license they use.

The only straw man I see in this thread is the one you just set up.

If encouraging your project's success is secondary to preserving the freedom to scrutinise, modify, or redistribute its code, then GPL should be considered. Windows is successful by many metrics, but a failure where those freedoms are concerned. Obviously this is a good trade-off for Microsoft. It's not a good trade-off for Linux.

Where derivation is concerned, MIT & BSD guarantee diametrically opposed freedoms to the GPL. Which freedoms are more important depends on the intentions of the author, and the nature of the project.

Freeness is a terrible metric to measure success - who cares if it's freely available if nobody uses it?

That depends on what you're trying to succeed at. If the primary goal is to be free then freeness is the primary measure of success and popularity comes second.

The question here is about the choice of licence affecting the success of free software.

My argument is that, if success is more likely under an MIT style licence, this still may not be enough to sway me if I want a guarantee that users of my software are able to scrutinize the source code, or that derivatives of my software will remain free.

Freeness in of itself is not a goal. Dirt is free. Air is free.

I can put a "hello world" app out there and release it under GPL, but is it useful? Does it actually solve any problems?

Surely "hello world" is useful only if you release it under a copyleft licence since its purpose is to teach you how to get started with the language it demonstrates.

In any case, freeness is a goal for me as a user of software. I choose Gimp over Photoshop, for example, because I care more about still being able to access my photos in 20 years time than I do about having access to certain feature sets.

That is a practical concern, not a political one.

The purely political stance I rail against is, in effect, "X fits my use case and is objectively better in every way, but Y is free, so I'll use Y."

For what it's worth, I can still open PSD's created way back in the 90's, and the format is well documented.[1] Adobe could disappear in a puff of logic tomorrow and their format wouldn't become unreadable.

    [1]: https://www.adobe.com/devnet-apps/photoshop/fileformatashtml/

> Surely "hello world" is useful only if you release it under a copyleft licence since its purpose is to teach you how to get started with the language it demonstrates.

I would argue that "hello world" is useful only if you release it under a very permissive non-copyleft free software license or, better, as public domain, for exactly that reason. Copyleft is excessively restrictive for this purpose.

> BSD/MIT is pretty well thriving, too. You probably use OpenSSH every day :)

I believe that BSD/MIT is thriving because GPL was there. Google, Facebook, Microsoft open sourcing their products. Free compilers, free operating systems all of this stems and started from GPL being there.

> I'd rather people contribute out of personal desire to, rather than legal obligation.

Sure, that why you as an author (or your company as the owner of your work) can choose how to distribute your work. You can pick any license you want. You can still use GPL and dual license it. I've bought dual license GPL-ed code and was glad to do it.

> That, and the GPL always seemed a bit too communist (in the sense of implying that other people have a moral right to your work) for my taste.

Communism really? Well thanks to communism then we have Linux, Android devices, free compilers, and probably the reason we have free and open source software today.

I take a pragmatic approach. I'm cool with BSD license for most of user-level application code, because if someone wants to make a binary-only application, I usually have options I can choose from. But in kernel space, a binary-only driver or kernel means that open source of any kind is locked out of the hardware, because it's hard to write drivers without specs. In that space, the GPL is one of our few tools for getting device makers to give us what we need.

Has that really worked, though? It seems like, in the case of things like video cards, the GPL means that we have the full-performance, 3d accelerated, proprietary and closed driver, which is the one you're going to use unless you have a moral stance against it, and the objectively inferior (slower, at least) Libre version of the same thing to talk to the same hardware.

What if a working computer is your primary concern, not the political status of the code?

If you care about more than the short term, such "political status of the code" should matter to you. The purpose of the GPL is not (or should not be) being able to say "my code is holier than yours", nor necessarily about having the best working implementation.

No, its main purpose is guaranteeing that all users can understand how the device works, even if they don't belong to the company that builds it. Other FLOSS licenses don't guarantee that in the same way than the GPL does, as they allow modifications to be kept secret. We could say that the GPL is "knowledge-friendly".

In the case of video cards, the alternative would be having only the proprietary closed driver and no open source version. It's incredibly hard to know of such closed systems work by reverse-engineering them; an open source driver, even if limited and less perfect, provides a full specification of the device.

Then you are able to use the proprietary driver so long as you agree to its licensing terms.

I suppose that you are arguing that an OSS driver licensed under more permissive terms would encourage GPU manufacturers to contribute more back to the original driver. Maybe it would and maybe it wouldn't. It certainly wouldn't discourage them from not contributing back.

Somehow I think that if they wanted parts of their drivers to be OSS they would have licensed them that way in the first place.

Same here.

I think most people don't realize what the world was like before open source and free software.

Just using someone's code or sharing code for free was pretty radical. Now it seems obvious that you can use a free compiler. A free Unix-like OS. That was not the case. And people forget that.

I think GPL, GNU toolkit, Linux are a big part of that. I think this is a much better and interesting world than it was before. That is why I support it.

It taught me how to code.

For me, it's a matter of goals. I think the GPL makes a lot of sense for creating a free software ecosystem, like GNU and Linux have done. But when I consider creating an open source project, that is just not usually my goal. Rather, I want my solution to whatever problem to be useful to as many people as possible, whether they're building something open or proprietary. Perhaps one day I'll create something that I envision fostering an ecosystem of derived works and many contributors, and I may well choose GPL for it, but until then, the more permissive licenses are more in line with my goals.

The GPL is useful when you want to build a community of open source code, but not useful when you want to work for someone else for free. Arguably, that's the whole point.

I'm not sure if you were summarizing or disagreeing with me, but I mostly agree with you, except that I think the "work for someone else for free" part is spin. It's not totally inaccurate, it just mischaracterizes the goals and practicalities of the work. The goal isn't to make something useful to commercial entities, it's to make something useful to anybody (or, more likely in my case, nobody). Working for someone also implies that they control the design and direction of the work, but one of the huge draws of open source work is that you are able to design and direct it however you want. If someone likes your design and direction, they can use it, but they can't tell you what to do.

Postgres seems to be doing alright wrt "community", and they're not GPL: http://www.postgresql.org/about/licence/

Sometimes it’s also about being able to reuse work that you’ve done elsewhere for other employers. My current employer is friendly to the idea of me open sourcing a lot of the ancillary work that I’ve done that may be useful to other projects.

Using the GNU GPL family of licenses would not even be on our radar. (It isn’t core code, and if we accepted contributions from elsewhere, it would then start to have the ability to taint our code.)

For me it's a matter of principles, and the free software ecosystem is a natural consequence of the adherence to (at least some of) those principles.

I think the GPL is most useful at keeping us honest, or if it fails to do that, at least it provides a definition of what honesty is.

In an age in which we are hugely dependent on software, this is a human rights issue.

What I don't get about this thread is why people who dislike the GPL would want it to fail here. I'm not the GPL's biggest fan, but why would we want to weaken copyright in this way?

It is not about weakening copyright. It is about reducing uncertainty about what the GPL means. GPLv2 is not very well drafted in terms of linking and derived works, and v3 is not much better. And software like Linux is stuck with GPLv2 pretty much forever.

Right, it's not immediately about copyright, per se. But the GPL relies entirely on copyright and if this ends up setting a precedent that you can't use copyright to enforce the (unfortunately vague?) terms of the GPL, that weakens copyright.

It's a good question if it does "weaken copyright". That would be a good thing, and a primer in thirty+ years, because it would equally reduce its breadth from proprietary applications.

By what I see now (from old and new, but cursory public information), most likely, VMWare has too big resources for a long protracted legal battle, and I don't know if Conservancy can stand to it. That's not the same thing at all.

Especially, it protects your right as an open source user, which I feel is a perspective rarely taken.

Frankly i find that the GPL do not distinguish between the two. Any user is a potential developer, given time and access to tools.

Hm, I would make the distinction, but I do see the point you are making. It ensures people can even become developers.

As a free-software user. Or a free software-user, take your pick. :-)

I generally find that the GPL hatred comes a lot from academic circles. Lots of university-produced software prefers BSD or MIT, and looks down on GPL/LGPL.

I guess when you're paid from other people's taxes, you don't care as much about perceived "fairness", or that businesses don't take advantage of your work. It may even be the right thing to do.

In fact, companies using your "free", no-strings-attached SW may be a bonus in that situation. It looks good on academic grant applications.

Of course, the word "free" here means "paid for by other people", as it often does.

I’m not an academic. I do not use the GNU GPL for my code (unless required to by other licences because I am deriving my work from someone else) and I do what I can to discourage people from choosing it “by default”. My dislike for the GNU GPL comes mostly from the dishonest marketing (“free”, “freedom”) and dissembling about the licence (it is “viral” and that’s a feature). I also do not particularly care to replicate the FSF’s peculiar political rant when I distribute software.

However, if you want to enforce “share-alike” semantics for what you write, and you want the widest composability of your software with other “share-alike” software, by all means choose the GNU GPL (prefer locked to v2 unless you really care about “TiVo”-isation, then lock to v3—never choose the “at your discretion, a later version” clause). If you want to discourage SaaS companies from forming around your software, choose the GNU AGPL. If you want to enforce limited “share-alike” semantics at the link boundary, choose the GNU LGPL•.

• Warning to people using GNU LGPL software, though: it doesn’t mean what you think it means. You still have to provide recipients of your combined software the means to relink your software with modified versions of the GNU LGPL libraries.

If, however, you write software to scratch your own itch and don’t care what people do with it after you’ve written it? Pick a different licence: MIT, BSD, Apache, Artistic, whatever. You can even pick the GNU GPL family of licences if you really want that, but at least know why you’re picking it.

I have not seen "GPL hatred" from academic circles; in my time in academia, I did not hear anyone disparage the GPL. In fact, I don't think most academics had a deep understanding of the difference between open source licenses. That luxury is possible when you're not running a business.

I do, however, associate GPL resistance (not "hatred") from for-profit businesses.

Fair point. "Hatred" is too strong a word.

Confusion about "why on earth would somebody NOT want to give away their software for free, for any use whatsoever?" is better. (Hey, it works for them!)

MPL will protect your code's openness as well, but still play nicely with other open source (eg, FreeBSD can pull in your code.) GPL serves to prevent anyone with other ideas on what open source means from collaborating with you

Interesting, I didn't realize FreeBSD will take MPL code. Do you have a reference or example of this policy? (I did a naive search and couldn't find.)

ZFS & DTrace are under a MPL-like license (CDDL), they ship with FreeBSD, and are in a "third party, probably violates the GPL" ghetto on Linux

I'll be honest, the GPL as-is is too obtuse to the extent it fails it's own premise of "This program is distributed in the hope that it will be useful".

I agree with the principle that if you make improvements to the original work you MUST contribute those improvements back, and I like the fact that the GPL protects and enforces this principle.

But other restrictions leaves much to be desired because they seem too idealistic to be feasible (ex. distributing your entire work under the GPL).

I don't condone breaking the GPL if you disagree with it, but I believe that free and non-free software should not be mutually exclusive as the GPL intends to be; real life is not black and white.

I think it's difficult to draw a line between improvements and derivative work (what your "entire work") could be. The GPL plays safe and requires redistribution of everything. I'd play safe too, with BSD I could end up seeing a company getting rich starting with my code and locking me outside of any improvements. I'm not so generous.

> It will protect your freedom as an open source developer.

It protects your freedom as a free software developer maybe. People that do not release under the GPL do not really benefit from it.

If use of GPL code causes more risk to the business than the costs/risks of developing in-house, then the corporation should choose such path. Nobody is forcing them one way or the other. If they use GPL, they have used a benefit that open-source community has provided them which they do in exchange for backward contributions that are intended to help other people/corporations using the same GPL code-base as well.

I like to believe that corporations would generally agree to the above, though some employees may accidentally violate open source licenses or other forms of IP without realizing (and thereby potentially putting the company's business or own IP at risk). Making employees aware of the licensing issues would help.

Interestingly though also, people go through such corporate IP training treating it as bureaucracy. Elsewhere too, I see people copying things from the Internet (e.g., images, music) without adhering to copyright laws. People click on "I agree" without reading, sign employment agreements without having slightest idea of what they says, and so on. I have myself tried to educate people about these several times on Hacker News.

Not to defend VMWare here by any means, fixing/mitigating the bigger problem would require increasing general awareness of IP issues at forums like HN and elsewhere, such that the corporations can sanely honor the IP licensing without high costs of employee training and maintaining a sizeable legal department.

It also seems to me that lawyers at big corporations can also help by making the legal processes easier. They are often so risk averse (to save their own back, not necessarily for the benefit of or on behalf of the organization) that they won't approve even reasonable IP requests sent their way.

The problem is that no one really knows what constitutes "safe" use of GPL code. Even in a highly-technical OSS-friendly community like HN, there are many different interpretations of what the GPL's restrictions actually mean. You can see this in action in these VMware threads, where there are strong arguments on both sides about whether VMware is violating the GPL.

That uncertainty plus the viral nature of the GPL means that there's no way to know for sure that you won't be forced to open your whole codebase at some point in the future. That's more risk than a proprietary software company is willing to take.

The only way to resolve this problem is to get legal decisions like this one. One way or the other, this decision will clarify the picture slightly. If we add enough other decisions, maybe someday we'll have clarity.

Until then, my company is solidly in the "Absolutely no GPL" camp.

There is a pretty clearly defined set of safe behaviors under the GPL. If you do not link to a program, run it in the same address space as your proprietary code, or use any internal data structures of that program, that is safe.

No one can force you to open your whole code base. They can only make you choose between opening the parts that do the unsafe things listed above (linking, running in the same address space, utilizing private data structures via some kind of shim that is supposed to work around the GPL), or they can force you to stop distributing the GPLed software.

  Until then, my company is solidly in the "Absolutely no 
  GPL" camp.
It's so stunningly easy to use GPLed software properly, and there are thousands of companies doing it. Just don't link it to your code, or try to do some kind of hack that avoids linking it while giving you all of the same benefits of doing so.

The problem with VMware is that they have been pushing all of the boundaries; rather than just taking the easy road and doing known safe things like ensuring that there's a clear separation between GPLed code and their code, or just releasing their code that is linking to the GPLed code.

The GPL has some fun semantics.

Take MediaWiki, it is GPL licensed (not AGPL), so you can modify it and run an instance of it without sharing your changes. Except, when someone accesses it, you are redistributing MediaWiki's GPL-licensed JavaScript files to their browser, so you do have to share your changes[0]. Think how many sites there are violating that without even realising.

Now think how you configure MediaWiki; you modify LocalSettings.php to (at the bare minimum) add the database username/password, and set the secret key.

This means essentially every site running a MediaWiki installation (or Wordpress, or effectively any other GPL-licensed web application) is violating the GPL, and are only getting away with it because no one has bothered to take legal action over it.

[0] http://lwn.net/Articles/609709/ (section: "JavaScript and the GPL")

That is not a problem with MediaWiki, but that copyright on JavaScript has not been acknowledged or enforced since it was created. Site like archive.org, spiders, and scrapers are regularly copying JS, and most JS libraries I have seen lacks any copyright information whatsoever. Many media sites gives out JS snippets for users to include (for inline video, images and so on), but do not add a license permission to include (copy) the JS.

I am not familiar with the inner workings of MediaWiki; how does modifying the credentials in LocalSettings.php change the JavaScript code?

You modify LocalSettings.php which creates a derivation of MediaWiki, or as the GPL puts it, "thus forming a work based on the Program". At this point you don't have to share the changes.

However, once you distribute the JavaScript files:

"You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License [...] These requirements apply to the modified work as a whole."

By modifying LocalSettings.php you have created a derivation. By redistributing the JavaScript files you have distributed part of the work and therefore must make the whole derived work available under the GPL.

Thank you; I misunderstood.

How does that help if the code we want to use is a library? A recent example was an image manipulation need. We found a great library that met all our requirements, but was GPL. Our other options were an inferior MIT-licensed library, an inferior commercial library, or spending the time to write our own.

If the thing you want to use is a DLL, how do you use it without linking to it? Writing some sort of external process and using IPC to talk to it might fulfill the letter of the license, but it's more work and less robust, and still violates the spirit of the GPL.

In the end, we picked the MIT licensed component and worked around the issues.

Your real complaint is that you can't use the GPL without the conditions imposed by it, not that those conditions are confusing or surprising.

You either decide not to use it, using another component with a different license or writing it yourself, or you release you code under the GPL.

That's not so hard, is it?

It's just like the question you get when using proprietary software. If you don't want to pay the license fee or abide by its terms and conditions, you find an alternative or write an alternative yourself.

The obligation to release your code is just the license fee for the GPL. If that's too steep for you, look somewhere else.

that was the right thing to do in that case.

You can make a shim in the gpl code that connects to a socket and communicates in json and then you avoid the problem.

I don't think that's true at all. Anyone who's spent any time at all in open source has a pretty good idea what their obligations under the GPL are. There may be corner cases debated on the internet by geeks who ANAL, but if those actually matter to your business, simply asking someone at the SFC or SFLC will quickly clear them up [0].

I'll quote LWN's summary [1] from the talk Bob Young of Red Hat gave at LCA this January:

He has long been a staunch advocate of the GPL, he said, but not because he has detailed opinions of the differences between it and other, similar licenses. Rather, he said, he learned early on that customers do not care about the details of free-software licenses, and that diving into an explanation of them was the fastest way to send a potential customer running toward the competition. ...

With the GPL, everyone knows what the rules are, more or less, so the debate is over quickly. They might not actually know the rules, he added, but they think they do, which amounts to the same thing. As a "business guy," he said, he is always trying to simplify the "pitch" - the GPL tells everyone "what we're about," so it has the greatest impact.

[0] We did this when we wanted to publish a royalty-free patent license tied to certain code, and wanted to be sure it would not keep people from using that code in GPLv3 projects. We were reasonably sure of our interpretation of the terms, but it's always nice to double-check.

[1] https://lwn.net/Articles/629413/

>The problem is that no one really knows what constitutes "safe" use of GPL

Outside of a business that can hire lawyers, it would be helpful for the FSF and sites like http://opensource.org/licenses/BSD-3-Clause to have examples right beneath the licenses. Something like: "Here is a JS plugin with BSD-3 here is another plugin based on it. Note how the license did/didn't change." "Here is an MIT license and an example of a company adding that code to their app with license intact on the app's about screen". Stuff like that. http://choosealicense.com/ is helpful, and part of the way there.

> Outside of a business that can hire lawyers, it would be helpful for the FSF and sites like http://opensource.org/licenses/BSD-3-Clause to have examples right beneath the licenses

They can't do that. The law doesn't work like that. The GPL FAQ[1] has to be deliberately vague about some things, because judges and juries themselves are vague, as are the laws they work to interpret. You can't have cut-and-dry examples of what can be done and what can't, because there can be many other externalities that could make a different case work in a different way, despite similarities to your proposed list of examples.

There are can be broad strokes, but the law is not a programming language. Recent xkcd comes to mind.[2]

[1] https://www.gnu.org/licenses/gpl-faq.html

[2] http://xkcd.com/1494/

The organizations with lawyers behind them won't, and quite can't, do it. They're not supposed to give legal advice in general terms, no one is.

Now, if individuals would be willing to work together to put up such a site, as a collection of information and opinions, with necessary disclaimers so that its limits are well-understood, and add examples, thoughts about them, critique and disagreements about them too, that would be different.

It's risky, but it's not that risky. I'm sure freedom-hating, source-code-hoarding Apple has made the analysis that making Xcode work with copylefted git isn't going to make them reveal their source code. Back when Jobs got pwned by the GPL during his NeXT days, he probably vowed "never again", but that doesn't mean Apple has stopped shipping GPL'ed code.

If Apple can afford to use the GPL, i.e. they think the GPL risk is low enough for them and won't make them free their entire codebase, then anyone can also make this assessment.

Apple has very steadily migrated away from using GPL. Every major release there are fewer and fewer GPL packages in their systems and they use old versions of tools to make sure they are still under GPLv2 - bash 3.2, rsync 2.6.9, etc, apparently out of fear of GPLv3. They are off gcc, they wrote their own SMB code to ditch Samba, and have gone out of their way to avoid GPL wherever possible.

They have their (imo, silly) reasons to dislike the GPL. Fear of having to release all of the source code for all of their products is not one of them.

They have their reasons, but its hard for me to judge whether they're silly since they haven't made their legal analysis public or publicly explained why they've chosen the course they have.

During the GPLv3 draft phases, they publicly expressed concerns against the tivoisation clause, which is not at all surprising. Apple wants to keep some control over their users' devices.

They seem to have no problem with GPLv2, but since they are using the last and aging GPLv2 releases of a bunch of GNU packages, they seem to be moving to non-copyleft alternatives purely because there are no more updates to the GPLv2 versions.

They had no apparent problem in adding git to Xcode despite their overall GPLv2+GPLv3 purge.

Jobs got pwned by the GPL during his NeXT day

That sounds like a fun story. What happened?

    Consider GNU Objective C. NeXT initially wanted to make this front
    end proprietary; they proposed to release it as .o files, and let
    users link them with the rest of GCC, thinking this might be a way
    around the GPL's requirements. But our lawyer said that this would
    not evade the requirements, that it was not allowed. And so they
    made the Objective C front end free software.

    Specifically, as I've spoken about in my many talks on GPL
    compliance, the earliest publicly discussed major GPL violation
    was by NeXT computing when Steve Jobs attempted and failed (thanks
    to RMS' GPL enforcement work) to make the Objective C front-end to
    GCC proprietary. Everything for everyone involved would have gone
    quite differently if that enforcement effort had failed.

And yet apple is basically responsible for creating the non-copyleft free objective c fronted for llvm. They could have just kept it closed source.

They're basically achieving their dream now with Swift, though. I don't expect them to ever release that source. I don't think there is any precedent for Apple releasing source code after the fact.

> That uncertainty plus the viral nature of the GPL means that there's no way to know for sure that you won't be forced to open your whole codebase at some point in the future.

That doesn't happen. A violator would be ordered to pay compensation and remove the offending code, though they could reach a settlement to do something else.

Ok, good point. But for a small- to mid-sized software company, a big fine or a big reengineering effort is pretty dangerous too.

Sure, but the vast majority of GPL violations are no more surprising than "shared source" proprietary code: Using each imposes certain obligations and no one is confused about the latter, I don't know why so many people think GPL is some kind of trick designed to trap you, it's not.

Is the GPL that toothless?

What would constitute having "teeth" for you? Mandatory jail terms even when parties are willing to settle? Execution by firing squad?

Well C levels executives are the only persons I support unconditional death penalty for. But mandatory opening of all source code will be more valuable than money.

That's the law, not GPL.

LGPL might be the best solution then (I personally would say LGPL should be used for everything, but that’s a personal opionion), because LGPL only goes viral through actual forking, but does not consider linking.

This is not quite correct. The “link wall” matters mostly in compiled languages, but consider a proprietary program Quux that links to the GNU LGPLed libhoge. When the owner of Quux distributes it, they must also (on request) provide recipients the source to libhoge and the ability for Quux to be relinked against a modified version of libhoge. They either have to be using libhoge.so or provide the object files and tools to link against a modified libhoge.a.

Simply providing the source of libhoge is not sufficient, and most people do not understand that about the GNU LGPL.

Linking is really not big a deal with LGPL, provided you're comfortable with the GPL. You might have to think a little harder if you're distributing statically, but given the goals of the LGPL and the technicalities of linking, its provisions are reasonable.

Yes, you have to provide the source and a build process for the (L)GPL'd software in question. That's standard for both the GPL and LGPL; no difference. From there, linking is just another step in the build with ld, or at runtime with LD_PRELOAD.

The LGPL is incredibly under-appreciated. Developers love to complain about GPL'd software, but who actually takes raw chunks of code, or entire applications, and re-packages it as their own? Most developers don't have a reason to do this -- the majority of our work with third-party code consists of interfacing with libraries and that is where the LGPL comes in handy.

If you're uncomfortable committing completely to the GPL but still want to support its basic tenets, try the LGPL.

This doesn’t really change the fundamental problem—most people think that all they have to do in order to be compliant with the GNU LGPL is release the (modified) source of the library under the GNU LGPL. The licence is (reasonably) clear that this is not the case, but this confusion is one of the reasons why it was renamed from the GNU Library GPL to the GNU Lesser GPL.

I personally recommend against using the GNU LGPL because of this confusion. If you want something that does what most people think the GNU LGPL does, use the MPL with a GNU GPL exception. (IMO, the MPL is a superior licence to anything in the GNU GPL family, but it is also not my licence of choice—that is the MIT-style licence.)

That's a problem with people, not with the LGPL. Would you sign a contract without reading it through? The same goes for software licenses. Suggesting an alternative license doesn't absolve people of the responsibility of reading the suggested text in the first place.

The language of most of common software licenses is straightforward; blindly using any license without being aware with their implications, especially in a commercial capacity, is... stupid.

Beyond that, we'll have to agree to disagree. If you're familiar with the four freedoms of the GNU free software definition [1], then licenses that are nonfree and non-copyleft do not ensure the four freedoms for users of the software. The (L)GPL has been carefully crafted to ensure those those freedoms. Although that might not matter to you personally, preserving those freedoms is important for many people.

[1] https://www.gnu.org/philosophy/free-sw.html

What is MPL with a GPL exception?

That’s the Mozilla Public Licence. If I recall correctly, it is considered incompatible with the GNU GPL (although it probably shouldn’t be) without an explicit clause permitting combination of MPLed software with GNU GPLed software.

The MPL is a superb licence that is under-appreciated. It usually acts similar to the MIT licence in that it never taints your software that uses MPLed software. It has, at best, a “modular” taint. If you depend on an MPLed library, you can combine that library without revealing your source at all. If you modify that library, you only have to release your modified source. You can even modify it so that it goes from proprietary -> MPLed library -> proprietary, but you have to document the nature of what you’re doing in that call out from the MPL and you may need to release that (I haven’t dealt with the MPL in years, but I think that describes that particular case).

GNU activists were loud enough for years (despite having had the exact same debate at the beginning of the licensing project) that ultimately Mozilla caved and dual-licensed its projects just to shut them up. (It didn’t help with some folks in the Debian community because of the constraints on the trademarks, but some people will never be satisfied unless you’re receiving your web pages by email in emacs.)

Thank you. I asked because the expression "MPL with GPL exception" wasn't clear to me.

You may want to know that in the past few years, MPL 2.0 was released, which embeds a so-called "GPL compatibility" by default. In fact, it's a relicensing allowed by MPL 2.0 licensor.

MPL 2.0 still keeps an option for the licensor's software to never be relicensed, but they have to specifically use an "incompatibility" clause.

I'd actually recommend MPL instead, because it enforces copyleft on the source file level rather than the library level. This makes it unambiguously applicable to just about anything other than Smalltalk, whereas the LGPL's terminology is slanted towards C/++ semantics.

I'd argue that business entities that realize revenue from restrictively licensing intellectual "property" (like VMware does) should bear the burden of the "high costs of employee training and maintaining a sizeable legal department." I would argue that if they don't want those expenses then, perhaps, they should seek revenue from another business model, and just release their software under Libre license terms.

While I agree, there is no harm in helping corporations reduce their burden under the assumption that the issue is happening without their consent. If a corporation is doing this on purpose or refusing to cooperate like sounds to be the case for VMWare here, I have little sympathies for them.

A good start would be to stop talking about "IP". Clumping together widely separate areas of law like copyright, trademark, patent, and trade secrets and casting it as something related to physical property is great if you want to deceive people, but very bad if your intent is to educate and help people understand the aforementioned areas of law.

> Clumping together widely separate areas of law like copyright, trademark, patent, and trade secrets and casting it as something related to physical property is great if you want to deceive people, but very bad if your intent is to educate and help people understand the aforementioned areas of law.

Ignoring the structure of actually related areas of law, as ditching intellectual property as a category would be doing, is great if you want to deceive people, but very bad if your intent is to educate and help people understand the law.

IP is a subcategory of intangible personal property, which is a subcategory of personal property, which is a subcategory of property. There are legal principles that are generally applicable to property, others that apply to personal (as opposed to real) property, others that apply to intangible (as opposed to tangible) personal property, etc.

IP isn't particularly closely related to "physical property" (which isn't a particularly useful category); nor does the term suggest that it is. Real property is in a separate branch from IP at the highest level of categorization of property rights, and tangible personal property is at the next level down. It is more closely related to things like debts and choses in action (rights to sue), which are, while not IP, also intangible personal property.

I get that Stallman preached and so it must be, but I've never understood why I should care. It's just a hamfisted attempted for the pro-GPL crowd to define terms the way they want, so that the debate can be framed in a friendly manner.

But you are failing miserably to frame the debate in any way whatsoever. If you genuinely want to help your developers understand copyright law as this subthread suggests we do, why needlessly confuse things? Why not frame it as what it is, a debate about copyright law? A lot of developers I work with have a really hard time seeing where one area of law begins and where another one ends, and this isn't helping. This is not just bad for the idealist in me, this is also bad for the entrepreneur in me, who has a harder time running a efficient and profitable organization as a result.

And there's no need to make it an us-vs-them issue. Nobody is defining terms to fit their agenda, criticism of IP is simply pointing to differences that are already codified in law. So if you don't like it, take it up with your legislators. You don't have to be either for or against copyleft to want say the big scary copy-r-word to your developers. Even the most ardent copyleft haters and copyright abolitionism idealists are shooting themselves in the foot when they make snide remarks toward lawyers about their "legalese", before they know it reality will catch up with them and they'll be hit with overly broad patent suits or some jerk will infringe on their trademarks.

Reasons are listed in the comment you replied to: they're different areas of law, with different mechanics. Details matter. Yes, it also helps the pro-GPL crowd. That's not an argument against it (nor for it). An argument against would be to argue how some similarity among them makes it relevant to consider them all together.

I wonder what will happen now that several game engines are given out for "free". Will employees start to accidentally violate those license agreement, forgetting to send the 5% revenue which the license require, and a few years in the future we get a major lawsuit where unreal has to sue a future minecraft or candy crush?

In one way, this seem to be suggested. How can we expect employee of software development companies to understand software licensing, copyright, or that downloading stuff from the internet doesn't automatically make it free-for-fall. On the other hand, the software industry seems to be very aware of piracy, that downloading stuff from the pirate bay is copyright infringement, and that its not free just because its on the internet.

I am thus torn to the suggestion that this is a education problem.

Please correct me or feed me link if I'm wrong, but I can't just donate/support this case if they don't elaborate more on VMware side's story. What has exactly happened? LWN's article sounds somewhat, well, 'unbalanced'.

In previous thread :

vmkapi? https://news.ycombinator.com/item?id=9153716

is kernel's source really 'built'? https://news.ycombinator.com/item?id=9155251

Ugh, "but nobody cares"? That's not in the original article. Please don't editorialize in HN headlines.

That said, it's vital to the future of free software that we keep legal precedent aligned behind the GPL. I donated and I encourage other people to donate as well.

I removed the "but nobody cares" part. However I think it is still very disappointing that the SFC has still not enough founding for this case, which might be the biggest test of the limits of the GPL in a court until today. Just drink one starbuck coffee less today and spend your money for something useful.

If you read the text carefully, an anonymous donor will match every dollar up till that amount. So our money counts twice (you can double the amount in the bar). Nowhere do I read they actually need that money to get started. The lawsuit has already been filed from what I understood.

In any case, thanks for removing the editorialized (incorrect?) part in the title.

Damnit, why do we have to deal with this PayPal bullshit in this day and age? American banks need to get with the times and let people wire money straight to an IBAN number. Also, why the hell do they need my address?

Is there a way of avoiding to make a PayPal account? I would like to contribute, but I don't want a PayPal account.

You don't have to make an account. But it's still annoying that you have to go through an intermediary whose only raison d'être is that banks still suck. When there is a much more elegant and federated payment protocol out there and in use outside of the US.

As one of the many who does not have a daily latte habit, this thankfully does not apply to me.

I just spent ten minutes reading through their web site, and their list of corporate sponsors is impressive. My question is, what relationship does sfconservancy have with the FSF? I support the FSF and there seems to be a lot of overlap.

The two are very similar. Conservancy has a pretty tight relationship with the FSF. Indeed, co-founder bkuhn is on the board of directors of both:



I rather like bkuhn, because he's a lawyer and a free hacker. His opinions on the GPL should be taken very seriously. I would only trust GPL-cowriter Eben Moglen himself more than bkuhn on GPL legalities.

The FSF does more advocacy and handles infrastructure for GNU packages. For example, they handle our GNU Octave donations. Conservancy handles similar tasks, plus legal services. They handle the donations of the other big project I like, Mercurial. Oh, and they do the same for git.

I also think bkuhn's writings are saying pretty much the same things that rms says, but in a different way that alienates fewer people, e.g. here is one on a fairly recent event you may remember:


Kuhn was executive director of the FSF 2001-2005 (as FSF's staff-and-board page notes). He's been at this a while.

a visit just to your welcome page at groupon.com attempts to install a huge amount of proprietary Javascript on my machine — lucky I use NoScript to reject it

That's an eye-opening perspective! For the most part I agree with your point about alienating fewer people but the above quote stuck out.

bkuhn is not a lawyer. Karen and Tony are, however.

Oops! Oh well. I'll let my ignorance stand in my original comment instead of trying to edit myself into looking good. :-)

He has a lot of knowledge in copyright law. In areas related to the GPL, corporate lawyers don't necessarily match that knowledge.

The SFC is more legal-oriented and focused on GPL compliance and lawsuits like this.

While they are more legally oriented, I don't think they're focused so much on licensing, they provide many services for their member projects: http://sfconservancy.org/members/services/

There's some discussion of the services that the Software Freedom Conservancy provides in the "Free as in Freedom" "oggcast" (http://faif.us/cast/2010/oct/06/0x00/).

My understanding is this is primarily about driver code. Is that correct?

One way out for VMWare would be to import FreeBSD drivers, although that wouldn't do the Linux community much good. From what I've read, VMWare does provide the source for the drivers, but not the core of their kernel, so Linux would still benefit from any improvements they make. If they switch to another set of drivers, that won't happen.

I can understand the principle of the position, but given that releasing the crown jewel core of the vmkernel as GPL seems unlikely, I'm not sure what actual benefits will be realized here. Something of a Pyrrhic victory.

It's not driver itself but clever module that VMware developed so they can use linux drivers. (In prev thread : https://news.ycombinator.com/item?id=9153716) But VMK API is not just wrapper for linux drivers. You can specifically write device driver for ESXI, like GPU : https://developercenter.vmware.com/web/dp/sdks

According to LWN's article they found linux kernel's source (radix tree, scheduler) https://lwn.net/SubscriberLink/635290/e501ce0264c182f4/

But it's not exactly clear if those codes were actually built and shipped with product according to 'former employ' https://news.ycombinator.com/item?id=9155251

This is all cluster*uck of wild guessworks unless they elaborate more on VMware's response or VMware makes formal statements on their position. What a waste of time

> "According to LWN's article they found linux kernel's source (radix tree, scheduler)" [1].

Presumably when LWN article states "code can be downloaded from VMware's web site" they got it from the open source tab on VMware vSphere's download page [2].

[1] https://lwn.net/SubscriberLink/635290/e501ce0264c182f4/ [2] https://my.vmware.com/web/vmware/info/slug/datacenter_cloud_...

As per the FAQ, this is much more than only drivers (http://sfconservancy.org/linux-compliance/linux-vs-vmkernel_...). It both about the internal code that makes up the vmklinux kernel, and drivers. The radix tree implementation for example is unlikely provided through a driver api.

The bigger question I think is how a non-technical judge will think when presented with a description of the vmkernel. Does it constitute one work, or is it a larger number of isolated small works that simply happens to work together in a independent fashion? Are the drivers in question separateable from the kernel and the finish "product" that wmware sells? Are wmware following what can be reasonable understood as the intended use of the licensed work?

Can someone fix the title? Putting words into sfconservancy mouth like that only add confusion.

For the people coming later, the title originally read "The time has come to stand up for the GPL and nobody cares". Author fixed it as said here: https://news.ycombinator.com/item?id=9156839

Maybe the time has come to stand up to the GPL's insane anti-dynamic-linking nonsense.

Dynamic linking is mere use.

If you say that "this cannot be called from certain kinds of programs", you're restricting use, not merely redistribution.

That is because such programs can be shipped to users without including the GPLed code (thus without redistributing it), so that the users then instruct the software to load the GPLed code that they separately obtain.

Any GPLed program which isn't a shared library could be turned into one, and it could be turned into one by a project which completely complies with the GPL.

For instance, if I'd like my proprietary program to be able to use Bash without spawning a process, I can make a public "Libbash" project which turns Bash into a library (without switching the license to LGPL, which I have no right to do).

In my proprietary program, I can test for the presence of Libbash on a system, and use dlopen or LoadLibrary to use the thing if it is present, otherwise fall back on spawning an external process. If I do this, the crazy FSF zealots think I'm a violator, even though I didn't ship a single line of GPLed code with my program.

So, whereas the jury is out on P = NP, but to me, it is clear that GPL = LGPL. :)

What would be the point of the GPL if you could just bypass it by dynamic linking?

If the GPL is regarded as inapplicable to dynamic linking, then its purpose is the same as that of the LGPL.

Independently of the linking issue, the GPL prevents redistribution in non-source-code form.

It ensures that users have access to the source code of the covered work, and can modify that code, share the modifications, and build the code to produce a component which replaces the one which the proprietary program uses.

Continuing with the fictitious "Libbash", it means that users can patch or upgrade their "Libbash". My proprietary program will use whatever version they have installed, just like it will use whatever version of /bin/bash they have installed. If I were to statically link "libbash.a" into my program, then there would be a violation: users cannot upgrade or replace that. And, of course, it necessarily must be shipped with my program, being an inseparable part of it, so I cannot avoid redistributing.

Dynamic linking is no different from command line invocation. Having it embroiled in the licensing rhetoric is a pointless mingling of C-and-Unix technology concepts with freedom concepts.

Just so I understand, you don't think the GPL should exist or be used, and should be replaced by the LGPL, correct?

Rather, I think the difference between them hinges on use restrictions. They should both be replaced by a license which is simply silent on the issue: a license which simply forbids the redistribution of the Work in such a way that it is combined into a single image with incompatibly-licensed works, but permits every conceivable use.

By the way, I think even static linking is fair, if the program is distributed as separate images, and only linked as a part of use. (Which is why the LGPL is silly.)

That is to say, suppose we have a "Libbash" library version of Bash. I could ship my program such that when the user installs it and runs its wrapper program, it statically links itself prior to execution. If it finds a "libbash.a" on the system, then it statically links that. Otherwise it falls back on linking to its own "libbash-stub.a" which works by spawning a process. Since I didn't redistribute any part of Bash, I cannot possibly be infringing on any copyright.

According the LGPL (if that were the license), I would be infringing because of the specific linking technology that is identifiable as "static". (Though it is de facto dynamic by being delayed as long as possible, happening on the user's target machine).

Yet note how the user has full rights over "libbash.a". The user can update to a new version or make local modifications, and rebuild this. When the user runs my program, it will notice there is a newer "libbash.a" and re-run the static linking steps.

From the point of view of copyright, I think this scenario may not have the results you want: the user is effectively preparing a derivative work. In fact, your wrapper is.

Preparing a derivative work is an exclusive right of the copyright holder, meaning they can prevent it or place conditions on it. It's not only distribution.

Now, no one (afaik) in the free/open software communities will focus on the user here, they may focus on the wrapper/Libbash writer: if the work you're creating is a derivative work, then it is within the scope of copyright of the parts.

> VMware, a company with net revenue of over $1 billion and over 14,000 employees...

Wow. I did not know they were that big.

I'm torn on this VMWare issue. On one hand I want GPL to be upheld. On the other hand if they win it will mean the end of most corporations using GPL code (possibly any open source licensed code that isn't as liberal as MIT or something). These megacorps are not going to expose themselves to a risk like this. I know from experience as we already are removing OSS that we feel could be a liability and replacing it with solutions that in some cases are not as good technically but legally less of a risk.

IT won't be good for the OSS ecosystem to have thousands of devs all the sudden stop contributing at their day jobs when the code is replaced.

On the other hand if they win it will mean the end of most corporations using GPL code

[citation needed]. I'm very irritated by this FUD "Just think of the jobs!" line of thinking.

Companies are aware of the "license risk" surrounding GPL today. They know what they can and can't do -- services like BlackDuck exist mainly to assess this "license risk".

Any sizable company using GPL is doing so because it helps their bottom line, not because they have their fingers crossed praying that it won't get enforced.

I think hyperbole was pretty obvious in my original comment but I don't have a citation other than experience. We're working hard to remove GPL code in some of our products.

> We're working hard to remove GPL code in some of our products.

Reading that, I am instantly wondering if you are currently infringing someones copyright and are now working hard to hide the crime?

There is alternatives of course. Are your product a prototype that never got shipped to a customer? Are the product at the moment gpl'ed, witch corresponding source code provided to the customer, and you want to move away to closed source in the future? I know any of the three scenarios could be the situation you are describing.

If a game company can understand the unreal license and know that distributing a game based on that engine require them to pay 5% of their total revenue, other corporations can understand the concept that they got to release the source code of programs based on GPL licensed software.

There is a reason why almost every AAA game now days comes with a long list of licensed works in their credits. The competition is just that impossible to fight if they decide to write their own xml parser, their own font types, their own everything. This will happen to any aspect of the computer industry that has enough competition, so the question about using third-party licensed software, be that of any license, is a simple question about competition.

All they have to do is comply with the terms. They have had many chances to do so. Really, I don't think other companies have to feel threatened.

In fact, I worry that they will feel emboldened when they see how long they can violate the terms without repercussion.

> I don't think other companies have to feel threatened.

Many CTOs of large enterprises have, let's say, a less nuanced view of the GPL. Their concern is that "just complying" would mean the complete and total revelation of all of their code, all of their trade secrets, and thus all of their competitive advantage. They believe, wrongly, that there are no other ways to come into compliance than to do something they believe would kill their business. Cases like this are accelerants on those flames of Fear, Uncertainty, and Doubt.

I'm sure they could have licensed the equivalent code from someone like Oracle, but the CFO would have probably balked at the costs. VMware received an extremely generous offer from Hellwig and his co-contributors, at zero price, even. Not honouring their side of the deal is no different from defrauding any other of their contractors.

I'm actually agreeing with you. The trick is that the remedy for defrauding a vendor is clear: you pay a fine. I've worked directly with folks who believed that the only remedy for a GPL violation was completely turning over their entire business to the public domain. That fear kept them from even touching GPL'd code, including in ways that would be completely compliant and beneficial to everyone involved.

CTOs are not unused to contracts and licenses. I refuse to believe that they are incapable of dealing with outside entities and coming to terms. VMware is just being willfully rotten.

Hogwash. Corporations use GPL because it saves time and furthers business needs. However, many/most/some corporations ignorate the strictures on the use of this intellectual property and this is wrong. Corporate compliance with the license on the GPL will not impose a burden that obviates the benefit. What it may do is force the individuals or management consultants at a particular corporation to coordinate with internal attorneys when using other people's work. Which they would do with any externally licensed IP. Yes, it may encourage a bit more NIH mentality, but it will be just as wrong.

There's a long history of companies being sued over GPL. For instance, that's how we have OpenWRT. This lawsuit won't change many companies' attitudes. Either you're a company who's already embraced GPL and figured out how to make money with it, or you've rejected GPL (and if anything, in the latter group, some will start paying more attention to contract law).

If EMC wins the lawsuit, I'd seriously consider never releasing open source code again, and I'm sure many developers would feel similarly. There are many jobs that exist only because of open source. The damage done by EMC winning this lawsuit would be substantial. And for companies who pay for their employees to develop GPL code, you think they're going to be happy if competing companies start absorbing their code into proprietary systems?

That seems a bit drastic. If the GPLv2 doesn't do what you want it to do, perhaps another license will work better?

Affero GPL is the only license that has made sense to me business-wise. If EMC prevailed and it was based on some flaw in the GPL, then fine let's correct it and everything would be (eventually) better. But if the linking provisions or other fundamental theories in the GPL are found the be unenforceable or fatally flawed, it would give me pause. I'd have to research the ramifications and whether it's a precedent that would defang the license in Germany and effects globally. I think most of my customers would be ok with some kind of commercial license that also provides them rights over the source itself. If GPL is a risk, I'd ditch it. I have no enormous legal budget, so if companies start thinking they can win GPL lawsuits, it's not worth it.

Perhaps this comment comes from a position of ignorance, but what's all this about "risk"? Complying with the GPL is simple. If I understand correctly, VMWare wouldn't have been in trouble here if they'd have just put a link in their docs to the effect of "ESX distributes Busybox, the source for which can be downloaded here (link)".

And even if you screw up and forget the link, the lawyers don't descend on you like buzzards - you get tapped on the shoulder and asked to fix it, which is a pretty simple matter too. The lawyers don't come out unless you stall and act in bad faith like VMWare has done.

If I understand correctly, VMWare wouldn't have been in trouble here if they'd have just put a link in their docs to the effect of "ESX distributes Busybox, the source for which can be downloaded here (link)".

This is about more than Busybox. Their 'vmkernel' proprietary code seems to rely heavily on code from the Linux kernel, up to the point where it may be a derived work:


In other words, their hypervisor could violate the GPL.

Of course, that does not change the point. If you want to benefit from GPL-licensed code, you also have to play by the rules. If the rules are never enforced, companies will systematically violate the license, as we've seen with many Android OEMs.

This chain of comments illustrates the reason that companies think the GPL is risky. Even in a highly-technical OSS-friendly community like HN, there are many different interpretations of what the GPL's restrictions actually mean. That uncertainty plus the viral nature of the GPL means that there's no way to know for sure that you won't be forced to open your whole codebase at some point in the future.

Suppose I grabbed a copy of the sources of NT, and then started modifying it and released a product based on that, without getting licensing from Microsoft. Do you think people would be "oh, this is why using Windows is risky .. there are many different interpretations of what the MSFT license means"? Of course not.

There's a difference between "not having a license" (in which case copyright applies, in which case you lose, simple), and having a license who's terms are ambiguous and not fully legally tested.

Okay, thanks for that. I hadn't read too much of the details on this yet.

That said, I wonder how this will end up? I lean towards VMWare just putting their big boy pants on and releasing the VMKernel source.

Speaking purely subjectively, they don't have any "competitive advantage" to defend anyways.

The risk that I was speaking of specifically comes into play when you use GPL code along side other proprietary code. Potentially exposing the need to release your proprietary code to comply with the license.

Since it seems we're going down this path regardless, I sincerely hope the Conservancy sends a loud, clear message that they attempted to resolve this issue amicably and reasonably. We must create the impression that violating the GPL is punishable, but only as an absolute last resort. We need to come out of this looking rational, fair, and helpful: our first goal is compliance, not litigation.

The Conservancy has good people and provides valuable services to the F/OSS community. I trust they've weighed these considerations before deciding to act.

Is the GPL a contract? What is the 'punishment' possible? I thought civil suits could only result in money for damages. For instance, its not possible to make VMware do anything; just to fine them.

Its not clear how much money, nor clear what damages occurred. How does this usually play out?

> Is the GPL a contract?

It may or may not be; I think its usually seen as a gratuitous license, but I've seen some argument that it is a contract, and which it is may vary by jurisdiction.

> I thought civil suits could only result in money for damages.

This is inaccurate.

> For instance, its not possible to make VMware do anything; just to fine them.

Civil suits can result in orders for specific performance of duties under a contract, they can result in money damages, and they can result in permanent injunctions and other measures that mandate or constrain behavior of the parties. Money damages are the most common thing in civil suits, but not the only possible outcome. (And, of course, the possible outcomes and what the rules are for them all vary by jurisdiction.)

> Is the GPL a contract?

(IANAL) The GPL is a license, which is similar to but different than a contract. It says "you may use my IP under these circumstances (and I can't sue you even if I change my mind)". If one "violates" a license, one is simply using IP without permission. Incorporating GPL'd code contrary to its terms (and with no alternative license from the IP owners) is no different than copying a chapter or three from a book and releasing it as your own.

> The GPL is a license, which is similar to but different than a contract.

"license" is an overlapping category to "contract". Some licenses are also contracts, some licenses are gratuitous. Anything that gives the receiver permission to do something that the issuer has the exclusive right to control (such as, in the GPL, the right to do things which are exclusive to the copyright holder under copyright law) is a license, whether something is a contract depends on whether there is offer, acceptance, mutual consideration, etc.

Read the Conservancy FAQ:


Contacts and attempts to resolve this amicably with VMware have been going on since 2012.

I think the saddest part is that it exposes big companies like this as being giant, whining babies. They knew up front what using the GPL software would require them to do. And it's really not that hard to comply with the license.

I gave, if you care you should too.

Unfortunately, this will come down to who has the better resources with regard to the legal costs involved. If VMware decides to really fight this in court, they may prevail, regardless of truth. IBM had an army of lawyers that were able to fight of the SCO case regarding Linux code coming from AIX. I don't know how great the resources that the Software Freedom Conservancy has.

Can I send them Bitcoins?

No. See https://news.ycombinator.com/item?id=8705036 from 90 days ago :

> I don't see in there all the accounting configurations you'd need to integrate [a bitcoind installation] with Conservancy's accounting system, nor all the legal research to figure out how it impacts Conservancy's Form 990 filings, nor all the workflow code to make sure transactions are auto-imported, identified with people who want to be identified, so they can be sent their t-shirts.

I believe there are people who will convert it for you and forward the results to SFC.

> I believe there are people who will convert it for you and forward the results to SFC.

If anyone wishes to trust me (does karma count?), I could do this. Any coins to 16ctFcjpXJSuLSfX23sdPve3eLFGd17mco sent within 7 days of this post (so from 2015-03-06 until 2015-03-13) will go directly to the VMWare suit by the Software Freedom Conservancy. Market price is used from bitstamp. If you want a confirmation, email me the source address at sfcvmwaredonations@lucb1e.com and I'll message you how much I donated exactly in dollars.

I would also prefer to have this option.

I confess I've never paid much attention to GPL, and when I think about this I find one particular reason. I don't understand the harm. What bad thing happens when the GPL is not obeyed? I think I understand that the answer is that your generously donated code (Christoph's in the article) may then be taken into private hands and used to benefit a commercial company. Is that the harm? But if so, what's the harm? You donated your code, didn't you? I'm asking in all sincerity: what specific asset or benefit have you lost when someone takes your GPL code and uses it in their commercial product?

The article seems to get upset about this event: "They took Christoph's code from Linux and modified it to work with their own kernel without releasing source code of the resulting complete work." So that's the harm? But how is that harmful? How does that hurt Christoph or anyone else?

Perhaps the answer is: "Christoph worked so hard on it, and gave such expertise and so much time, and now his work is providing benefit to others with no further benefit to himself." I would certainly agree in general that if you work hard on something and someone else steals your work and benefits from it instead of you, then this is a clear and deplorable harm. But if you give your work away so that people benefit from it in general, then you have agreed that your sole benefit is not at issue and that you don't expect compensation for the work. If someone then uses the work for their own financial benefit, or modifies it without giving you the changes back, what has that deprived you of? Surely that's not taking away anything that would have been coming to you had they not done it. Is it?

Where's the harm?

He didn't give it away. He licensed it under a specific license he chose and people have to accept if they want to use his work.

Say that I help you with some endeavour of yours, and that I do that provided you do the same with an endeavour of mine. You accept, so I help you, then you decide to not help me. The harm is that you have extracted value from me by promising to me something you didn't deliver.

In the GPL licensing case, the harm is that he choose to provide his code under GPL provided those who use it would put changes and derivative works under GPL too.

In particular, this means that VMWare choose to use GPL code knowingly they would have to share the result but they didn't. The harm is much bigger in that everybody who is happy with GPL code can't use VMWare's code. That's a lot of people.

The problem is ownership. Behind the GPL is a (traditional) view of ownership, where if you own something you can do what you like with it. Own that table? Well you can sand it, smash it, burn it or use it. This is your house? Well you can do what you like with it.

Now, when it comes to IP that notion of ownership has all but been thrown away. 'Owning' a song entitles you to some rights, often only valid for a period of time, and subject to arbitrary modification later on.

When it comes to software we're often even worse off - we can't even find out what it does. The GPL is an attempt to enforce a stronger notion of ownership, so that if you have the software in your possession you can do whatever you like to it. The source code is open, you can modify it, or anything else.

So there's the harm. The harm is to you. When you're given a piece of software you have limited, if any, ability to find out what it does, to modify it to suit your needs, to modify it to play around. And yet you 'pay' for this software. You're paying to acquire a set of limited rights, often mutable and on the whole useless (as rights).

You might say that's all a bit theoretical. But all the sony rootkits, Lenovo MITM attacks, credit carf theofts, etc. - they all happen because no one can see what the software they "own" does.

I dislike the way the GPL works - copyleft enforcement - the law should simply be changed. But the principle seems about right.

It would be more useful instead of speaking in terms of different degrees of ownership to speak specifically in terms of what is owned and what isn't. In GPL software, you not only own the functioning application but you own (within certain privilege restrictions) the source code, and therefore can modify that source code to produce a new, different piece of software that you also own.

Compare this to your song analogy. A GPL'd song would also provide the original production project "source" - the raw studio recordings of each track, the digital audio workstation file project that compiles it all together and renders the final single stereo track. You could then modify the song by removing individual elements, changing the mix, changing the arrangement, etc, and render out a new stereo song. Very few artists actually do this, because it's a weird idea that somehow the software industry has latched onto that no other sections care much about or think is particularly important, because they haven't been bitten by this strangely worded "freedom" bug.

Or the table analogy: not only do you own the table, you own the design documents, the factory floor plan, the knowledge of what saws and blades and bolt suppliers were used to assemble it. You can then use that knowledge to produce new tables with modified designs. Etc.

In other words your physical goods analogy falls pretty short unless you separate it into the functional object or IP and the original, complex information that allows one to actually produce modified versions of that object or IP.

You are completely ignoring the explicit harm that is central to the GPL.

Namely, that if everyone behaved the harmless way you and VMWare describe, there would be very little/lower quality GPL software. And, that GPL contributors give their time and code away on the condition that those who benefit from it give back in the form of contributions and openness instead of money.

GPL coders give their code away with conditions, and VMWare is breaking that condition. If VMWare wants to get code for free with no quid pro quo, then there's BSD.

EDIT - Personal context - I've always liked MIT/BSD license. I just understand the GPL and its intentions, too.

>If someone then uses the work for their own financial benefit, or modifies it without giving you the changes back, what has that deprived you of?

The GPL is intended as a license that improves software available to the public. By not complying with the license they agreed to, VMware is depriving me, you, Christoph and the general public from software which we have the right to use, modify and share under the GPL (and which just happens to be coded by VMware).

Imagine a contract that says "You owe me 5% of the revenue you make in any product derived from my project." This is reasonable, it is how royalties work for many different things and it's a pretty battle-tested model. I think we can all agree that if you sign such a contract and then don't pay the royalties, then you can reasonably be taken to court for failing to comply with the contract, and forced to pay what you owe, plus damages to keep you from trying it again. The GPL is similar to a contract like that, except that it says "if you agree to redistribute your derived works under this same contract, you don't owe any royalties at all." So it's similarly reasonable to be taken to court for failing to comply with those terms, and forced to pay damages.

So I think the "harm" is that they failed to adhere to the contract they made with him. That may not be satisfying to you, but that's certainly enough in itself for this to go to court. Contracts is fundamental to how modern societies function—courts enforce that when parties agree to legal terms, those terms are adhered to.

The harm is in how VMWare's customers are being denied the very generous conditions Christoph extended to VMWare and everyone else who benefits from using that code. He didn't write it for VMWare, he wrote it for everyone.

There is nothing wrong with using GPL code in commercial products, but why should VMWare be allowed special privileges to it? Everyone should be able to use the code for their own purposes, whether commercial or not, on the same generous terms.

IANAL. I'm not a GPL expert. But here's my reasoning:

1. Code written under the GPL is value created for public consumption. VMWare is violating the spirit of reciprocity by benefiting from that value, creating more value on top of it, then not releasing their additions for everyone to benefit.

So it's not about Christoph's benefit, nor the company's. It's about our benefit as the people not involved directly in that transaction.

2. I imagine copyright gets really hairy if you write something, someone comes along and modifies it over a period of a year or two, then claims ownership. I imagine the GPL helps clear that sort of thing up as well.

Seriously? "modifies it without giving you the changes back, what has that deprived you of?"

Uh... it's depriving you of the changes? e.g the kind of changes a big, rich company can afford to pay people to do to free software.

The specific issue here is that he did "give it away," but not for free. He gave it away under the terms of the GPL as its license. If I give you something, but only under a particular agreement, and you break that agreement, then there are usually some form on consequences, no?

If he were really giving it away for free with no strings attached, then he would have used something like a CC license, which was specifically designed for that purpose.

I confess I've never paid much attention to copyright law, and when I think about this I find one particular reason. I don't understand the harm. What bad thing happens when copyright law is not obeyed? I think I understand that the answer is that someone's generously written code (like, perhaps, VMWare's) may then be taken into private hands without payment and used to benefit a commercial company or private individual. Is that harm? But if so, what's the harm? You wrote your code, didn't you? I'm asking in all sincerity: what specific asset or benefit has VMWare lost when someone takes their code and uses it for a commercial product or for private use without paying them?

Some people seem to get upset about such events: "The lousy crackers copied this software/game/movie and removed the copy protection, then distributed it for free no the internet. Nobody paid us!" So that's the harm? But how is that harmful? How does that hurt VMWare or anyone else whose copyrighted material has been reused without their permission?

Perhaps the answer is: "The author of that worked so hard on it and gave such expertise and so much time and now their work is providing benefit to others with no further benefit to the author." I would certainly agree in general that if you work hard on something and someone copies your work and benefits from it instead of you, then this is a clear and deplorable harm. But if you sell your work for money so that people who pay can benefit from it in general, then you have agreed that your sole benefit is not at issue and that you don't mind if other people use it. If someone then uses the work for their own financial benefit, what has that deprived you of? Where's the harm?

- - - - - - - - - - - - - - -

To state it plainly, instead of simply using parody, Christoph wrote some code, and under copyright law has a right to control how people use it for at least the next hundred years or so. Some people who write code like that say "I'll let you use it if you pay me money." Christoph said "I'll let you use it if you let ME (and everyone else) use any modifications you make or things you build from it." Allegedly, VMWare used Christoph's code and DIDN'T pay him (they did not pay him money NOR did they adhere to the specific behavior that Christoph had requested). It is "harm" only in the sense that "stealing" software or music or movies is "harm".

Do you consider plagiarism and/or freebooting to be harms? If so: that's the harm here. If not, why not?

It's worth noting that plagiarism is a separate concept, and not really a legal issue (unless of course you are bound by contract not to plagiaries, which I'd imagine most academics and journalists are in their employment contracts). This is also why the MIT license needs an attribution clause.

Karl Fogel proposed an experiment, that legislators introduce a bill proposing a right to attribution, essentially making plagiarism illegal, to gauge the media industry's reaction. His prediction was that they would balk at the proposal.

Not the OP, but I think that question moves the goalposts.

The states involved in this dispute recognize the idea of intellectual property and protect it with copyright. Questioning the validity of intellectual property as a concept is a very different from the question at hand.

To wit, an author in Germany should be able to expect that his copyright would be respected by other entities in Germany, as they're all bound by the same laws. Regardless of our feelings regarding the moral validity of copyright or intellectual property.

> But if you give your work away so that people benefit from it in general, then you have agreed that your sole benefit is not at issue and that you don't expect compensation for the work.

Two things. First, you aren't giving your work away. This premise is false. You are licensing your work. It's still yours. Without that license, it's yours. You are exchanging the right to use that work for certain conditions that must be followed. You expect to be compensated.

> what specific asset or benefit have you lost when someone takes your GPL code and uses it in their commercial product?

This can be rewritten as such:

"What specific asset or benefit have you lost when someone takes your copyrighted code and uses it in their commercial product?"

The answer for that is the same answer for the question you asked.

Many pirates and now days politicians do ask this question about copyright. Where is the harm when someone who would never have paid for the product downloads a copyright work for private use. Its not like someone lost anything, and there is by definition no lost revenue. Where's the harm? Surely that's not taking away anything that would have been coming to them had someone not pirated it.

I think a future which this is universal understood by everyone will be one which GPL won't be needed. If there is no copyright or patents to protect, the argument against releasing source code evaporate like a bad idea. Until that day, the answer to "Where's the harm" is two legal words: Copyright and patents.

What if VMWare took the GPL code, improved on some features and did not release it.

Christoph, having not seen the improved code, made changes to the GPL code that ended up somewhat similar to what VMWare did but hid it instead.

VMWare decides to sue Christoph. I am sure the basis for this lawsuit would be weak but VMWare may not care since they have the money while Christoph does not.

I recall the battles SCO did to Linux as you can read here: http://en.wikipedia.org/wiki/SCO%E2%80%93Linux_controversies

This is why I believe it is always important to defend your license because who knows what happens down the road.

You have a fundamental misunderstanding about what the GPL license embodies, the harms it intends to mitigate and the motivations behind using such a license as a opposed to the BSD or MIT license which capture your less nuanced sentiment.


Where is the harm in downloading music and movies of bit-torrent?

Or installing a hacked Photoshop or Windows?

Just because Christoph decided to sell his code for something that isn't money, doesn't mean you can use it without paying. In the case of GPL, you pay with the source code you add to the software.

Christoph has a consultancy business. He uses his GPL contributions to help advertise his abilities.

If companies take his work under GPL and don't contract with him to write new code, they are damaging his income.

You want programmers to earn a living don't you ?

Most other commenters have answered this well enough—the harm is in breaking the licence under which you accepted the code. The use of the GNU GPL on code is explicitly not a donation of that code; it’s a contract attached to the code which has both technical and social implications. (It is also a political statement because of the preamble text, but that is neither here nor there for the purposes of this issue.) So Christoph did not donate his code; he put it out for use with specific terms and conditions. The only way to donate your code for any use whatsoever is to declare it in the public domain. This doesn’t work for some jurisdictions—Germany does not allow for this. This is why SQLite’s license page‡ talks about purchasing a licence (see more on the mailing list°).

http://sqlite.org/copyright.html ° https://www.mail-archive.com/sqlite-users@sqlite.org/msg2437...

There are two points that most people confuse themselves on with respect to the GNU GPL, and they’re captured in this sentence:

> …If someone then uses the work for their own financial benefit, or modifies it without giving you the changes back, what has that deprived you of?…

First, the GNU GPL says nothing about financial gain from the use or modification of the work in question except in terms of mere transmission of the work. That is, when you exercise your right under licence to a copy of the modified code, a company cannot charge you more than it costs them to prepare and send you the modified code. This particular clause comes from the point where the shipment of tapes was used to transmit code rather than the network, because both tapes and shipping had tangible costs.

Second, the GNU GPL says nothing about contributing changes back to the original author. What is required is that people who have (legitimately·) obtained a copy of the modified software are guaranteed the right to request a copy of the modified software’s source code. Further, those people are explicitly permitted under the GNU GPL to further modify and/or redistribute the code and/or their modified versions. The recipient is also permitted to make financial gain of their own, if they choose. (Under the GNU GPL v2, nothing prohibited those modified versions from being useless because you could not load the modified versions onto the target hardware. This is why the GNU GPL v3 has what people called the “TiVo” clause.)

· This leads to the reason for the GNU AGPL, after a fashion. If a company were to make “Lilypond as a service” with their own private modifications, they are not required to either contribute those modifications back to the original project or to their customers, because they are not distributing the software. Someone who hacks into their servers hand obtains the modified Lilypond binaries does not have the right to request the source because the LaaS company did not distribute the software. The Affero GPL is the version of the GNU GPL that requires service companies to make available even the private modifications because it redefines distribution as use, in this case.

I’m not a fan of any of the GNU GPL licences•, but every software developer or company that uses open source or GPLed software needs to have a better understanding of the licences that they are interacting with. Most of them are written in fairly accessible English—and if they aren’t, you probably shouldn’t be using them.

• The cooption of “free” and “freedom” for licences that are highly restrictive is detestable. The effect of these licences may be desirable in a number of cases, but there’s a level of doublespeak and disingenuousness around the GNU GPL family that turns me off.

They violated the license. That's the harm.

I believe the donation counter bar is not working in real time. I just donated and it didn't move. So don't say that nobody cares, I think a lot of people care. Give it some time.

I encourage you to donate now!

I think long-term GPL days are numbered. Corporations are going to see that the code is not worth the politics. Take a look at GCC and the whole debate about exporting an AST. Once there was a suitable alternative (clang) with a more liberal license, companies flocked to it, and clang is now eating GCC's lunch. One can speculate what would happen if Apple really decided to push the BSD kernel like they did clang. I suspect, that a lot of companies doing Linux development, would start contributing to that BSD once it had reached a certain level of parity with Linux.

Donated. Please do so as well.


I just donated $10. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $15. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $20. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $25. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $25. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $30. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $40. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $20. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

I just donated $250. If there is nothing to stop large companies completely ignoring the GPL then what good is it?


Honestly, I think the best way to promote open source licenses over free software copyleft licenses is to make sure the GPL has obvious, proven teeth.

That way, commercial companies that don't want to risk the successful lawsuit and just want to build on existing code will go the MIT/BSD route exclusively; and GPL can remain in the academic and the ideologically-driven free software sector where it's really much more suited.

If a company then wants to actually be a free software-based company, more power to them, but there'll be a lot less stumbling into that situation and half-assing the ethics of it like we see now.

If nothing else, giving the GPL teeth will force the confrontations and precedents that finally define the boundaries of the copyleft concept and let people make more informed choices.

The Conservancy isn't just this lawsuit.

They primarily provide truly fantastic infrastructure and support for major projects like Git, Mercuial, Boost, PyPy, Busybox, Selenium, and more. For example, the Conservancy is a registered 501(c)(3) non-profit, which allows donations to those member projects to be tax-deductible in the United States. They also hold assets on behalf of projects, provide basic legal services to members, and assist in contract negotiation when a project needs to, say, rent a venue for a conference.

They're also the organizational home for Outreachy, which was formerly known as the Outreach Program for Women and run by the GNOME project.

I donated $250 last year to support those efforts, and I plan to do the same this year.

More info on the services provided at http://sfconservancy.org/members/services/

VMWare knew the software was licensed under GPL for years. They chose to violate the terms of the license - that's what matters here. They could have chosen to base off BSD licensed code, but they did not

Would you be ok with them breaking the terms of the MIT/BSD license?I'm not familiar with the MIT/BSD restrictions, but I think one of them is to acknowledge original author? How would you feel if they violated that?

I didn't donate anything either. FOLLOW THESE TERMS OR I WILL SUE YOU is not a good ethos for open source IMO. It leads so easily to MY WAY OR NO WAY, and that's not a good mindset for developers.

Thank copyright for that - as that's how the law is written. You get access to someone else's IP (which is a stupid fucking concept, IMO, but anyways..) under the terms the authors want or not at all.

Derp. Have you read any proprietary software license before? Do you have an iPhone? What planet are you from? Your comment made me go and donate again now.

You're ignoring the fact that this guy and The Conservancy tried to work with VMWare for years to correct this, and they gave them the run around.

Is this some kind of parallelogram scheme?

These are copyright violations happening here and now right before our eyes (!), though probably with tacit mutual (but unverified) consent.

See my related comment here about increasing general awareness about IP issues:


Just donated $5.


Excuse me, igl, I'd just like to interject for a moment. What you're referring to as large companies, are in fact, GNU/large companies, or as I've recently taken to calling them, GNU plus large companies.

Large companies are not capitalist entities unto themselves, but rather a semi-free component of a fully functioning capitalist system made useful by the GNU corelibs, shell utilities and vital system components comprising a full corporate person as defined by law.

Many capitalist systems run with a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used in large companies today is often ignored, and many citizens are not aware that it is basically the GNU system, developed by the GNU Project.

There really are large companies, but they are just a part of the wider system. Large companies are the parts we see every day: the people we buy goods and services from, allocating the world's resources for their customers. Large companies are an essential part of a capitalist system, but useless by themselves; they can only function in the context of a complete capitalist system. Large companies normally exist in combination with the GNU operating system: the whole system is basically GNU with large companies added, or GNU/Large companies. All the so-called large companies are really distributions of GNU/large companies.

I just donated $50. If there is nothing to stop large companies completely ignoring the GPL then what good is it?

In for $50.

In for $35. Come on, we can do it!

Would a donation also stop small companies and 1 man operations from violating the GPL?

Great, HN is now officially reddit.

It's kinda necessary you enforce your licensing terms, but man, I wish people would realize that GPL is an extremely nasty thing.

It's rather nice compared to VMWare's commercial licensing terms.

I'm speaking in reference to truly free licenses like Apache and MIT.

> It's kinda necessary you enforce your licensing terms, but man, I wish people would realize that GPL is an extremely nasty thing.

But even assuming it is a nasty thing, no one will notice that if its nastiness isn't enforced.

I agree. I dislike GPL and would never use GPL for anything that I open source. All the npm modules I've developed are MIT licensed.

But if a corporation chooses to violate the terms of someone who did release their stuff under GPL then they should pay for it.

If nothing else, nothing is going to encourage corporations to prefer permissively licensed code if copyleft licenses aren't strictly enforced.

"Either way, it's beneficial to our entire community to find out what the judges think."

Bold and inaccurate statement. There's a 100% chance that it won't be beneficial at all to "the entire community."

Also, the judges in the fancy courthouse aren't any less prone to error than the ones sitting ringside at boxing matches.

Which is why cooler heads have prevailed on these matters for so long.

All sides (copyleft, non-copyleft, and proprietary) have a lot to lose and the unresolved tension was largely keeping things in check. Until the FSF chimes in I'd be hesitant to encourage this with financial support.

How exactly is the unresolved tension keeping things in check? The untested nature of how far the GPL can hold up in court is exactly why we see violations of the GPL so flagrantly. It's exactly why violators of the GPL are willing to let this go to court (if there was ample precedent of the GPL being upheld it is reasonable to assume most corps would choose to settle issues like these before they escalate to a law suit).

If the GPL is never proven to be upheld (at least to the point where most legal corporate accepts it) by the courts then it is a meaningless licence that only matters to free software advocates and geeks.

Legal documents aren't tight programs rigidly followed to by a computer. They're rough sketches that Judges are given enormous latitude to interpret.

Several bad things could happen here, not the least of which is that people avoid the GPL for new projects while this plays out.

Agreements are just that -- agreements. The tension that both sides know that they can seek judicial relief in the event of a dispute arguably is the entire basis of civilization.


>> isn't the combined works and/or derivative works question a legal grey area?

>We don't think so, but this case will let the court to decide that question.

I don't think a judge is able to decide it. A grey area cannot be black or white.


25 years ago I heard a RMS speak and it seems to me the whole freedom movement is unable to move and/or adapt. The same old (now) boring words again and again. And meanwhile we have App distribution models (iphone, google play, SaaS) which are much more closed/dangerous then waht we ever had. Abundant ad spamming and data grabbing. FSF did not help one yota and their extremism made them weak. GPLv3 divided instead of fortified.

What shall I think of RSM which not even uses smartphones? How much more beside your shoes could you be today?

On one hand you agree with RMS on the existence of a problem (">> which are more closed/dangerous than what we ever had"), on the other hand you are criticising him for not doing enough things right or being detached from reality (well, I believe back in the 80s many people would think that the expectation of a license like GPL being as successful as it is today, would be detached from reality).

The problem with this (correct me if I'm wrong) is that you neither seem to suggest an alternative course nor care to act yourself towards a solution. RMS, on the other hand, does and most would agree that his actions have yielded a net positive effect in today's ecosystem.

By your logic, nobody is allowed to criticize RMS and his tactics unless they have a vested interest in providing an alternative to the GPL and FSF. However, I would argue that the failure of the FSF and RMS to adapt to the mobile and Internet centric world is a valid criticism in its own right; notwithstanding the personal achievements and plans for improving freedom of the person who wrote it.

As a side note, the strength of the cult of personality around Richard is always striking to me. He gets away with doing and saying things that would seem absolutely insane if anyone else in the software community did them. For example, forgoes all normal Internet usage (instead he fetches html files to his email), no longer programs, doesn't own a cellphone, did not know that lldb was a debugger, etc...

Yet, we are still supposed to beleive he is capable of producing modern and relevant solutions. I'm sorry, but Richard is out of touch. He is stuck in the past. His achievements should no doubt be honored, but someone else needs to take over.

Just let the GPL die of its own death, there are countless licenses out there that are much more reasonable.

I've worked at a lot of companies these past 20 years and in every single one of them, the GPL was simply banned. You were not allowed to touch any software that used that license, and sometimes, the ban extended to even more reasonable licenses like the LGPL.

And for good reasons.

These days, releasing a software with a GPL license is pretty much a guarantee that your code will never become popular because nobody with a sane mind and a minimal understanding of software licensing will want to touch it, let alone corporations.

For the record, I agree with you. I will personally avoid applying the GPL to my code, either by my own decision or because of code I am using, mostly because I want the freedom, both for myself and for those who might use my code, to release on iOS.

That being said, this doesn't seem to be about a company looking at the GPL and avoiding it. This looks like a company looking at the GPL, not complying with its restrictions, but using the code anyway.

I may not like the GPL, but if a fellow developer decides to use it, I will defend that right.

[edited to elaborate on my reasons for not using the GPL. See comments below]

>I will personally avoid applying the GPL to my own code, mostly because I want the freedom to release on iOS. How does putting your code under the GPL prevent you, the copyright holder, from doing anything like releasing on the Apple App Store? The notion of infringing on your own copyright is just absurd.

It doesn't, but if I GPL my own iOS code, NO ONE will want to use it in an actual shipping iOS app of any significance. The GPL requires the resulting binary to be free of DRM, and the iOS App Store automatically and uniformly applies DRM to all downloads, free or paid. Thus, no iOS developer will use GPL code in their own app since it essentially gives the original copyright holder the power to have your app taken down.

So yeah, I could have made my point a little better. Here's some elaboration:

I will personally avoid applying the GPL, either by my own decision or because of code I am using, mostly because I want the freedom, both for myself and for those who might use my code, to release on iOS.

>It doesn't, but if I GPL my own iOS code, NO ONE will want to use it in an actual shipping iOS app of any significance. I don't see how the proliferation of DRM-ridden iOS apps is a laudable goal for a free software project. If you want, you can sell exceptions to let other people to use your code in their apps. I don't particularly like the practice, but the net harm is much lower than if the program was released under a permissive license.

There was a dustup a while back between the developers of VLC and Apple. It's since been resolved, but the state of GPL code on the app store (knowing what we know about Apple's arbitrariness) is still murky.


If you take substantial contributions from other developers (which is presumably the reason you open sourced it), you won't be the sole copyright holder any more.

As long as the Linux kernel exists, the GPL won't die. As long as cooperation want to use Linux, they will touch GPL'd software. As long as you don't modify that software, there's no harm to the cooperation.

Besides, there's compelling reasons for companies to GPL software they code which doesn't overlap with their core business. If you happen to code a new testing framework because you need one, you can GPL it and profit from the community improving it. In that case you don't really care about adoption, you care about getting improvements back, which is the strength of the GPL. It's a great license for infrastructure code, just not for your main product.

> As long as the Linux kernel exists, the GPL won't die.

So the GPL is alive in the same sense that COBOL is alive: because there's still some software out there that uses it.


That's a pretty useless definition with a ridiculously low bar, though.

The simple truth is that hardly any new project created in the past ten years has picked the GPL. And just for that reason, it's dying. It will never be technically dead, but it's certainly dead from a practical standpoint.

That's great. That's the reason I use GPL. I don't want my work to support companies that don't respect users' freedoms.

GPL is not for being a popular developer. It's about giving users rights.

(and it's for users, not for other developers who can then do whatever they want including adding EULAs and DRM to take users' rights away).

Guess what friend -- GPL is not going to die no matter how much you and your short-sighted friends pray for it. It's survived other legal challenges before and it will survive this one too.

Your companies that "simply banned" GPL did so because they were too ignorant to bother to read it and understand it. Banning LGPL too proves the point.

Your claim that it's somehow not "sane" to use it betrays your own hostility and ignorance. Why don't you direct your anger at something actually evil, instead of a license that has done demonstrably good things for the world?

The good news is you pissed me off enough to get off my ass and donate. GPL Forever.

> Guess what friend -- GPL is not going to die no matter how much you and your short-sighted friends pray for it. It's survived other legal challenges before and it will survive this one too.

It's already pretty much dead, hardly any project uses it any more.

> Why don't you direct your anger at something actually evil, instead of a license that has done demonstrably good things for the world? > The good news is you pissed me off enough to get off my ass and donate. GPL Forever.

Anger? You seem to be the one spittling at your keyboard right now. I don't really care much about this topic, I just avoid the GPL for my projects and it looks like I'm not the only one.

Sorry I made you angry, it's really not worth getting yourself upset about.

> It's already pretty much dead, hardly any project uses it any more.

Hahahaha ! Almost every single device you own or will own will include GPL code, from your phone to every television to (soon) your light switches and light bulbs.

After the world ends, the only thing still alive will be GPL licensed Linux kernels running robots (assuming that's not after the int64_t time_t wrap time :-).

+1 If you want your code to be used you need to use a less restrictive license and trust organisations and their developers to do the right thing. Open sourcing everything is not always the best solution and if you force them to open source their changes the chances are you're going to get some internal branch open sourced hidden on some corporate site somewhere, that's not going to give anything back to the community because somebody is going to have to pull those changes back and support them. If you want to build quality OSS then you need to engage the development community, not put a gun to their head and force them to open source.

Lots of companies open source their products under the AGPL with a commercial license they sell. This allows them to say their products are 'open source' and look good, but in reality it hampers their own product. If I wanted to commercialise that product and make changes, I can open source the changes, but I won't sign the original companies CLA which means they can't take my code and use it in their commercial version.

This lawsuit will be interesting though, as it will probably set a precedent on how you can use GPL software in commercial software.

Note that BusyBox has won every case they've brought. The GPL is pretty well written.

The worse thing is that when one of the developers tried to write a non-GPL version of BusyBox they were criticised for "taking away the only relevant tool for copyright enforcement of the Software Freedom Conservancy group" - they're as bad as patent trolls.

I understand why cooperations that plan on making the free software part of their proprietary software wouldn't want to touch it.

Why wouldn't everybody else?

Because the GPL restricts the freedom of anyone who incorporates your code.

Pick Apache or a BSD license, you have the same guarantees of access to the source code and you're not restricting the freedom of people using your code.

You have some guarantees of access to the present source code (and as jdjb points out, not necessarily), but you're certainly not guaranteed access to changes made in the future by that or other parties like the GPL does. That's the whole point of copyleft and why I prefer it, I don't want to worry if I'll be able to access the features and fixes that will be made by others or if I will be left in the dust. And fair's fair, if you benefited from the work made by others then it's only fair to them to benefit from yours.

Maybe I'm mistaken, but I have the feeling that many -of course, not all and I'm not saying that you do- think that their precious code is so amazing and it will give so much competitive advantage that they need to leave open the option for a closed source version that will make them rich, and that's why they defend "freer" licenses very passionately. Newsflash, it almost surely -like 99,99%- won't happen.

Restricts what freedom? If there indeed is a meaningful restriction, you should be able to articulate it in words.

The freedom to profit from code in the same way as the author. Oracle, for one, has done marvelous things in ensuring that their JVM is the only one that people use by GPLing it and convincing IBM to stop contributing to the more open Apache Harmony project. Additionally, the same enterprise can do things with MySQL that no other vendor can, again putting other entities at a distinct disadvantage. The GPL is very weaponizeable if you want to ensure competitors are always a step behind you.

How is Apache Harmony more open? Easier to get in extensions without going through all the committees? You can do that with a fork of the OpenJDK too, nothing in the GPL preventing that.

As for MySQL, I don't see how the existence of a proprietary version of MySQL is somehow the GPL's fault. The users would be even more at a disadvantage if the proprietary version was the only one that existed and there was no free version, so the existence of the GPL version is a net benefit for everyone.

Not that it's a particularly good idea to buy a proprietary license or even contribute code to Oracle. PostgreSQL will treat you much more fairly. It doesn't require copyright attribution from their contributors, it's governed by a 501(c)(3) charity in the US and a similar non-profit in the EU rather than a company that only looks out for itself.

There is nothing wrong with making a profit with software, but signing an expensive restrictive EULA for a database is just a bad deal, whether you're a small startup or a major corporation.

I don't know about the JVM, but what you mention about MySQL has to do not strictly with the GPL but with it being dual licensed (GPL and propietary) and as a result many Linux distributions like Red Hat, OpenSUSE, Fedora and Arch decided to make MariaDB -which is only GPL, compatible with MySQL and has more features- the default and it's readily available in most -if not all- distros, Windows and Mac OS X. So I would take the part of "competitors always a step behind you" with a very big grain of salt.

The freedom to deprive end-users the same rights*[1] the distributor got, of course.

[1] The right to view the source and make changes as you see fit.

The freedom to modify the code w/out having to share those modifications.

There is no such restriction. Freedom 3 is just that, a freedom, not a duty to release your changes to the public.

In essence it "restricts" your ability to profit from others effort.

It doesn't even do that. I profit plenty from others' GPL-licensed effort. The difference is I don't feel entitled to restrict others from profiting from the effort that went into creating the combined work.

This is completely wrong. Purchasing a product that contains code licensed under the BSD license does not ensure you get access to the source (unmodified or otherwise). It is the biggest difference between the GPL and BSD license.

All the BSD license ensures is that if they distribute the code they have to retain things like author retribution.

All it does is ensure that your users had the same freedoms that you did.

Many people write code in the hopes that eventually people will use it. GPL hampers the ability for many to use it, and some other licenses do not.

It's pretty simple choice really.

If your goal is simply to get your code used by other people and corporations, under virtually no restriction with what they do with it, then the GPL is not a good choice.

If your goal is to let others use your code for the greater benefit of everyone that uses your code, then the GPL enforces that (at least to the extent it can be reasonably enforced).

Incorrect. Because a lot of others can't use your code for greater benefit of everyone because it's GPL. Your code is open source, regardless of the derivative work. GPL is about forcing other developers' to release their code in order to use your code.

Which sounds very fair: I helped you, you help me.

GPL is about ensuring that all users of the code, both developers and end users, receive the same freedoms that the authors of any derivative work had.

But just as the GPL author has the freedom to make their code available, another author should be able to choose not to make their own code available. Again, this has nothing to do with freedom, this has to do with imposing your personal beliefs on others.

Yes, the other author has the ability to choose to not open source their code. But they absolutely do not have the choice to not abide by whatever license was applied to the libraries and original works they are building from.

The freedoms awarded by the GPL are not intended for the authors of the derivative works but for everyone else. The restrictions in place only prevent the author of the derived work from restricting everyone else.

I didn't know people were forcing you to use their libraries.

If you want the freedom to do whatever you want with your code, then write it all from scratch.

Use it in the "shrink wrapped and locked down" sense perhaps.

Lawyers pretty much freak out over it if there's even a hint of using GPL software in a product. Not so much for tools, etc, but they get pretty adamant about it in stuff that touches the product code (this is admittedly vague) in my experience. I won't touch the stuff for commercial use, personally. Not once in 10 years have I not been able to find a suitable non-GPL project that did the same thing as the GPL code to meet my needs. In my opinion, using GPL is a pretty solid way to stifle a project. YMMV.

Well it is pretty much copyright judo. As such, most copyright lawyers can't just apply boilerplate to it and call it a day. So for them it is easier to recommend to not touch it than try to get to grips with what it is actually trying to accomplish.

I don't pretend to understand the subtleties of the license. All I know is the lawyers say "don't use it" and if I see it, I move on. Many others do this as well, and it can't be good for those projects.

It's just not worth a conversation in every case I've run across.

But that's perfectly OK and working as intended. I mean, if you want to distribute a closed source product, then you're working against what the FSF and GPL were created for, and it's wise to stay away from them. Remember, free software doesn't measure its success by the number of corporations that choose their code to use in closed source products, but by the amount of freedom it gives to its users (not just the developers). Having corporations use GPL code in their products is great but not the main objective.

I've seen a bunch of companies that "ban" GPL, but use Linux. Do you use Linux?

> These days, releasing a software with a GPL license is pretty much a guarantee that your code will never become popular because nobody with a sane mind and a minimal understanding of software licensing will want to touch it, let alone corporations.

This is demonstrably false.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact