Misconceptions About the GPL 495
lisah writes "Misconceptions about the widely used GNU General Public License (GPL) continue to plague the free software user community and, according to the ITManagersJournal, 'the confusion is frequently based on misreadings, rumors, secondhand accounts, and what is convenient to believe.' In order to clarify some of the more common misunderstandings about the GPL, Bruce Byfield consulted with three experts: attorney Richard Fontana, one of the main drafters of the third version of the license; Harald Welte of the GPL-Violations project; and David Turner who is assisting with revisions of the license. Together, they help clarify the distributor's role in providing source code to customers, whether GPL is viral or unenforceable, and why some misunderstandings are really rooted in varied interpretations of the law." ITMJ and Slashdot are both owned by OSTG.
It's not what one lawyer says it means... (Score:2)
Re: (Score:2)
Viral? (Score:2)
You have to admit it would be quite effective at stopping the common cold.
Misconceptions (Score:5, Interesting)
Re: (Score:2)
What about the "No Warranty" section? (Score:3, Insightful)
Re: (Score:2)
It has been deemed by our brilliant legal system that in order to run a program, it is necessary to "copy" it (into the computer's memory). And, of course, in order to legally copy something, you need to be explicitly granted permission by the holder of the copyright. (The law has since been changed, now if you are an 'owner' of a program you have the legal right to run it - but who is the
Re: (Score:2)
Is that anything like Amway?
Re: (Score:2)
I understand it completely. (Score:2)
Yeah, this is exactly the nonsense that stupid PHBs worry about. They think that if they use Linux in their organization, say, as an Apache web server to serve up static "about us" web pages, they have to give the rights to their own proprietary software, which has nothing to do with Linux, to the community. I just don't "get" where the heck people com
Re: (Score:3, Interesting)
Re: (Score:2, Insightful)
They're business types. They're looking frantically, trying to find out where the scam comes in; where the dirty tricks are hidden; wh
Re: (Score:3, Insightful)
The 10, karma me now baby (Score:5, Funny)
2. The GPL is unenforceable
3. You can't charge for GPL software
4. The "liberty or death" clause applies absolutely
5. Distributors only need to ship the source code they alter
6. Distributors only need to supply source code, and not the means to use it
7. Distributors don't need to provide offers of source code
8. Distributors only need to offer source code to their customers
9. Distributors only need to link to the license text
10. I don't think that word means what you think it means
Re: (Score:2)
Re: (Score:2)
Inconceivable!
Re: (Score:2)
I wouldn't say that. The GPL wouldn't work if copyright didn't exist, but the GPL gives the user a right that wouldn't exist if copyrigt didn't exist: the right to receive the source code to a program in addition to the binary.
The GPL (Score:5, Funny)
The GPL is Viral, deflection not withstanding... (Score:2, Insightful)
* Microsoft may have first called it that (therefore it must be false.)
* The GPL doesn't infect other software on the same computer. (DUH?)
If I use any GPL code in my application, even one line, I have to release my application under the GPL license. Throw all the pointless qualifications you want around it, like only if I release the application to the public, and I can still release it under other licen
Re:The GPL is Viral, deflection not withstanding.. (Score:5, Insightful)
Actually, one line might be considered fair-use excerpting...
Seriously, if you don't want to GPL your application, just don't use any GPL code in it. Why is that so hard? Nobody whines about not being able to incorporate pieces of Microsoft Office into their code. The only difference is that you gan ogle the beautiful source code of GPL applications, so that it's more of a temptation.
You're not going to lose the rights to your software if you invoke GPL code with it. You're not going to lose the rights to your software if you use GPL code to make it (e.g. gcc and emacs don't tarnish your C code). You're only going to have to GPL your code if you actually incorporate someone else's work into it.
Re: (Score:3, Informative)
For example, dynamically linking to a GPLed library does not taint your code -- that is a separate piece of software that you code uses. On the other hand, if you distribute the GPLed library, you better also distribute the source code to it.
Re: (Score:2)
If a library is released under the GPL (not the LGPL), does that mean that any program which uses it has to be under the GPL? [gnu.org]
Yes, because the program as it is actually run includes the library.
A clear statement about GPL virality (Score:5, Informative)
It's very easy to make a clear statement about GPL virality, so I really don't understand why the interviewees didn't take the opportunity to do so. Here's my off-the-cuff attempt at an explanation:
Unfortunately, a nice simple summary like that doesn't carry the whole truth.
The problem is that the derivation of programs carries a double semantic under the GPL, and this is the source of endless debate and discontent because it is partly inappropriate in a distribution license.
One of the two meanings of derivation relates to physical modification of the original GPL source code to create a new ("derived") work through the process of code extension. By any rational assessment, this is a self-evidently fair provision, in that if you take someone else's source code and modify it in some way, then your new program is derived by ancestry. and thus quite reasonably should inherit the license of its progenitor.
In contrast, the other meaning relates quite illogically to *using* GPL'd library code through linking to it, despite having made no modification whatsoever to that GPL'd code. This could make sense in a usage license (which the GPL is not, in theory), but it is quite out of place in a license dedicated to protecting the availability of the original source code and any modified versions thereof. That semantic is clearly in the license "for other reasons".
Remember the discredited attempt by some content providers a few years ago to equate web links and the content to which they point as being one and the same thing? We "obviously" knew that that was ridiculous at the time, yet the GPL tries to claim that linking for usage is the same thing as copying the source for derivation by extension. It's "obvious" that this is incorrect, and that therefore the client application should not become affected virally. There is no derivation by ancestry, so by what mechanism is the license inherited? Well the answer is that it's not inherited --- instead the new, non-derived client code has been tainted by usage.
This second semantic has no business being in the license at all, because consistency would then require us to taint everything else that comes into contact with GPL code through simple USAGE, and that includes web applications. Usage is usage, you can't make arbitrary exceptions to it without totally undermining your platform of logic.
It's quite a mess. Maybe we need a good chat with Eben Moglen; I think he'd understand the problems inherent in tainting by usage very clearly.
So you see, those 3 paragraphs don't really tell the whole story. Still, they certainly define GPL virality a lot better than the article did.
Re: (Score:2)
--jeffk++
Re:The GPL is Viral, deflection not withstanding.. (Score:2)
You're correct. What's your point?
It's been said already in this discussion, but it bears repetition: If you don't want to release your code under the GPL, then don't. A condition of using GPL'd code is that you release
Yes, but (Score:3, Insightful)
But what if it's really as you say? You've got your program, and you want to add one GPLed line? Yeah, you're right, it's going to make you GPL the whole thing. (Yes, I just admitted that your point w
Think "Poison", not "Viral" (Score:3, Insightful)
The GPL is effectively a poison-pill license, not a viral license. It's saying that you can only write GPL code using a GPL base; a "viral" license would force the GPL on other code.
For example, people use Apache code modules to support GPL projects and products. If the GPL were viral, the Apache code would have to be redistributed under GPL. The GPL is a poison-pill in that you couldn't take that GPL code and merge it in to the Apache code base; only the original author or their legal representative
Re:The GPL is Viral, deflection not withstanding.. (Score:2)
If I have a 10 million line program, and it links to and calls FFTW (a GPL Fourier Transform package made up of a few thousands lines of code), my 10 million line program is now under the GPL. I cannot offer that program to outside organizations without also offering to make all 10 million lines of source available to them. "Viral" is not a bad description of this effect.
I'm not saying this effect is good or bad, but it MUST be accurately understood.
The authors downplayed this too m
Re: (Score:2)
Really? Oh, is it like the time you caught a cold and your whole body turned into a giant rhinovirus for a week? Or is there some other similarity you're referring to?
Anyway, FFTW was a bad example. From their FAQ:
Re: (Score:2)
Let me explain the analogy. If someone has a cold (if some code is licensed under that GPL), and they come into close contact with another person (the code is linked with some other code), then that other person also gets a cold (the other code is also now licensed under the GPL).
Not a perfect analogy, but not bad. Feel free to propose a better one.
An
L is for Libraries (L is for Lesser) (Score:2)
Neither harmful nor self-propagating (Score:3, Insightful)
The main criterion for something being viral is that it is self-propagating. It goes and injects itself into your body (or computer, or software) without permission. The GPL doesn't do this. You choose to use the GPL in exch
Re:The GPL is Viral, deflection not withstanding.. (Score:2)
Yes, but how's that different from any other license out there? If you use Microsoft's code in your application, you're going to have to release the result under the license terms dictated by the license you have from Microsoft to use their code. In that respect the GPL is no more viral than any proprietary software license.
Calling it "viral" is misleading (Score:3, Insightful)
The reason "viral" is inappropriate and doesn't make sense, is that all other uses of the word "viral" in the history of the word, mean something completely different. A virus infects other, unrelated things.
This new, radical concept of "viral" invented by Microsoft, is talking about infecting a derived work. Well, guess what: if you make a derived work of almost any of Microsoft's products (such as, say, Microsoft Windows itself), your derived work is going to be even more restricted. In fact, it's pr
Part of the problem just proven (Score:2)
FSF doesn't do jack to refute misconceptions (Score:2, Insightful)
Another example is MySQL. They don't understand the GPL, in fact it seems to
I'm glad that cleared things u....waaah?? (Score:2, Insightful)
Re: (Score:2)
It's already addressed. GPLv2 section 3 includes an explicit statement that components normally provided with the system (eg. the system libc, compiler, etc.) do not have to be included with the source distribution. So if you used make to handle the build process you have to provide your makefiles, but you don't have to provide the make program itself since it's part of the recipient's system and normally available to them.
Linking to a shared library? (Score:2)
For example, if I write an application that makes a call into something like OpenSSL, does my app have to be GPL'd?
Re: (Score:2)
Re:Linking to a shared library? (Score:5, Informative)
One question I've wondered about the GPL. If I write a program that links to a shared library that is GPL'd, do I need to GPL my application as well?
There are two schools of thought on this, and the answer to your question is pretty hotly debated.
The "stricter" school of thought, unsurprisingly the one favored by the FSF [fsf.org], is that statically or dynamically linking an executable to a library forms a work which can be considered a derived work of both sets of code. Under this theory, your application's source code doesn't have to be GPL, but its license does have to be compatible with the GPL since the linked work (app + library) taken as a whole is in part derived from the library and hence must be under the GPL. For instance, your app's source code could be licensed as LGPL or two-clause BSD in this situation with no problem, but could not be (for instance) CDDL or 4-clause BSD. Most Linux distributions follow this stricter, more conservative view.
On the other hand, it has been pointed out that this strict interpretation can sometimes lead to a peculiar conclusion. Suppose a work-alike copy of a GPL library is written from scratch and licensed permissively. Then a program linked against the GPL lib could also be used with the permissive library that forms a drop-in replacement. The strict theory of linking then implies that the license of your application is GPL if the GPL library is on your system, but not if the replacement library is instead. If this is not an acceptable conclusion, then it must be that dynamic linking against a GPL library does not make the application be under GPL as well.
This looser interpretation effectively defangs the GPL and makes it essentially equivalent to the LGPL, because anyone could change GPL'ed code they want to use into a shared library, then link their proprietary application against it.
Note that the interpretations differ only in the case of dynamic linking. When an application is linked statically against a GPL library, parts of the library object code end up in the compiled executable and therefore this is indisputably a derived work of both application code and library, hence under GPL. Proponents of the strict interpretation point out that from an end-user's viewpoint, there is no difference between static and dynamic linking other than the "-static" flag given to the linker, so the two methods of linking should not be legally distinguished either.
To the best of my knowledge (IANAL) there isn't any legal precedent favoring either interpretation.
Re: (Score:3, Informative)
You have to decide or research the answer to this question (which is a question about copyright, not the GPL): does calling other software's functions, cause the caller to be a derived work?
If your lawyer says Yes, then yes, your app that calls OpenSSL is a derived work of OpenSSL and you are subject to its terms. The good news is that every single application that runs on MS Windows and MacOS (assuming the app does any I/O or allocates any memory) are derived works of those OSes, so you're still at a tre
The GPL restores and preserves freedom (Score:5, Insightful)
Confused? Listen to RMS Tell You Then... (Score:2, Informative)
Check out: http://alternativefreedom.org/ [alternativefreedom.org]
Documentary also features Lawrence Lessig, Danger Mouse (of Gnarls Barkey), and others...
Application Service Providers - GPL v3 (Score:2)
This allows companies such as Google to modify and profit from GPL applications without offering their changes to the community. (I'm not saying they do, but it allows them to)
Are they planning to try and stop this with GPL v3?
I find when i talk to
Re: (Score:2)
As far as I can tell from reading the GPLv3 drafts, there's no plan to require disclose of code when the binaries aren't actually distributed to others. The closest thing is the clause that says that if the original GPL'd Web program included the ability for the user to download the source code (eg. the PHP behind a Web site), your modified version can't remove that ability (note that if the original didn't include that functionality there's no requirement that you add it).
My favorite (Score:2)
My favorite misconception:
I actually heard a PHB state as fact that "GPL" stood for "GNU Per Linux" and was just an abbreviation for "GNU/Linux".
You don't know how hard it was not to ask him what BSD stood for.
--MarkusQ
My only objection... (Score:4, Insightful)
If they would straighten this out in the license I think GPL software and GPL licenses would see a LOT more use. Having a distinction between static and dynamic linking (particularly given all the different ways you can link code these days) makes usage rules much more confusing. A non GPL program shouldn't be subject to GPL unless it's source code actually contains stuff copied from GPL sources. Simply static linking with a GPL library shouldn't make you GPL too.
This is really the only objection I have to GPL, all the other terms don't bother me at all.
Re: (Score:2)
The FSF has already straightened this out: they created the LGPL, which you directly mentioned. They can't "straighten out" the fact that the library's author chose to license it under the GPL instead of the LGPL, since it's not their code.
Re: (Score:3, Informative)
While dynamic linking to DLL's doesn't.
No, dynamic linking counts, too. Both static and dynamic linking are considered creating a "derivative work". (The only exception is that the GPL allows linking if the library is something that is standard; e.g., distributed with an OS. So GPL'd Windows apps don't need to worry about linking to all the non-GPL DLLs that ship with Windows.)
try a Venn diagram (Score:2, Interesting)
If you never let anybody see your work, you give away no rights: (dot in center)
With a proprietary licence you give away this many rights: (teeny circle around it)
With the GPL you give away this many rights: (slightly bigger circle around both)
With the BSD you give away this many rights: (much bigger circle around them)
If you dedicate it to public domain: (huge circle around everything)
At this point the light seems to turn
Problems with the GPL (Score:2)
Also, GPL for libraries is almost always a bad idea. Unlike programs, libraries are linked, techni
The biggest misconception of all ... (Score:4, Insightful)
GPL violations against the smalltime developer (Score:3, Interesting)
Tangentially en topic, but this is a good chance to post my article which slashdot has rejected twice now:
I am the developer of Jin [jinchess.com], a client for chess servers, licensed under the GPL. About 6 months ago I was contacted by the Internet Chess University [ichessu.com], asking for a commercial license for Jin. After negotiations failed, IChessU decided to nevertheless use Jin, but did not release the full source code of the client they built. I have contacted both the FSF and the EFF, but they were unable to help me because they are not licensed to practice law in Israel (both I, and the owners of IChessU are Israeli). I have no intention of dropping the issue, but I am now stuck with paying a lawyer out of my own pocket, which is very limited. Read the whole story [jinchess.com].
The question is then, what kind of protection does the GPL really give the small-time FOSS developer, who can't afford fancy lawyer to enforce it? What does this mean for such developers?
some counter arguments. (Score:3, Interesting)
In response to the 3rd point, about the price of GPL-ware, and freedom. Let me be clear, the GPL is a license, which outlines restrictions. The word restriction, and freedom seem almost mutually exclusive except in terms of establishing the contrast of each other. Aka the provision is the GPL about how you MUST provide the greedy original author with your cool enhancements is a restriction of the GPL, not a freedom it provides. The price of the GPL is a non-issue, as I just showed how the gpl is not free, as in freedom, and the author of point three points out that the GPL does not guarantee free as in "free lunch, free beer" (aka price).
Point 9 is funny. When BSD code is assimilated into the GPL I notice that the BSD clause of always attributing the author is mostly ignored, and even replaced (many times) with the GPL-ware authors name. So complaining about not having the entire GPL license in each and every file header is a joke. Of course this is a case by case situation, but really, the common case is that the GPL licensed project typically has a person who takes other peoples enhancements, by force of license, and represents them as their own without attributing the original (patch) work to the contributing author.
People, there is a better way for you to contribute code to the world. The BSD way! In short, and without starting a bikeshed flame war, the BSD way doesn't care about restricting you by the license, except to not steal the fame for the code, aka give credit to who you accept BSD licensed code in your project, and who cares if you are commercial project, or philanthropic. Freedom should always win over greed.
Re: (Score:2, Informative)
Consider the case that you are creating a tool and your goal is to ensure its always available as a service to the community. The way I understand it, the GPL can ensure that works based on your source will still always meet your goal. So look at it more as continuing to be true to your intent, if your intent is openness.
Here's the text of the actual license.
http://www.gnu.org/copyleft/gpl.html [gnu.org]
You described the goals of the LGPL, not the GPL (Score:2, Insightful)
The OP is is saying exactly that the GPL does not line up with this set of goals. If I'm trying to make a *tool* that will always be available, then I will use the LGPL because that *tool* will always be available and usable.
By a developer making his libraries "free" only under the GPL (and not a more free license like the MIT/BSD or even LGPL), then he's forcing anyone that w
Re: (Score:2)
--jeffk++
Re:You described the goals of the LGPL, not the GP (Score:5, Insightful)
Re:Still I really dont like it. (Score:5, Insightful)
A chef having to give away his recipe because he used GPL spices...worst analogy ever. Reverse it and it would be correct because a developer is not going to take a small amount of gpl code and use that, they are gonna add their small amount of code to a largely GPL base. (well atleast 99% of the developers out there).
How does the GPL force a developer that chooses it as a license to do anything. They made a decision to use it because they like it as a license, they arent forced into using anything. The people that bitch about the GPL are developers that already decided against it, and because they dont use they somehow think it is an "unfair" license (to whom i dont know since they have already chosen not to use it)
I think developers need to get this concept in their head...just because the source is available, doesnt mean you have to use it, and doesnt mean you have the right to use it either. You simply have the option to use it.
Re: (Score:2)
The end user of source code are other devlopers...
Re: (Score:2)
That couldn't be any more wrong. The user is exactly who the GPL is for. It's just that the "hacker users" are the only people who understand this, so far. And a lot of them don't really get it, hence the confusion between Free Software and Open Source development.
It becomes a EULA the instant that the user decides that he needs maintenance -- a really nice EULA that allows a completely free market for supplying that service.
Re: (Score:3, Informative)
It requires the person you hire to change the code, to give you the code.
You never, under any circumstances have to give changes back to the original project or for that matter, anyone that didnt recieve the binary. The only person that the binary was distributed to was me, which means I must also recieve the code changed code. Obligation met.
If there is only one person the modification is "distributed" to, there is only one person that code must be given to.
Re:Still I really dont like it. (Score:5, Insightful)
In every instance I've been involved with in the past 20 years or so of professional programming, this statement is 100% wrong-- at least from the commercial angle. We've gernerally got an application that is filling a particular need and we're looking to add functionality to the already 100's of thousands to millions of lines of code we've already written. The first thing we do is look and see if anyone has already solved the problem, and if so if we can use it; if we find something and it's GPLed, we can't use it. Adding an extra 10,000 lines of GPL code written last year to our legacy system in use for the past 10 years and now suddenly our legacy app is a derivitave work of the GPL code is out of the question. Which means that we end up either looking for (or buying) an alternative if we can't work out a deal with the original copyright holders (which so far has been nigh on impossible-- we've gotten exactly one license from a GPL project that we needed to use). If that fails, we end up writing our own code, which now is by default non-free.
While I'm not disputing the quantity of GPLed software out there, I know that many of these projects are giving up help just because of the license. As an example, in one case we had determined that we'd need to allocate at least 3 people to implement a particular feature that a specific GPL project already had (mostly) working. I contacted the project "leader" and tried to negotiate a different license for the use of their project that involved a cash payment and allocation of a full time employee for a year to help bring it up to spec. We were unable to come to terms not because of any desire on their part not to, but because they used code that was also GPLed. No one was ever able to locate every one of the copyright holders to get permission and so it never went anywhere.
Don't take the above as a gripe-- whatever license you want to use is fine by me-- if I can use it I will, if not I won't, no skin off my nose either way; I'm sure I'll be able to get my job done with your product, your competitor's project, or I'll become your competitor if I need to.
rob.
Re: (Score:2)
Reverse it and it would be correct because a developer is not going to take a small amount of gpl code and use that, they are gonna add their small amount of code to a largely GPL base.
Remove such vagueities are "small" and "large", since they have no real meaning. I'd like to point out that it's a completely unnatural premise that a commercial developer is going to start building on a GPL project for profit. Now look at the post again. It's one thing to reverse an analogy to be in direct contradiction to r
Re: (Score:2, Insightful)
Re: (Score:3, Insightful)
Unrestricted freedom includes not having freedom in itself, by definition it is a paradox. The GPL excludes this paradox, making it free. It is a restriction on freedom disallowing freedom to be restricted, which basically gives/promotes freedom, not restricts it.
Easy, isn't it?
Re:Still I really dont like it. (Score:4, Informative)
There's no paradox. Software with unrestricted freedom will always remain free, just as software under the GPL will. If Johnny uses libfoo in his closed-source project, this does not prohibit anyone else from using libfoo, improving upon it, and possibly even releasing changes. The original code is still available, even if Johnny keeps the parts of the code that he wrote himself closed.
Re: (Score:2)
WRONG!!
Free would be no copyright. There's a reason why the GPL s a copyleft license. The whole idea of it is using copyright laws to fight their effects over code.
In a world without copyright applied to software, the GPL wouldn't apply, but then, it would be the ideal world for a RMS-style GPL advocate, so it would be OK.
Licenses don't _restrict_ freedom, they _grant_ freedom.
The GPL grants you more freedom than most licenses. BSD style licenses grant you even more freedom, including the freedom to
Re: (Score:3, Insightful)
Re:Still I really dont like it. (Score:4, Insightful)
The solution is simple then - the Chef can either use different spices, or make his own.
You don't like it, don't use it. Nobody is forcing you to incorporate GPL'ed code in your project, and nobody is forcing you to use the GPL for original works.
Re: (Score:2)
Re: (Score:2)
Instead you opt in for an autocratic nation with open borders.
I'll have to think on that a bit.
You're incorrect (Score:3, Interesting)
Is it the developer? No, the developer gains no additional freedom by placing the work under the GPL.
Is it the user? No, though there are some nice clauses about requiring source code to be provided on demand, the user is no freer with a GPL'd work than with a work in the public domain or one covered by an arguably "freer" BSD-style license.
Then who gets the freedom? Good question
Re: (Score:2, Insightful)
That != freedom. Not for the users (can't have this or that bundled), not for the developers (can't use modified GPL code without complications), and not for the software itself (can't be part of something it may want to be).
If I'm ever going to release any open-source software, it'll be either in public domain or, if I'm too greedy, BSD.
Re: (Score:2)
Let's say I write a program that incorporates some GPL code and I release it under the public domain. Have I violated the GPL? Or, lets say I release it under the GPL, but then I refuse to pursue any litigation over violation of the license of my code. So someone takes a piece of novel code out of the program and does binary only distribution, etc. Where do the various legal responsibilities fall? Does it end up being that the d
Re: (Score:2)
Re: (Score:2)
Nobody is forcing you to incorporate GPL'd code into your project. There is absolutely nothing stopping you from rewriting that code from scratch or obtaining similar code (or possibly even the same code) through commercial channels under a commercial license. However, *if* you choose to incorporate GPL'd code, then your code must be GPL'd. That's how it works.
As a developer, if you release original code (with no dependencies) under the GPL you give up nothing. You are always free to release the code un
You don't get it. (Score:5, Insightful)
If you are trying to use someone else's GPLed code, track down that person and try to get a non-GPL license from them. Is that so hard? It's exactly what you'd have to do to get access to someone else's proprietary code, except that you get to preview the source.
If the author want to license his code to you in a non-GPL way, well, it's his creative work -- he can do what he wants. Start from scratch or find another vendor.
Re: (Score:2)
Then don't use it. Duh. Why do people complain about this when they can simply use the BSD license or one made up from scratch? This really is a non-issue.
"Incorporating GPL sections of GNU Code could put you in violation"
If you don't plan to distribute mixed proprietary code and GPLed code, you're not in violation. If you plan to distribute, then write your own code or follow the GPL rules. The bits of code
Re:Still I really dont like it. (Score:5, Informative)
No. The GPL applies on redistribution, not on distribution. The GPL puts no requirements or restrictions on the copyright holder whatsoever.
Incorporating BSD-licensed software could put you in violation if you remove the copyrights, or GZIP if you claim you wrote it (as Winzip used to do), or commercial software that you have source code to.
Fact is, it isn't the GPL that's restricting anyone doing anything. Copyright law already has these restrictions. The GPL gives you license to do things you otherwise wouldn't have a right to do.
But as I mentioned, it doesn't enter into effect at all unless you're redistributing someone elses code that is GPL licensed.
Not in theory. It has no effect whatsoever on the distribution of your own application. It only has an effect when you want to redistribute code that you aren't the copyright holder to.
Guess what: you don't have the right to redistribute other people's code. The GPL had nothing to do with this.
That's absolutely correct, but guess what: His secret recipe, as valuable as it is, was done on the backs of others. If he can build his secret recipe without stealing from other people, then he's welcome to.
You can do this with GPL software as well. MySQL (among other people) offer licenses for their software that gives you additional redistribution abilities.
But note, at no point here, did the GPL take away any of your rights as the copyright holder, or any of your rights as a redistributer. All the GPL does is give you rights, and only in certain circumstances.
GPL does not give rights (Score:2)
In theory, it gives me the FSF's protection, but the right to defend my copyright is something I already had.
It allows others to see and use my code, but I could have granted that without the GPL and with less restrictions on the developer community (if I had used the LGPL, for example).
What extra rights does it give me? How does it extend the law and enable me to do things I couldn't otherwise?
This isn't a criticism of the GP
Re: (Score:2)
That's true, actually. It's a question of degrees: how much are you giving up, and is it worth it?
There are only three incentives I can think of, for why a developer might decide to give up that freedom:
Re: (Score:2)
With software patents, you don't need to use other peoples software to be in infringement, that's a big difference, you don't choose to infringe on a software patent, but you have the choice to use GPLed software.
About the GPL, you are right, you lose rights as a developer and give them to the user. No the end user, that's the point. You don't get to dictate that the user is the "end user" anymore, they can choose to become distributors, too.
The whole idea behind the GPL is the freedom of
Re: (Score:3, Interesting)
What freedoms as a developer?
You still own the copyright to your code, any modifications by 3rd parties are given back to you, so what have you given up?
Or perhaps you are refering to the freedom to charge an inflated price to license the binaries compiled from your source and reap a massive profit margin, but you may need to consider the licensing of all closed source proprietary software and libraries you utilzed to make your cl
Re: (Score:2, Interesting)
Re: (Score:3, Insightful)
Then just do that. No one forces people to use the GPL. Unless you want to reap the benefits of other people's previous work. In that case then you have to follow the licensing terms, just as with any other license.
Re:Still I really dont like it. (Score:4, Insightful)
The perspective of those of us in the Free Software community is that all software should be Free Software.
Unfortunately -- that is not very reflective of reality. That approach keeps people away from OSS because it's effectively an ALL OR NONE proposition for them. They either buy into the idea that everything should be OSS, or they stay away.
It may keep some small number of developers away, but if they're only interested in using our code against us, I don't see how this is harmful.
I avoid engaging in any OSS projects for that very reason. If you want to the benefits of others works, there is a cost associated with it. GPL just makes that cost your software where Proprietary Software usually has some fixed cost associated with it (ie the cost of the software). GPL is definitely not free.
If by free, you mean lawlessness, then you're correct. As a society, we live with rules. The GPL says "If you want to work with us, here are the rules you have to follow.". Proprietary software also has rules, rules like "You must pay us money." and "You must sign this non-disclosure agreement about what you see." and "You must sign this non-compete clause."
I still believe that GPL is viral in nature because there is no proportionality associated with it. If you apply a small set of code to an existing open program, I can understand the requirement to keep it open. But if I were to take a program the size of OpenOffice and use a couple interesting chunks of code, I'm technically in the same situation. So whether the GPL code contributes
This gets back to the original point, which is that the GPL is designed to help create a library of Free code that can be used by any Free Software developer. You're saying "I can't steal just a little bit." and indeed, you're right, you can't, by design. You also can't mix that proprietary code into Free code.
I know the immediate response to that is "then don't use it, you have a choice" -- which is what I do, but it doesn't change viral nature. Version 3 of the license doesn't seem to address this issue and it is one of the big reasons why anyone thinking of using any GPL code needs to think about it carefully because it remains an ALL or NONE proposition. To me, that's what makes it viral in nature.
Fiften, or even ten years ago, people with that perspective may have been able to be convincing, and they argued for the BSD license. There are plenty of people in the BSD community would agree with you, and find that the GPL is too restrictive for them. If that's what they, and you, believe, then you have all the rights to go ahead and use what you feel is a more appropriate license for your work. But since then, in the ~20 years of the GPL, there is now far more code available under it than under the BSD license, including code from buisnesses.
I think a major reason for that is the exact reason that you've pointed out as a "viral" quality- that is that with the GPL, no one can get a leg up on the original developer. It's "Come and join us." or "Sorry, we can't help you.". If Sun had a license which allowed you to as you wanted with OpenOffice.Org, then they'd be at a disadvantage against you.
It's a shame that you don't use our work and contribute to the community, but that's your choice.
Re: (Score:3, Insightful)
It may keep some small number of developers away, but if they're only interested in using our code against us, I don't see how this is harmful.
This gets back to the original point, which is that the GPL is designed to help create a library of Free code that can be used by any Free Software developer. You're saying "I can't steal just a little bit." and indeed, you're right, you can't, by design. You also can't mix that proprietary code into Free code.
I resent the notion that I'm simply trying to "ste
Re: (Score:3, Informative)
Your feelings of resentment aside, the idea that you would use code that, I wrote in a way that I don't intend is wrong. Stealing is a loaded word, but it sure is freeloading.
If I take a piece of code, make it better, return that change to the OSS community, I still can't use it in my software without make it GPL as well
Re: (Score:3, Interesting)
If you want to live in a non-open-source world, live by the non-open-source rules.
You seem to be making the mistake of thinking that GPL authors want their code to be used by anyone regardless of intention. Most GP
Re: (Score:3, Interesting)
Not entirely true. Not every project needs to have the entire application "open". If I use GPL application "A" and integrate it with my application "B", that doesn't mean that I won't contribute to application "A". I may have specific reasons for keeping "B" proprietary while still being a contributor to "A" (i.e. new functionality, bug fixes, testing, etc...). I may not be the g
Re:Still I really dont like it. (Score:4, Interesting)
B.
Re: (Score:2)
First off, having access to a GPL app as a developer is *always* going to be at least as good for you as having access to a similar closed-source app. With a closed-source app, you tyically can't even *look* at the code. You can't reuse the code in your code, you can't redistribute the result.
With a GPL app, you can *always* look at the code, and you can *always* reuse the code. Its true that you can only redistribute the result as long as you are willing to allow your users the sam
Re: (Score:2)
you have no inherent right to use the code
Do you have the right to use code from Microsoft...oh wait you dont have that as an option.
You sure piss and moan about a license you clearly would not even use. Why not go write the code yourself (or are you just a lazy SOB)
Re: (Score:2)
IBM, Red Hat, Monta Vista, Google.com, and many other businesses make millions of USD, every year from GPL licensed software. Evil?
It's like giving up the keys to your house, actually I think there is a clause that allows anyone to make copies of the keys to your house to use to come and go as they please.
No, if that's the analogy you want to use, it's more like you give others the right to make duplicates of your h
Re: (Score:2)
I think the GPL is okay for some things, but not for everything by any means. That said, most of the time you can do just fine by no GPLing your own code and avoiding the inclusion of GPLed code (basically the only way to violate the GPL).
Re: (Score:2)
As the article said, "any third party" means exactly that: any third party. So yes, if you distribute binaries with only an offer to provide source, any Joe off the street can ask for source. That's because anyone you provide binaries to can redistribute those binaries per the GPL and pass along your offer (as long as they're not redistributing commercially).
Re: (Score:3, Interesting)
The commonly accepted (but untested) theory is that the API provided by the ke
Re:it's impossible to use GCC then (Score:4, Insightful)
using GCC for your own commercial apps is impossible then, because you have to include libraries and headers, which are GPL'd.
Though I'm sure it will shock you, you are not, in fact, the first person to have considered this issue. The FSF has thought carefully about it and addressed it.
The copy of the GPL included with gcc includes the following notice with respect to the gcc runtime library and several others (with slight, and appropriate, variations):
thus this instantly "infects" your code, forcing you to make it GPL'd as well. as soon as you "include strings.h" or io.h or whatever, bingo. or if you use one of the libraries (glibc comes to mind)... oopsy!
Actually, those headers you mention are part of glibc, not part of gcc, and all of glibc is distributed under the LGPL license, which does not require the resulting derived work to fall under the GPL or the LGPL.
ok, so I write a commercial app with 10 million lines of code, and I happen to use a little 100 line GPL static library - then all my work is suddenly derivative?
Yes, it is, but that has nothing to do with the GPL. Copyright law says that if your work incorporates another copyrighted work, the result is a derivative work, and it doesn't say anything about the relative sizes of the two pieces. If the library you use is under a license that grants you permission to use it, then you're fine. If it doesn't (e.g. it's proprietary), you absolutely can't use it. If the license grants you permission but only under certain conditions, then you're fine as long as you meet the conditions. In the case of the GPL, that means your app has to be distributed under a GPL-compatible license. In the case of the LGPL, you just have to distribute source to the library.
Realistically, though, if you wrote a 10 million-line program you should be perfectly capable of writing your own version of the 100-line library and avoiding the issue entirely. If that 100-line library is so hard to write that you can't create your own, well, you need to re-evaluate the value of that library, regardless of its small size, because it's apparently a bigger chunk of work than you're giving it credit for.