Revising the GPL
Exstatica writes "Finally, an update to that slightly outdated GPL (General Public License). This story discusses a few changes that the new GPL will include. Will the new GPL draw users to it, rather then using other licenses such as Apache's License or the Netscape Public License?"
The recently released Apache Software License (ASL) 2.0 already includes a patent clause. To the best of my understanding the ASL does not have anything in it against patents per se, but ASL's patent clause is only triggered when actual patent litigation occurs. This, as well as an interpretation of the current GPL patent stance is explained in great detail here.
Gates in particular derided the license as "Pac Man-like,"
People should not fear what they do not understand; people should fear because they do not understand.
AFAIK most GPL licensed software is governed by the current GPL license "or later". What is stopping anyone from writing their own GPL 3.0 license?? Does RMS have some sort of monopoly over the license or is it a community thing??? John.
Linus, in a recent interview, says:
What else is there to say?
Join Tor today!
...but for pete's sake, the grammar! Normal /. bad grammar doesn't really bother me, but "Will the new GPL draw users to it, rather then using other licenses such as Apache's License or the Netscape Public License?" doesn't even make sense!
Bad grammar can be overlooked as long as the message gets across. "He ain't here," while grammatically incorrect, still conveys the meaning. This satisfies the communication requirement for language.
But I almost can't figure out what the poster was trying to say. I *think* I understand, but I'm not 100% sure.
This isn't just bad grammar, it's bad language.
The old GPL has several gray areas, hopefully the new GPL has more provisions. Updates that improve the quality are always a good thing. Add another kilo of force for the bullet train that is Open Source...
Thank you much for your vision and steadfastness in sticking to it.
As an exercise for the story submitter, figure out the difference between the two.
I really don't get how people mix them up. Granted, there are a number of things that people in general confuse, but "then" and "than" aren't even pronounced the same (well, at least they shouldn't be).
In any event, it just takes away from any credibility you may have had.
Using the GPL in many cases makes things a lot more difficult for the programmer. Making it difficult to connect applications together because one is not under the GPL and doesn't want to be. And to say if you release an Open Source Program with your patten on it then you paten is free for anyone to use. These really make it tough on the developer. I would like to be able to use pattened by me technology in my Open Source Program but I don't want just everyone to use it, I don't mind if everyone sees it or alters it a bit but I don't want it to become part of MS Office without me getting some Bucks for it. I would like to see clause like Patented Software in the GPL is implied open to anyone who is making their products GPL or the Code is implied to have use in that codebase, including forks or something else. Getting an Idea Pattened takes money. So the person should have the right to allow usage of the pattent to some extent.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
1) The FSF can create different versions in the future, and everything under the old licenses is effectively retroactively dual-licensed. The FSF consists of little more than Richard Stallman. What happens when Stallman gets hit by a bus? Who controls the FSF (and through it GPL) then? How many millions would even partial control of the GPL be worth these days? Maybe loosen those "troublesome restrictions"?
2) The LGPL is all based on object "linking". What the hell is the legal definition of "linking"? The idea of linking will become increasingly irrelevant in the future; it's like a 1980's OS-specific license.
3) What happens to the legal status of GPL'ed projects when some company manages to retroactively claim a patent on some double click feature? At that point, does it not become illegal to distribute the software under the terms of the GPL? Won't that invalidate the whole license for that software package?
Considering the billions and man-centuries now tied up in GPL'ed software, this all scares me.
Braddock Gaskill
and continue to use the present version?
That's why Version 2 says you can distribute under any later version of the GPL.
That was a good article, but as always the "viral" thing is nonsense. I can understand them bringing it up, but why do they always say "raising the specter that the inadvertent or surreptitious inclusion of GPL code in a proprietary product would require the release of all source code under the GPL" without adding the obvious "OR stop using and distributing the GPL code"? Oh well. Maybe clarifying this aspect is also something that Version 3 can do.
It sounds like clarification is mostly what the GPL needs. It's not so hard to understand now, as long as you aren't afraid of it, but certainly things like what "derivative works" means could be made more clear.
The patent issue surely could use more clarity. I'm not sure I like the idea of a mutual-defense patent clause. That might be scary for a corporation simply because there is so much free software that they are using. If they had a patent issue with GIMP to pick a random example, would they have to stop using Linux? Probably shouldn't deploy Linux then...
Certainly making it explicit that releasing code under the GPL that may be protected by one of your patents is also a grant to use the patent is a good, necessary change. Software patents are bad enough (may they die, and soon); we definitely don't want people to be able to directly sabotage free software by putting their own patented ideas into it and then attacking.
Anyway, life goes on, the GPL continues, and the inevitable victory of freedom (in software) gets another day closer.
The enemies of Democracy are
An area of investigation is getting GPL software to run on devices such as TiVo's digital video recorders, which use a specific version of Linux but won't run modified versions. But prohibitions on modifications violates the spirit of the GPL. "This is not what free software is supposed to be," Stallman said.
What the hell is wrong with that. I make some hardware, I put linux on it. I say here's my code, feel free to read it, to tell me what you think might need updating, and feel free to make your own, but my hardware will only run my version of the sofware. Thats freedom to me. If you keep putting stupid restrictions like this on the GPL eventually it will be too much work to release your code as gpl. It will be, will some random guy's hack work on my hardware device, did I comply with subset by law 005 that says on mondays of every 3rd month the software should auto display a list of all devs who worked on the code and automatically download the source.
To me, this is loosing sight of what freedom is about. Yes you must protect the rights of the people who worked on the code so some company can't snatch it up and not give back, but when you start talking about imposing restrictions on hardware your taking it too far. As long as the company gives you an easy way to get their source they are giving back to the community any changes they made, that should be good enough.
What's your point? You have the freedom to not use it. You don't even have to agree with it to use the software released under it.
What does it mean to have respect for a document? Are you saying you're not going to violate the provisions of the license or are you in awe of it? The GPL is just a tool that provides a measure of protection over the work of people who want others to have access to that work. It's not a god, it's not something you are forced to use, and it's nothing all that amazing. In fact, it's just downright silly that we need it in the first place and that it has to be so damn complicated to accomplish something so stupid-simple.
Join Tor today!
its not automatically retroactive.
"either version 2 of the License, or (at your option) any later version"
What I'd really like to see in a new version of the GPL is a transparency clause, as in the GNU FDL: i.e. clarify the part of the GPL that defines the source to be the "preferred form of the work for making modifications" so that it is restricted to open formats, such as plain text or XML. I can see a trend in modern computing to distribute "source" in proprietary formats and I think such a clause would head this off. Not only that, but it would make it easier to apply the GPL to non-software works.
Past story very much like this one.
There is another kind of evil which we must fear most, and that is the indifference of good men. -- Boondock Saints
Whats wrong with the spirit of the current GPL? Its perfectly fine. And if the new GPL carries the same meaning, I'll be fine with it.
In my opinion, most GPL problems are caused by an inadequate definition of the term "derivative work". When the GPL was first written, most applications were entirely monolithic and had few dependencies on other code. These days nearly all large projects are full of components, loaded or linked to in a variety of ways, and the present wording of the GPL prohibits any contact of such nature between GPL and proprietary parts.
The LGPL does allow linking, and I see it as a much fairer license because it lets your code stay open, but does not prevent other people from licensing their own code differently. I think that the OSS community will get considerable benefit by allowing proprietary software to mingle with the free, as it allows the former to gradually convert to the latter rather than in one painful jump as the GPL requires. This way a company can still make money from its software for a while and then release the code when the work is paid for.
Will the new GPL draw users to it, rather then using other licenses such as Apache's License or the Netscape Public License?
Holy dangling modifier, Batman!
OK, patent clauses are probably a good thing. A number of Open Source licenses are adding them. I also understand the need to define linking a bit better; is coupling applications via SOAP inherently different than coupling them with a linker?
But what the heck is the third all about? What have I missed that makes "trusted computing" and the GPL non-orthogonal? How on earth do the two of those relate?
Dewey, what part of this looks like authorities should be involved?
GPL intentionally drives a wedge between the open and closed source communities. However it doesn't have to be that way. If your main purpose is to encourage open source, including making the source to any modifications available, then EPL already provides that. Unlike GPL, it does not put restrictions on the other code and licences with which it can be used.
The next version likely will have a mechanism for dealing with GPL software that has been modified and that runs on publicly accessible computers. Today, a programmer who wanted his or her GPL software to run in this public fashion could insert a programming command that would let the public download a version of the software if it's been modified. However, with the current GPL, the organization running the software could simply remove that section of the code. Stallman is considering a provision that would prohibit its removal. "If the program has such a command already, and you modify the program, you must keep that working," he said.
Any ideas what this is talking about? At first glance it kind of bothers me because it sounds like the FDL invariant sections, and possibly worse, since "...you must keep that working." Meaning now you have a legal obligation to supply some correctly working functionality in the code. I always thought a big part of open-source licenses was "no warranty" to avoid these sorts of things. Not to mention the freedom to do modify the code as you like, including removing parts.
I could be totally misunderstanding this though. Any insights appreciated.
Let's say I have patent A. GPL'd program B uses the method described in patent A. Now a third party C downloads the software B. What do they have patent rights for?
a) Program B as-is. If you modify it, you lost the license. Obviously unwanted.
b) Any and all programs. In this case, Microsoft can now use patent A in MS Office (but not the code). Obviously unwanted.
c) B with derivates of some sort. What is desired, but is probably the legally most difficult to describe.
Kjella
Live today, because you never know what tomorrow brings
I would love to see that happen. Aren't there other licenses beside the GPL that are considered "free software" licenses? I think that clause should mention them all, one by one, specifically.
Let us run this patenting the obvious nonsense into the ground now before it bites our legs off!
There is no text in the license itself that requires you to use "all later versions". That said, nearly everyone just copy-pastes the default "how to use this license" text which does include that language. I know when I write stuff, I remove it. To do otherwise would put too much faith in RMS and the FSF (although I like them both) for me to be comfortable with.
The previous sig has been removed due to
Suppose I use a layered gimp file to create a png-file, for a GPL'ed program. Does the license require me to distribute the layered gimp file along with my binaries? What is a "preferred form of the work for making modifications to it"? Perhaps the answer to this question will be clarified in the upcoming version of the license. (See prior discussion on linux.debian.legal).
The Reciprocal Public License doesn't let the bureaucrats get away with that.
I don't know why Stallman is such a sucker for huge bureaucracies. Maybe he is a red.
Seastead this.
Or do you want to be the only one profiting from their investment?
So the way to tell if your project is a derivative work or not is to determine whether or not, without having received permission to distribute the code at all, distributing your modified version of the work would constitute copyright infringement.
An example of a derivative work that wouldn't be affected by copyright is one where only basic ideas may have been copied. Ideas are not protected by copyright, only content. The GPL has the same limitations because it's only by virtue of what copyright is that the GPL could have any validity in the first place.
File under 'M' for 'Manic ranting'
What's your point? You have the freedom to not use it.
My point is just that placing restrictions is less free than not placing restrictions.
What does it mean to have respect for a document?
It means I respect the GPL for the software movement it has spawned.
Why all the questions?
You think they are the same people that endorse copyright infringement and the GPL?
If you dig deeper, like in research your output before talking, you find that most GPL programmers != riaa infringers...
I think that would be good for the free software community but provide IP protection for the business domain.
Oh, please. Taking away the right of large institutions (whether they're corporations, universities, gov't departments, or whatever) to maintain their own in-house mods to F/OSS would kill the use of GPL'd code by those entities instantly.
opensource.org/licenses/ (thought the new GPL doesn't seem to be up there yet). personally i like The MIT License. the shorter the better ;)
I thought the point of the GPL was to protect the copyright holder. They create a work and release it under the GPL with the understanding that other people cannot take their efforts and profit from them without releasing their modifications back to the public under the same license. If this is the case, I don't understand why people are against the GPL. The person(s) who did the work expect that their creations will remain free and open, and that any improvements to their work will in turn benefit both themselves and the community. If other developers do not want to operate with the same community focus, I'm sure they are welcome to create their own software under a license that they feel comfortable with. What is all the complaining about? If it's your work, you get to choose the license, period. How does the GPL affect users? There are no restrictions on how you USE it, as long as you don't sell it or distribute it. You can even keep your modifications to yourself if you keep them within your organization. I'm sure someone will correct me if I'm wrong though...
--dingletec--
Who is entitled to change the wording of the GPL.
Is the FSF democractic in the sense that the GPL license could be hijacked, by enough people joinin the FSF?
Could RMS in principle change the license to state that all the software belongs to him?
Who would be entitled to make new versions of the GPL if the leaders of the FSF died tomorrow?
Where should I look to learn more about this?
If there's anything I dislike more than Microsoft it's monoculture. Why do so many members of the GPL camp attempt to position the GPL as the monoculture of open source? I belive in open source first of all, and free software as well, within limits.
Instead of asking whether the new GPL will become the next Super Mrs Pacman, why don't we instead ask whether these changes to the GPL makes the GPL better suited to the projects it serves?
In my view, the GPL serves best for platform initiatives, such as Linux. I prefer the BSD license for protocols and standards, such as the TCP/IP stack, which have no purpose unless everyone adopts a compatible implementation, on both sides of the fence.
> So the way to tell if your project is a derivative
> work or not is to determine whether or not,
> without having received permission to distribute
> the code at all, distributing your modified
> version of the work would constitute copyright infringement.
This is not very helpful either. To give you a concrete example: suppose I take a GPLd spellcheck software, make modifications to it and embed it into my proprietary word processor. Recognizing that the spellcheck code was not originally written by me and that my modifications form only a small portion of the code, I would release the spellcheck module modifications under the GPL as required. But consider the word processor, which is still proprietary. Under the terms of the GPL, the word processor will now be considered a derivative work, even though it only links to the spellcheck module and contains only my own code. (This is indeed the intent of the FSF, as they explicitly state it in their rationale for using GPL for some libraries)
The copyright law does not provide for such a circumstance since it only applies to modifications made to the original work. It is because of situations like this that GPL is called "viral". I would call this theft, since it forces me to adopt GPL for my own code. The usual counterargument of "then don't use GPL code" is fine with me, and therefore I don't use any, but I think the GPL fanatics hurt themselves more than anyone else by this. If they were truly interested in having their code used, they would have licensed it under LGPL.
The BSD places restrictions and requirements too - you have to keep the original author's name in the source code. If you're going to say "no restrictions and requirements" then you can only really use stuff for which the source code is in the public domain. If copyrights hadn't been extended this might not be that much of a problem, but as things stand you're going to have to accept some restrictions to be able to get anything done. A license which gives you the four freedoms is good enough for me.
I am trolling
The GPL is only a license on the program not your works and creations. The code you write belongs to you can be compiled by GCC, a GPL-ed suite of tools. This does not mean the binaries produced are suddenly GPLed nor do you need to distribute the GCC compiler with your code or binaries.
This is one of the big misconceptions of the GPL. That some how everything it touches makes it GPL. If you are an end user and aren't looking at modifying the code then the GPL has no impact on your activities.
Yes. but the copyright holder does not have to accept the new license. So if some new license came out and something is wrong with it, then you simply don't have to choose to use it. But it's recommended that you remove the clause from the GPL that states that you will use the newest license in place of the one you distributed.
For a project where there are multiple copyright holders it can be much more difficult to block a license revision.
“Common sense is not so common.” — Voltaire
You BSD zealots are always worth a good laugh...
At one time, you argue why the GPL is not free enough while it tries to maintain freedom. At the same time, you advocate a software license which ain't truelly free according to the definition you use as free either. That definition would be: no license at all; ie. public domain. Go release under no license at all if you're so fanatic against copyright.
Open source their mods.
Seastead this.
*then* we might be willing to give your statement more creedance rather *than* assuming you're just an intellectualist-snob
BTW - I was tempted to intentionally mix up "your" and "you're" just to see if you could lay off griping about that one as well.
criticism is constructive when it provides something useful. Simply stating you're wrong is not constructive, often, it just appears arrogant.
A goal is a dream with a deadline
I must confess I'd find it very uncomfortable to licence *any* code I've written under the LGPL. I find the idea that someone could take my code, modify or add a few lines of code, then go and sell it without giving anything back to the community quite offensive.
Here's what I'd love to see in GPL v3:
1) By accepting the GPL, you agree to irrevocably forfeit any patent that the software might possibly infringe on.
2) There is to be One GPL to cover all software written under the GPL. In other words, ``acceptance of this license is considered acceptance of this license for each and every work licensed under the GPL''. Same goes for violating it--if you violate the GPL, you've just violated the GPL for each and every work licensed under it.
I support the Center for Consumer Freedom
If I had mod points, I'd mod that up. The clear solution is that the GPL should license the patent only for any programs released under the GPL.
Any additional licensing of the patent (eg for use in commercial software) must be up to the patent holder. If MS wants to release Office under the GPL, then they can use the patent all they want. If the patent holder later decides to sell additional licenses to MS, that's his business. If you want to license the patent for use in MPL software, you'd ask the author for a separate license.
"The next version likely will have a mechanism for dealing with GPL software that has been modified and that runs on publicly accessible computers. Today, a programmer who wanted his or her GPL software to run in this public fashion could insert a programming command that would let the public download a version of the software if it's been modified. However, with the current GPL, the organization running the software could simply remove that section of the code. Stallman is considering a provision that would prohibit its removal. "If the program has such a command already, and you modify the program, you must keep that working," he said."
This strikes me as strongly inconsistent with the principles of Free Software. Why should I be forced to include functionality that I don't want in my derivative? What if it is technically not feasible to retain this functionality? What if I think that section of code is poorly written and I don't want it in there? Imagine there is a self-contained subroutine in such a program, say, a compression algorithm. I want to use that code in my own GPL product, which is, say, a desktop application. Since that program is covered by the new GPL with this crazy clause, I have to somehow include those other lines of code in my program, which does not have any webserver functionality to begin with? That is absurd.
This is such a specific clause as to be ad-hoc and inelegant. If it were to be included it should be justified by a more general principle of Free Software. What comes to mind is something like the invariant clause of the GNU Free Documentation License. The author can indicate for any portion of the documentation that it must be included verbatim (and perhaps in the same relative position or something) in any derivative. As the recent controversy in Debian demonstrated, many people find this to be incompatible with the GPL on its own terms. In fact I believe that Debian resolved (for the version following Sarge) that all documentation under GFDL must be removed from Debian because it doesn't meet the Debian Free Software Guidelines.
This is a terribly non-constructive distraction that has Debian battling the FSF. Apparently Debian leaders could not reach a consensus with FSF over the documentation license. But they (Debian) have IMO persuasive arguments that the invariant clause is truly incompatible with other (and more important) Free Software principles.
I sure hope they don't include something like this in GPL 3.
Otherwise it can be used to write a piece of GPLed software whose main purpose is to infringe patents of some company and then get a free license from them because they are using another, unrelated piece of GPLed software - that they wrote themselves!
Also, consider a corporate merger. Company B might have used a piece of GPLed software that infringes on patents of company A and it would take some time to discover and replace it if the combined company doesn't intend to make the patent public.
Oh, I would very much like software patents to go away. But at this point, companies would rather avoid using - and contributing to - GPLed software completely than risk loss of their patents in an unpredictable fashion.
if you'd like to see what RMS was thinking on this subject four years ago, see these two articles:
1 636202
1 910252
http://www.newsforge.com/article.pl?sid=00/11/01/
http://www.newsforge.com/article.pl?sid=00/12/14/
Can your IM do this?
YHBT YHL HAND
Love Bonch, aka Overly Critical Guy
File under 'M' for 'Manic ranting'
> then offer a GPL-licenced spell checker seperately?
But that is precisely what GPL will not allow! It would fall under the linking category and would therefore be forbidden. Whether the software is sold separately or together makes no difference whatever. And that is why I don't like GPL.
> I find the idea that someone could take my code, modify
> or add a few lines of code, then go and sell it
You are thinking of the BSD license. LGPL will not allow you to sell LGPL code itself, but it will allow you to sell a program that uses it. Because the LGPL code you link to is available for free, you won't be able to "add a few lines of code" and sell it for more than $0. You'd have to write something more substantial.
He has consistently taken that position--read old interviews with Linus Torvalds and you'll see much the same view. What more is there to say? There is a lot more to say, actually. But Linus Torvalds is not the man to go to to understand what more there is to say. He doesn't give the impression that he understands the varied and subtle ways in which copyright law has changed and how those changes make it necessary to revise licenses that preserve software freedom (as the free software GNU GPL does). He doesn't explain how patent law has changed since the free software movement has existed and how these changes affect all software development. He conveys no understanding of why the GPL doesn't mention "open source" at all.
/. and your overrated post has more to do with being a Torvalds fan (and being moderated up by other Torvalds fans) than understanding the pertinant details on who is qualified to speak on this issue. If I wanted to learn more about the Linux kernel, I'd seek the advice of Linux kernel programmers including Torvalds. But this thread concerns the development of the GPL, and Torvalds is particularly unqualified. Stop giving Torvalds more credit than he's due and find the authors of the GPL instead.
For detailed explanations or quick summaries on those topics, one needs to go to RMS or Eben Moglen, not coincidentally the two authors of the upcoming GPLv3.
But, really, this is
Digital Citizen
Actually, in your concrete example, ignoring the GPL altogether, you could not embed a spellchecker that someone else wrote into your own word processor that you were planning to distribute as a combined package unless you had their permission anyways (to not obtain permission first would be copyright infringement). Therefore, to take a GPL'd spellchecker and embed it in a closed-source word processor would be a GPL violation if the word processor were ever distributed external to your own organization. Of course, if you obtained permission from the copyright holder to do this, whether it's GPL'd or not wouldn't matter because the GPL cannot overrule the desires of the copyright holder (presumably, however, the copyright holder applied the GPL to their code in the first place because the copyright holder actually _agrees_ with it, but the copyright holder is still free to offer other licenses to other people as he or she desires).
File under 'M' for 'Manic ranting'
> It would fall under the linking category and would therefore be forbidden.
The GPL doesn't say anything about "linking".
This is by far the #1 misconception about the GPL, people confuse the folklore with the actual licence.
I think that every GPL fanatic should read the article referenced in the parent post: so I'll repost it here. It's too bad that FSF's opinion is different. I would really like to see this resolved in court once and for all. Any takers? Just write a proprietary program and link it to a GPL library. And then wait for FSF to sue you.
If it appears that the FSF will fall into evil hands, then I would expect many OSS developers to hurry up and release a new version with "version X alone" style licensing
So what, the evil hands will just get the previous day's source with the "or later" style.
> The GPL doesn't say anything about "linking".
No, but it says much about derivative works. And FSF argues that linking makes your program a derivative work. Read this.
> People confuse the folklore with the actual licence.
No, they confuse the actual license with the intention of the license's authors. I think that is an important distinction.
There would be no need to clarify this in GPLv3 because it's not a GPL issue per se. However, it is covered in the GPL FAQ because it comes up a lot with regards to the GPL:
Digital Citizen
I realize that success has many parents and failure dies an orphan, and the GPL is clearly successful in spreading software freedom (it is also the most widely used free software license), but these differences are real and should not be ignored because they conflict with one's mistaken view that what we're seeing today started with the open source movement (and therefore should be framed exclusively in light of that movement's values, ignoring any discussion of software freedom).
The FSF has asked that their work not be lumped in with the work of the open source movement because the two movements (free software and open source) are different and have different ramifications. There is good reason why, despite the GPL being frequently misattributed as an "open source" license, you won't find the phrase "open source" anywhere in the GPL.
Misstating this difference gives the impression that the Open Source Initiative (OSI) or the open source movement as a whole had something to do with writing the GPL (any version). The GPL predates the open source movement and all the OSI did was write their rules for license acceptance such that they could place the GPL on a list of approved licenses. Writing the seminal license of the free software community is a far more significant act than placing a license on a list of licenses.
Digital Citizen
The LGPL does allow linking, and I see it as a much fairer license because it lets your code stay open, but does not prevent other people from licensing their own code differently. I think that the OSS community will get considerable benefit by allowing proprietary software to mingle with the free, as it allows the former to gradually convert to the latter rather than in one painful jump as the GPL requires. This way a company can still make money from its software for a while and then release the code when the work is paid for.
Right. The company I work for can not open source its code and this is preventing me from using and improving GPL code (at work). LGPL is a much better fit. Improvemnts and bug fixes in LGPL-ed code go to the community while my company controls the rest of the application any way it wants.
b) Nobody is forcing you to do anything with your code. You have the copyright on your code. The GPL does not change that. It only states the rules under which you are able to use other people's code which was put under the GPL. Those rules do not allow linking of GPLed code into non-GPL code.
You don't have to use that spell-checker. but if you do, you have to follow the GPL rules.
while (!asleep()) sheep++
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This wording will allow for non-free relicensing, if RMS or his descendents decide to change the GPL. I pressume that most of the software in a standard Linux distribution is Licensed this way.
The GPL is not and never was about having code used, or even about providing technically good code. It is about pushing an agenda. That agenda is that all software must be `free' (for a given value of free, defined by RMS). If you agree with that agenda, then the license is fine. If not, then take a look at some of the other Open Source projects (e.g. *BSD, PostgreSQL, Apache, X) that use licenses that are about encouraging people to use their code.
Personally, I do agree broadly with the FSF's agenda, but I still dislike the GPL. I believe that a better way of demonstrating that the Open Source methodology is superior is to simply write better code. I have no problems with people taking my code and rolling it into commercial products, because I believe[1] that people will eventually choose a more free (as in freedom) solution over a less free one. When I have the choice, I will almost always pick a BSD or ASF licensed piece of software over a GPL'd one. It is possible to put together a very competent server platform with hardly any GPL'd code (gcc is still better than any BSD-licensed compilers I've encountered).
[1] well, hope. I try to maintain some faith in humanity, although it's sometimes difficult.
I am TheRaven on Soylent News
Read the thread you are replying to. Intent and random arguments are irrelvant, it is all based on copyright law only.
People: There is no new GPL.
From the article:
Changes aren't going to happen anytime soon, though. "We're nowhere near ready to have anything to show people anything yet. We know what we'd like to do, but how to do it is not clear," Stallman said. Only when he's good and ready will he begin seeking comments on a draft.
so : There Is No News.
There is not even a Schedule for the new license.
Thank You Come Again...
I still won't be able to consider the GPL truly free, as it places restrictions and requirements, which is not free. The only truly free license is BSD.
"Free License" is an oxymoron. There is NO SUCH THING as a "truly free license" in all respects--by definition a license explicitly grants what rights you have or do not have.
The important aspect of "free" depends on how you define "free" and what "free" most importantly applies to. I'd plot the openness of software on a 2-axis grid. The X-axis represents the freedom of the developer, the Y axis the freedom of the code itself.
Each axis has a magnitude of freedom associated with it. At the bottom of the scale there is closed and "gratis free"...there may or may not be a monetary cost for the software, but rights are limited. Then there is "libre" free at the high end of the scale where rights are unfettered.
I contend that if you plot a point for BSD and GPL licenses on such a grid you'd find that NEITHER is completely free. GPL would be towards the top-left corner of the grid--it confers maximum freedom to the code whilst placing restrictions on the developer to protect the freedom of the *code*. Stallman, Raymond and Torvalds prefer the GPL because it encourages the free flow of information.
The BSD would be at the lower right on that grid. BSD gives complete freedom to the *developer*, but I wouldn't consider it FULLY free because it allows the coder to take derivative works and place them under different licensing (closed OR open). The "rights of the code" are granted and revoked at the whim of the developer who creates or "steals" the code. Microsoft took all freedom away from BSD-licensed code when it incorporated it into Windows NT/2K/XP/2K3. Branches of the Ingres and Postgres databases led to CA Ingres and Illustra/Informix Online Dynamic Server and in the process the code lost all its freedom.
So what is important to you is "developer freedom"--perhaps because you profit from a "commercial" derivative of open software you developed or modified, or some other reason. In that case, even BSD isn't "truly free" as you still have to put the proper attribution in your code--you'd be better to release without a license at all to the public domain.
Personally, if I am going to let everybody see and use code I worked hard to create and generously shared with others I want to make sure people don't take excessive advantage of my generosity, so I think restricting developer's freedoms in certain respects is a fair tradeoff for being able to see, modify and re-distribute my code for no monetary cost.
Beyond the political/philosophical points above, I also thing there are proactical reasons behind some people using the GPL over BSD (why the pragmatic Torvalds released the Linux kernel under GPL). I think the GPL encourages "vertical development" of open applications--that is, it discourages code forks, because those derivative works must also share code and the two variants can still "cross pollinate". Of course, one could argue that it limits the full potential of an app because you cant sell it for thousands when the recipients can copy it for free. Linux has still been quite successful though.
BSD seems to ENCOURAGE forking...in GPL, projects may "cross pollinate" but the projects keep building on their foundations, where BSD apps may fork into many instances, where in some cases the code is never shared again. Looking at Linux--it is GPL and while there are many distributions there is one foundation. With BSD there are several flavours on independent development tracks.
Given that, I think my open license of choice will be one with GPL-like restrictions to encourage CODE freedom.
> Nobody is forcing you to do anything with your
> code. You have the copyright on your code. The GPL
> does not change that.
Yes it does. It forces me to license my code under GPL. Yes, I agree that I am not forced to make use of any GPL code, but that does not change the immorality of the action. I don't have to go wandering in a bad neighborhood in the middle of the night, and by not doing it I can avoid getting robbed. But is the robbery any more virtuous because I voluntarily placed myself in an environment where I was certain to be robbed?
> You don't have to use that spell-checker. but if you do, you have to follow the GPL rules.
Exactly my point. And what it means is that no one wishing to make money from his code will ever touch GPL code. They'll just write their own. It's not that hard. Hello 12 different libpng versions! Hello 24 variants of mozilla! Hello "out of memory" and "insufficient disk space"! Hello "incompatible library version detected"! And how did you say this benefit free software?
If you can find someone gullible enough to pay you for something they could get for free elsewhere, as long as you don't limit their freedoms that they had under the (L)GPL, you're in the clear.
File under 'M' for 'Manic ranting'
Lets me explain like this:
Company "A", presumably honest and acting in good faith License software (including source) from providers "B" and "C" and combine them to create a new product.
B's license doesnt allow A to distribute B's source code.
C doesnt really care about his source code being distributed use the GPL.
Results: A cannot integrate B & C, C loose the business.
Solution 1: C relicense under a BSD License. Works fine if they have the copyright on all the source code, unfortunately since it was develloped under the GPL, lazy developpers picked up pieces of GPL software all over and they now have to go back and find all those GPL pieces that they dont own and replace them.
The problem is not the GPL in itslef, but the fact is that it encourage development practices which doesnt necessarily provide a clean business practice.
Remember RMS complaining about XEmacs not keeping track of were the code was coming from ?
Working with the GPL is probably more difficult that with any given proprietary License, because it potentialy involve hundres of Copyright holder.
It doesnt mean its a bad license, but it means you need to have higher standards when you use GPL code.
> If you can find someone gullible enough to pay you
> for something they could get for free elsewhere,
> as long as you don't limit their freedoms that
> they had under the (L)GPL, you're in the clear.
Oh, the outrage! Are you suggesting I make it my business model to dupe innocent people (pardon: victums) into paying for something that's free anyway? That's immoral! No decent company will ever stoop this low! Uh... Well...
But still, it is impractical. There is no way I will be find enough people stupid enough to buy free stuff... Uh...
Surely, there can't be enough stupid people in the world to support a multimillion dollar business! Uh...
Uh... I... I wonder...
I'm going back and forth from this story and the one a few down about the MPAA about shutting down torrent distributors.
On that story, everyone's claiming that downloading movies is morally right and not stealing. Some even claim that we have the right to because copyright laws are evil.
Now this story has people writing about how the GPL is all warm and fuzzy and that because of it, Linux has been so successful. I also see posts about how it is vital for software that this agreement is strongly enforced.
Alright, isn't this a little hypocritical? I know that most of the people aren't posting contradicting posts on both stories, but what the hell?
Apparently, copyright laws are only fair when they benefit slashdotters.
> Intent and random arguments are irrelevant
No they are not, if they are the intent and arguments given by the creators of the license. Remember, the GPL states that the code may be licensed under any version of the GPL after the one supplied with the code. Because the FSF has the power to rewrite the GPL, the statements concerning its intent are quite relevant.
Per the GPL FAQ:
Additionally, you can create a derivative license, per the GPL FAQ:
Lodragan Draoidh
The more you explain it, the more I don't understand it. - Mark Twain
The copyright law does not provide for such a circumstance since it only applies to modifications made to the original work.
Let's say these are pages in a tech manual. You write some additional pages, and publish a manual 2.0 which contain the same original unmodified pages. Will a permission to print the original manual be sufficent under copyright law? No. It is a derivate work, even if the original work is unmodified. Absorbing it into a greater work *is* a modification.
As for the rest, the GPL is an offer. If you provide your code under the GPL, you can use ours. Your wording of it makes me want to reach for the "-1, Flamebait" or "-1, Troll" button. It is not designed for maximum use. If it were, it'd be BSD licenced or public domain (which is even freer than the LGPL).
It asks for something in return. To use business terms, let's call it a cross-licensing agreement, if it makes you feel better. Is that theft too? Do you have some natural right to use someone else's source code? Hint: Ask Microsoft if you can have a copy of theirs. You have misunderstood the goal of the GPL. The GPL "fanatics" are not hurting themselves, because the goal is not to maximize use but to promote the freedoms of the GPL.
Kjella
Live today, because you never know what tomorrow brings
-Who is entitled to change the wording of the GPL.-
Anyone, but it isn't retrospective, you can only agree to what you have agreed so GPL 1 is still GPL 1.
-Could RMS in principle change the license to state that all the software belongs to him?
Yes but so could you, and again it wouldn't be retrospective.
-Who would be entitled to make new versions of the GPL if the leaders of the FSF died tomorrow?
Yes, but is wouldn't be retrospective.
-Where should I look to learn more about this?
Weel it depends where you live, lookup copyright and contract laws for your regions.
thank God the internet isn't a human right.
1) I start to get worried when an implementation of a nice clean idea (such as Free Software) starts getting bogged down in special cases and exceptions. The philosopher in me wants to distill it down to first principles. The programmer in me wants to refactor and see how things can be more cleanly generalized. Special cases are often bad, and reflect a fundamental flaw in the general coverage of an idea (for example, whether you agree with its intention or not, the Assault Weapons Ban was a pretty Bad law, due to the fact that it almost entirely was based on special cases and exceptions with no general definition of what constitutes an "assault weapon.")
The GPL's need to make an exception for linking with OS libraries, for instance, therefore bothers my sensibilities. And Stallman's thoughts of adding clauses to the GPL so you are forbidden from removing certain kinds of features ("remote download of modified versions" or whatnot) knocks my sensibilities completely over, as do thoughts of restrictions on where the GPL software can be used (can't use them on hardware that only runs a specific version!).
2) "I'm trying to stop people from creating new licenses," Fink said. "To the extent we can create a license that has a broader buy-in, that stops proliferation of more licenses, that to me is goodness."
Uhm, what? No! Variety is the spice of life, and it's up to the creator of the copyright to decide which license they want to put on their work. You cannot "stop" them from creating, or using, new licenses, and you should not want to or try to, either! That to me is badness. What's the point of license homogeneity?
The following sentence is true. The preceding sentence was false.
> Okay, I'm an end user. I buy a copy of your word
> processor. You give me your binary. Do you also
> give me a copy of the spellchecker? If so, then
> you're distributing their code and have to follow
> their rules, since they hold the copyright on their code.
Ah, but why am I limited in distribution of the spellchecker when nobody else is? Let's say I give my word processor to a publisher and he bundles the spellchecker with it, without increasing the price. Who is in violation? Clearly, the publisher did not modify the spellchecker code. He has the right to distribute the spellchecker because the GPL gives him that right, just as a Debian packager can put all that GPL software on the same CD. What would be the difference between this publisher and me, if I were to assume the role of publisher and bundle my word processor with the spellchecker?
> GPL code is copyrighted and belongs solely to its authors, not to the public.
A purely technical distinction. If the public can use it free of charge, it clearly belongs to the public. Sure there are some things they can not do with it, but for most people that is irrelevant.
> Let's say these are pages in a tech manual. You
> write some additional pages, and publish a manual
> 2.0 which contain the same original unmodified pages.
That's not the same thing. An analogy to this would be: I modified the spellchecker and tried to sell Spellchecker 2.0. This would indeed be a violation, and I agree that Spellchecker 2.0 should be released under the GPL as the original was.
My example is entirely different. Suppose I write Manual 2.0, which is wholly a work of my own, but makes some references to the text of Manual 1.0. Because Manual 1.0 is free and freely distributable, tell me why I have no right to bundle Manual 1.0 with Manual 2.0? Would it make you happier if I also sold Manual 2.0 alone for the same price? What would be the difference?
You don't have to use a GPL'd spell checker in your word processor. Write your own friggin' spell checker! What's so viral about that?
Binary object serialization, virtual machine binaries, and other methods of interchange can result in obscure formats that change over time. As long as the software that creates those formats is open, there's not a problem.
If you had to enforce a laundry-list of accepted formats, that would stifle creativity on the part of the developers. I don't think the line is too unclear right now. When somebody gets a C program that looks like a brick on the screen, and all the variables have names like T2343242 you can be pretty sure that what you've got is obfuscated source, plainly in violation of the current clause.
Similarly, if you had a scripting environment that saved scripts in a binary format, you still have to open the script in an editor, and when you do that it's plain to see whether or not the source is obfuscated. This makes it possible to GPL software, even if it is loaded and saved by a proprietary binary scripting environment. In some way, it's also the same sort of thing that makes it possible for GPL'd software to run in any proprietary environment--e.g., the fact that source for Windows applications contain Windows API calls into the proprietary OS doesn't make them obfuscated, it just makes them non-portable.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
Honestly, how many developers read what's in a licence? When I use code for work I make sure it's under ASL. When I develop my own in my spare time I use GPL.
But let your licence be, 'GPL, GPL' or 'ASL, ASL'; and anything beyond these is of evil.
If they were truly interested in having their code used, they would have licensed it under LGPL.
Not at all. If they were truly interested in having their code used, they'd release it into the public domain. Then anyone could use their code without giving a damn thing back to the author. And if that is what the author wanted, then they are indeed very stupid for using the GPL. I'm pretty sure that is never what the authors intend.
By your terms, public domain is the ONLY "license" that isn't a viral license. That's the only time you can take someone's code and use/sell/modify it without being restricted by contract terms. All other licenses have some restrictions on them, which seems to what has gotten you all indignant.
Is it stealing if I embed the Apache web server in a product and make money from it? No, I'm spreading the code around, getting more people to use it. Maybe if I'm successful I'll hire some more programmers and have them work on other OSS projects. However even if it's allowed by the license most people would object to their code being used and improved but nothing being given back, for example bug fixes. Some licenses just rely on the honor system for that (like PD, BSD, MIT, and ASF) but some make it explicit (like EPL, CPL, MPL, and GPL). Look, if you really don't want your software to be hoarded then don't hoard it yourself. Let me use it and redistribute it and modify it and mix it with my own code. In return, I'll give you all the fixes and improvements I made to it. Sound fair? Now does it really matter to you if I provide the source to the other parts of my program? Why is that your business? GPL makes it your business, EPL makes it mine.
You've missed a big point. These people using GPLed libraries in their own code have ... agreed to a licence that says 'if you use my libraries in your code, you have to distribute it under my licence'. This is entirely fair and within the rights of the library-writer. To say it isn't fair because it means the second person can't choose his own licence is contradictory; the first person must be able to choose his own licence.
If it's fully fair for my customer to choose his own licence on his own, it's fully fair for me to choose my licence on my own. No-one's forcing you to use my code.
Look out!
PEBCAK.
L
The skills you need to understand this are at the level of development where you learned to count.
Seastead this.
As long as software patents are not a fact (in Europe at least), we should try to use the 'software-patent' terminology as cautiously as possible. The current US-Japan(-big business EU) oligopoly is not only trying to buy their way into EU law, making use of various legal and procedural tricks, but they're also trying to change the language and make the term 'software patents' sound natural. Resist!
(and explain all oligopoly related trickery to anyone who'll understand..)
Suppose that the evil hands write Evil GPL 3 to say "we can use it however we want, and no one else can use it without paying us One Million Dollars". Okay, they can create and release a closed fork of yesterday's source, which is bad. However, they cannot do a thing to today's source (which explicitly rejects Evil GPL 3), and they can't actually stop others from using yesterday's source openly (because they still have permission from Good GPL 2).
Consider a proprietary program and a GPL-covered library. The program uses the GPL-covered library if it is available on the system. Otherwise, users are asked to install the library. It has been argued that the dynamic linking by an end-user may not necessarily violate the GPL. Even if the library headers are GPL-covered, they could be redone in a "clean room." Dynamic use of the library code might or might not constitute a "derivative work" with respect to copyrights. Could the GPL be circumvented by transferring GPL-covered code to a dynamically-linked library?
In my opinion, most GPL problems are caused by an inadequate definition of the term "derivative work".
For definition of "derivative work", the GNU GPL defers to the United States Congress, which has defined "derivative work" in 17 USC 101 as
The LGPL does allow linking, and I see it as a much fairer license because it lets your code stay open, but does not prevent other people from licensing their own code differently.
But how can one usefully implement the LGPL where the linker itself is a secret, such as on an embedded system?
whether I release the software under GPL or in the public domain, I can no longer make money from it
There exist ways to fund software development other than restricting the distribution of software through copyright:
According to what I've heard, working on non-retail software (i.e., software that doesn't get sold) makes up 70-something percent of all programming jobs!
But hasn't the non-retail software industry been moving out of the United States of America and into South Asia? What percent of programming jobs in the United States involve bespoke software?
You own the copyright and there is nothing RMS or FSF can do about it unless you formally sign the copyright over to FSF. Just using their license does not give them unlimited power.
The new license could make insane demands and you simply relicense it. But that's action that the copyright holder must take, so a new GPL would have to be severely out of whack before copyright holders got off their butt and did something about it.
“Common sense is not so common.” — Voltaire
But I am the author of the entire word processor program. The spellchecker is only combined with it.
I don't see a practical problem here. If you put the copylefted spellchecker in a separate process, and you have it talk to your proprietary word processor over a pipe or a local socket and make sure to document the protocol, then you have implemented enough separation between your work and the spellchecker author's work to satisfy the letter of the GNU GPL.
If it wasn't then you couldn't run anything non-GPL at all under Linux because every program must link to the int80h API that the kernel provides for system services.
The Linux kernel license is GNU GPL version 2 with an express exemption for applications that access the kernel through syscalls. Courts haven't stated whether this exemption is required in order to link Linux headers against a proprietary app.
So if I were to sell a nifty tookit that did image manipulation, scripting, db access, networking, etc... Then it later turns out that the many companies had bought illicitly bundled open source. Woo! Would they then need to stop selling their products or even recall/refund? Well or re-implement all the features...
Oh, I would be out of the country sipping fruity coctails on a south seas island without extradidition treaties will the millions. That's, ahh, 3) Profit, by the way!