Linked by Thom Holwerda on Fri 29th Jun 2007 23:09 UTC, submitted by thebluesgnr
GNU, GPL, Open Source The FSF today released version 3 of the GNU GPL, the popular free software license. "Since we founded the free software movement, over 23 years ago, the free software community has developed thousands of useful programs that respect the user's freedom. The programs are in the GNU/Linux operating system, as well as personal computers, telephones, Internet servers, and more. Most of these programs use the GNU GPL to guarantee every user the freedom to run, study, adapt, improve, and redistribute the program," said Richard Stallman, founder and president of the FSF. This article has some interesting replies from the BSD community (right in the middle).
Thread beginning with comment 251777
To view parent comment, click here.
To read all comments associated with this story, please click here.
BryanFeeney
Member since:
2005-07-06

If you want to give your software away for free, use BSD. If you want to share your software, use the GPL.

Software under the GPL is not free. Microsoft office is not free, you have to pay Microsoft money. The Borland developer tools are not free, you have to pay Borland (or whatever they're called these days).

Lastly, software released under the GPL is not free: if you choose to copy and paste GPL code into your own program you have to share it. This is how you pay for GPL code. This is a very egalitarian idea: I share my code, and if you use it in your own program, you pay me back by sharing your code or else you ask me to relicense the code under a different license to suit your needs (which was always possible).

To make sure no-one can escape sharing (after all, this is how they're paying to use the software), GPL v3 requires the following

(a) You make the source code available

(b) You don't use patents to prevent people from using your code, which would effectively block code-sharing despite (a)

(c) You don't use DRM to prevent people from using your code, which would effectively block code-sharing, like (a)


The GPL is no more viral than any commercial license, the only difference is in how you pay to use the software. And it's always worth remembering that you don't have to share until you distribute the source-code (and as corporations are legal entities, you can give a copy to all your 1000-odd co-workers without legally distributing it). It's further worth remembering that if this is a problem, you can always ask the original author to re-license their work under a commercial license if you would rather not share.

This GPL is viral/evil/not-as-cool-as-BSD thing is rubbish. It does what it sets out to do: encourage people to share code. There's no excuse for "accidentally" using GPL code in your own software, just as there's no excuse for "accidentally" installing a pirated copy of MS Office on your friends PC. Both place value on software, and if you choose to use it in a certain way, then you have to pay for them: the only difference is in how you pay.

Reply Parent Score: 5

tristan Member since:
2006-02-01

This is easily the most sane, balanced and well-written BSD/GPL comparison I have ever read.

You deserve a 10.

Reply Parent Score: 2

Doc Pain Member since:
2006-10-08

A very good and still simple comparison, thank you. Just to put it into a formal setting:

BSD -> use for free, as long as BSDL code copyright is retained
GPLv2 -> use and contribute back
GPLv3 -> use, contribute back and don't use patents / DRM
Commercial -> use and pay money

The GPLv3 extends the requirements of the v2, while the BSDL has lower requirements than GPLv2 and v3.

=> BryanFeeney.mod++;

Reply Parent Score: 5

npang Member since:
2006-11-26

GPL3 is written in *exactly* the same spirit as GPL2. The essence of all GNU GPLs are:
* The concept of conveying the four freedoms of free software to all licensees
* The concept of ensuring that the licensees of GPLed software will not "subjugate" other users i.e., the GPL has language that prevents licensees from distributing the GPLed software as proprietary software.

The major changes in GPL3 are:
* Tighter wording of the language of GPL2 to facilitate international enforcement of the licence.
* Explicit declaration of terms that were present but only implied in GPL2

Reply Parent Score: 3

elsewhere Member since:
2005-07-13

Lastly, software released under the GPL is not free: if you choose to copy and paste GPL code into your own program you have to share it. This is how you pay for GPL code. This is a very egalitarian idea: I share my code, and if you use it in your own program, you pay me back by sharing your code or else you ask me to relicense the code under a different license to suit your needs (which was always possible).


Totally agree, yet when Linus says this, the FSF crowd criticizes him for not understanding the "spirit" of the GPL.


(c) You don't use DRM to prevent people from using your code, which would effectively block code-sharing, like (a)


Ah, well, now we're on a different page. Using DRM to prevent people from using your code is already prevented by the GPL. What v3 does is prevent hardware manufacturers from using DRM to restrict the GPL code that can run on it, if they are distributing GPL code as part of their product. And there we have the big split between the kernel devs and the FSF. Tivoisation.

The GPL v2 requires anyone using GPL v2-licensed code to provide source for any modifications they make to the code they distribute.

The GPL v3 requires anyone using GPL v3-licensed code as part of their product to provide a method for anyone to modify the code running on their product for their own requirements.

In other words, GPL v3 would prevent linux from being used as an embedded solution for things like Tivo, cell phones, media centers, networking gear etc. unless those manufacturers intentionally permitted their hardware to be "hacked". The fact that the companies utilizing the GPL software provide back all of their modifications to the benefit of the community is immaterial, because the community demands the exclusive right to modify the hardware as they see fit.

In an ideal world, this wouldn't be a problem. There would be nothing like FCC regulations on wireless that force manufacturers to intentionally obfuscate interfaces to prevent modification that could permit wireless use outside of regulations. The content owners wouldn't have such control over governmental regulation that they could impose such strict controls over the right of companies to be able to present that content. Companies like Tivo would be able to utilize linux as a means to deliver a relatively cheap service for customers without being forced to give those customers the right to take that service at will. But this isn't an ideal world.

As Linus pointed out several times, Linux isn't about changing the world for philosophical reasons. It's about providing the best possible open solution in the face of real world conditions. Compromises permitting commercial and community benefit are provided by v2, not so much by v3.

That's the difference.

v2 is about "can't we all just get along?"; v3 is about "no, we can't".

Edited 2007-06-30 01:24 UTC

Reply Parent Score: 5

b3timmons Member since:
2006-08-26

Totally agree, yet when Linus says this, the FSF crowd criticizes him for not understanding the "spirit" of the GPL.

"Letter" and "spirit" comprise an idiom with a long-established meaning that vested interests like to twist. In particular, dictionaries indicate that the letter and spirit of any rule or document are solely determined by the intent of its authors. Thus, either Linus agrees that the spirit of the GPL is what the GPL's authors, the FSF, would agree with, or Linus had better not refer to the "spirit of the GPL" if he wishes to be correct.

As Linus pointed out several times, Linux isn't about changing the world for philosophical reasons. It's about providing the best possible open solution in the face of real world conditions. Compromises permitting commercial and community benefit are provided by v2, not so much by v3.

Whatever Linus is pointing out, it applies to at most his own projects, such as the kernel and git. Moreover, your opinion regarding "best" and "benefit" is unsupported. E.g., a benefit to Tivo does not necessarily come without harm to a community.

Edited 2007-06-30 01:52

Reply Parent Score: 5

butters Member since:
2005-07-08

v2 is about "can't we all just get along?"; v3 is about "no, we can't".

Very true. GPLv3 is the coming of age of an idealistic social movement that has finally discovered that they have placed too much faith in humanity. The way of man is to lie, cheat, and steal his way to power. So what do we do about it?

Jem makes the tempting comparison to American technofascism, but this is straw-man. How can RMS speak out against the Patriot Act and then draft a restrictive license? Simple. The Patriot Act was the inevitable result of their being no law against legislation of this sort. There's a law against the government spying on citizens (which has been ignored, but that's another story), but nobody ever thought to prevent the government from requiring citizens to spy on other citizens.

The GPLv2 assumed that, like a constitution, a framework for guiding the judgment of right and wrong would be sufficient for enforcing its intent. But we live in a world where governments around the world, especially the U.S., have found ways to make their constitutions increasingly irrelevant. Our civil liberties are disappearing at an alarming rate. Checks and balances are following suit. And since it's so politically expedient for Congress to declare war on things like drugs and terrorism, there's no reason why the executive branch can't operate under the War Powers Act at all times.

So what to we do about it? How can we restore civility to a world that has ceased to honor the principles that underly its laws? It's clear to me that a copyright license alone cannot correct several decades of legal precedent and human nature. But it can be a step in the right direction. It's not easy to watch as freedom, democracy, and human rights are used as justification for their own demise. But that doesn't mean we should become complacent, and in fact, complacency will only make matters worse.

Software is as good a domain as any to begin to take back our freedom. Some people say that the GPLv3 adds restrictions that counteract freedom, but I disagree. The GPLv3 adds responsibilities to protect freedom. A device vendor that restricts the modification of its software is not protecting freedom. If they don't wish to protect freedom, then they can use non-GPL software.

What we've learned from history is that if freedom is not protected, it is gradually eliminated. We are taught today that we must give up certain freedoms to protect others, but this is wrong. The truth is that the only way to protect freedom is to make it our collective and personal responsibility to protect freedom.

It's a tough sell, especially for corporations that perceive their only responsibility is the one to their shareholders. They'll do everything they can to protect their bottom line. The GPLv2 was fine for developers with an interest in protecting freedom. But now that the GPL community includes various business interests, the only way to hold them accountable for protecting freedom is to make it their legal responsibility. We can't trust them to do what's right. Hence the GPLv3.

Reply Parent Score: 5

unavowed Member since:
2006-03-23

The way I understand it, the GPL3 doesn't prevent anyone from implementing restrictive DRM. It just forbids the licensee to sue anyone who breaks it (thus mitigating the DMCA in the USA, for example). This seems to be a very popular misunderstanding.

Reply Parent Score: 3

mikesum32 Member since:
2005-10-22

Public domain is even better if you want to give your code away. It's been known that certain companies have manged to not comply with the BSD license. How lazy are you if you can't comply with that?

Copyrights, patents, software licenses, and other intellectually property have slowly whittled away the commons of culture and the freedoms of the individual. The GPL sets out to use the framework of software license to make them more free, as does the BSD, but they go about it in different ways.

In the world of copyright, the GPL is more like one of the Creative Commons Licenses, because CCL uses the framework of copyright to grant more freedoms than you'd otherwise have. All this GPLv3 talk would be unnecessary if companies didn't use the letter of the GPL to undermine the spirit of the GPL and/or new problems didn't arise.

Reply Parent Score: 3

dagw Member since:
2005-07-06

(c) You don't use DRM to prevent people from using your code, which would effectively block code-sharing, like (a)

First of all I want to say that your post was great and I largely agree with what you said.

However I want to comment on the above point. Tivo (and others) never used DRM to stop people from using their GPL'd code, they wouldn't be allowed to do so under GPLv2 and it would have stupid of them to even try. You could take the code and use it in any way you wanted within the scope of GPLv2. No problems at all.

What they tried to stop you from was run your own binaries on the hardware they sold you. So you could take their code, change it, include it in your own project, compile and run it without restrictions, as long as you ran it on some other piece of hardware.

Reply Parent Score: 4

devurandom Member since:
2005-07-06

I am sharing your wonderful comment on my blog. If you don't like it, please contact me.

Reply Parent Score: 1

Rufus Member since:
2007-01-10

This is how you pay for GPL code. This is a very egalitarian idea: I share my code, and if you use it in your own program, you pay me back by sharing your code


Indeed, this is. However, note that this does NOT mean this is a fair trade. If you think otherwise, let us trade "metal for metal": You sent me a ton of gold while I sent you a pound of lead.

You see, trading "stuff for stuff" is not necessarily fair. The problem is what "prices" are charged. and the evaluation of what constitutes a 'fair' price usually differs.

The GPL requests people to publish modifications to awork under the GPL if they are distributed at all. This could be considered an acceptable -- and thus "fair" -- price. After all, you can't claim to be able to make an income from this code, since much of it is not yours.

But the GPL also requests that independent works -- namely "extensions" to a GPL code (for example, "plug-ins to a framework", "applications to libraries", etc.) -- are to be published under a compatible license as well. I believe the correct GPL3 clause is "You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy." Here, the price gets unreasonable.

For example, Adobe may be required to publish Photoshop under the GPL3, if they would need to use a GPL3 library. In other words, Adobe would be required to pay a fee by giving up its license income for Photoshop. That would be millions of dollars. Of course, Adobe would not do this but write their own library or license a different one for the usual market prices.

In the long run, the more libraries use GPL3, the less attractive is a port of Photoshop (or any other closed-source applications) to Linux. As a result, users will pay the final price: Either because their are required to use a additional, completely non-free operating system, or because they have to pay Adobe and others for the development of the additional libraries.

Of course, from the point of view of the GNU project --spreading their definition of software "freedom" --, this is not a problem. For others -- people with different ethical positions -- this is counter-productive and unnecessary.

You don't need to accept other people's position here. But please note that the payment scheme of the GPL is not a very egalitarian idea; for it treats users differently, and discriminates those who don't share the FSF's definition of "software freedom".

Reply Parent Score: 3

chris_dk Member since:
2005-07-12


In the long run, the more libraries use GPL3, the less attractive is a port of Photoshop (or any other closed-source applications) to Linux. As a result, users will pay the final price: Either because their are required to use a additional, completely non-free operating system, or because they have to pay Adobe and others for the development of the additional libraries.


This is correct. Stallman's goal is a completely free OS with applications. He does not want an OS with proprietary applications.

I'm not sure that Stallman is right. It seems better to have an OS which can be used for everything, not only Free Software.

Reply Parent Score: 1

archiesteel Member since:
2005-07-02

For example, Adobe may be required to publish Photoshop under the GPL3, if they would need to use a GPL3 library.[...] In the long run, the more libraries use GPL3, the less attractive is a port of Photoshop (or any other closed-source applications) to Linux.


There are many things wrong with that theory.

First, the vast majority of libraries are licensed under the LGPL, and not the GPL, so the point is likely moot.

Second, you shouldn't single out version 3 of the GPL in that example. A library licensed under GPLv2 would have the same effect.

Third, why on earth would Adobe use a copyleft library for Photoshop? I'm pretty sure they would use their own libraries, or libraries not under a copyleft license (or a limited copyleft license, such as the LGPL).

Finally, if Adobe *really* wanted to use that rare beast which is a GPLed library, they could always ask the authors to relicense it to them.

But please note that the payment scheme of the GPL is not a very egalitarian idea; for it treats users differently, and discriminates those who don't share the FSF's definition of "software freedom".


Again, there are many misconceptions in this paragraph. Users are not treated differently because of the GPL, but because of copyright law. Copyright has no effect on *use* of software, only in its copying and subsequent redistribution (hence the "copy" in "copyright"). The GPL, which is based on copyright law, could not dictate to users how they could use the software. They can, however, dictate conditions on redistribution, because the GPL grants additional rights compared to normal "fair use" rights as stipulated by copyright law.

Second, the GPL doesn't discriminate about anyone. It applies equally to all, irregardless of one's beliefs about software freedom. That's because it is a legal document, and sets conditions for redistribution of the copyrighted material. Someone could disagree with RMS, and think the FSF are a bunch of kooks, and he would still have the *exact* same rights as a diehard FSF fan with regards to a GPLed piece of software.

Therefore, contrary to what you claim, the GPL is *very* egalitarian, because it ensures that the code and its derivatives will be distributed with the same freedoms as the ones desired by the original author(s). Does the GPL curtail the freedom of those who want to produce closed-source derivatives? Indeed it does. But it also protects the rights of the original copyright holder about what can be done with the code, and therefore protect the author's freedom from having their IP be used for closed-source software.

This is why the GPL is as free as, say, the BSDL, but in a different way - because freedom is *never* absolute, and in order to guarantee some freedoms, you need to curtail other freedoms (as someone pointed out, to guarantee the freedom to live, you have to curtail the freedom to murder).

Reply Parent Score: 5