Slashdot Mirror


Misconceptions About the GPL

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.

14 of 495 comments (clear)

  1. Misconceptions by Drachemorder · · Score: 5, Interesting

    I'll tell you what misconception annoys me the most. It's the idea that you need to agree to the GPL in order to use the software. I find it highly irritating to be asked to click-through a EULA window containing the GPL when I install a piece of software. The GPL is not a EULA, and you don't really have to agree to the GPL if you only intend to use the software. The GPL gives you rights to modify and redistribute the software; if you don't agree to the GPL, there is nothing else that would give you such rights. The right to use the software is implicit in the fact that it was legally distributed to you.

  2. Re:Still I really dont like it. by jellomizer · · Score: 1, Interesting

    Yes but that assumes that I keep all my code license clean, or keep 2 different forked version. Lets say I liked how GNU Application Y, Handles Z. and Closed Source (Which I have the rights too) Application V, Handles C so In order for me to have my Applaction handle both Z and C I will need to find a GNU Version and a Non GNU Version of their respected sets. Either giving my users reduced functionality in both products in different location or expensive for me to maintain. In this case it could be easier for me to buy a licence of program W which handles Z good enough and keep my program closed source, or non GNU. GNU More often then not steps on its own feet and causes people who are well meaning to get off it. Because for the fact that it is inforceable.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  3. You're incorrect by BadAnalogyGuy · · Score: 3, Interesting

    You are approaching the issue of freedom from the completely wrong angle. When you put a work under the GPL who gets the freedom?

    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! The software itself.

    How can an inanimate thing like software gain freedom? Let me explain. By licensing software under the GPL, it guarantees that the software cannot be used in other non-GPL projects (give or take a license). Any code that comes into contact with GPL'd code gains the same freedom and the process continues so long as people continue to use the GPL code in their projects.

    So software freedom is freedom for software. Free Software meets developers on an equal footing, not one based on a master/slave relationship like BSD licenses define. Closed source software treats software code as property, not much different from treating slaves as property. The GPL gives software code its very alienable right to not being used so shabbily.

  4. Re:I understand it completely. by wolrahnaes · · Score: 2, Interesting

    If you don't know where it comes from, clearly you didn't Get The Facts

    --
    I used to get high on life, but I developed a tolerance. Now I need something stronger.
  5. Re:Still I really dont like it. by Dr.+Zowie · · Score: 2, Interesting

    Keeping your license clean is something you have to do anyway. That's not new to GNU. Just find the original author and buy a non-GNU license from them. Can't do that? Well, most proprietary vendors don't want to license their code to you, either -- so you're no worse off than you were before.

    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 GPL authors release their code under open-source license to encourage you to do the same -- so that everyone gets more software goodies to share.

    If you don't intend to share your own goodies the same way, then to heck with you -- you're not a customer, you're a leech.

  6. Re:Still I really dont like it. by Jim_Maryland · · Score: 2, Interesting

    If you don't intend to share your own goodies the same way, then to heck with you -- you're not a customer, you're a leech.

    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 great contributor that you are but we could probably find others out there that do more than either of us too.

  7. try a Venn diagram by spikenerd · · Score: 2, Interesting

    I've found that a Venn diagram helps a lot when people misunderstand the GPL.

    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 on for people and they say something like "You mean the GPL is closer to a proprietary license than the BSD?". That's when I know the confusion has finally been dispelled. Nothing annoys me more than people who are afraid of the GPL because they believe it will somehow take their rights away from them.

  8. Re:Still I really dont like it. by penix1 · · Score: 3, Interesting

    If you want me to respect your closed license, then you can damned well respect my free one. It isn't too much to ask that if you distribute code I wrote, to distribute those changes you made to it so I can learn from them. That is the reason I release code. It isn't to make money. It isn't to gain fame. It is to learn from others as they learn from me. It amazes me the amount of bitching about this simple concept. It amazes me more that there are morons out there trying to pressure others to allow the closing of code in a free software environment. Doesn't sound very free to me. If you don't like the GPL then don't use it. There are a multitude of other "open source" licenses out there. /soapbox

    B.

    --
    This is a sig. This is only a sig. Had this been an actual sig you would have been informed where to tune for more sigs.
  9. GPL violations against the smalltime developer by SashaM · · Score: 2, 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, a client for chess servers, licensed under the GPL. About 6 months ago I was contacted by the Internet Chess University, 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.

    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?

  10. Re:You described the goals of the LGPL, not the GP by DamnStupidElf · · Score: 2, Interesting

    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 wants to use this shiny tool to also make their software free under the same restrictions. That is why the GPL is "viral" -- not because it "infects" any software that it is stored next to -- but rather because GPL code is useless unless you're working on other GPL'd code.

    The GPL is perfect for entire systems of code, since that's exactly what you want. If you're extending GPL software, the extensions should remain GPL. Your last claim is false, because almost every GPL compiler does not apply the GPL to its output. You can compile non-GPL software with gcc, and so long as you don't actually incorporate GPL libraries into your work, it's yours to do with as you please. There are two possibilities if you want to use GPL code in a non-GPL work: The GPL code makes up a small portion of the overall work and you can just rewrite the functionality yourself, or the GPL code is a large enough portion that you can't feasably rewrite it. In the latter case, you have to ask yourself whether it would be fair to the authors of the GPL code to release a non-GPL work that consists mostly of their work.

    I've always been amazed at the fact that people consider their programs to be their own special property when in reality they are building on 60 years of research in computer science into compilers, languages, operating systems, and algorithms that is completely freely available to them. My opinion is that we are now at the point in computer science where any software development short of strong AI is merely a small incremental improvement on those years of research, and that it's absurd to assign ownership of a software project to the last person to tack something on to it. Can anyone claim that they have put more time and effort into their own software projects than the collective work done in building all the GPL software that's available? Even the biggest commercial software projects in history are beginning to be dwarfed by the total contributions to GPL software.

    Sometimes the GPL feels about as enjoyable as enforced communism to me.

    If you don't like it, lobby for reasonable copyrights and patents. If the law was reasonable, the GPL would be unnecessary. As it is, the BSD style licenses are abused by companies who take open work, modify it and copyright (or patent) it so no one else can use the simple incremental improvements for 95+ years. Make software equivalent to mathematics like it should be, so that every improvement can be freely shared. This doesn't mean that commercial software must fail, it simply means that data structures and algorithms should be recognized as mathematics. Windows won't suddenly be freely available or unmarketable because they have invested time in creating actual copyrightable works like images, documentation, fonts, etc.

    It's just that something more along the lines of the LGPL would be my license of choice when creating a tool that I want to be available and free and useful to others for many years to come.

    The LGPL is specifically for libraries because it makes sense to allow people who may not have a choice in development licences to be able to use it. The reason it arose is mostly a technicality of how modern compilers and software development work. Technically, you can use any GPL program you want within your non-GPL software, but you have to do it without actually linking against it (which pulls copyrighted macros and inline functions from header files). Feel free to run a Linux system full of GPL software in a closed virtual machine and control all the input and output to the system so that it appears the VM is completely your software, but you'll still have to distribute the whole Linux system and source along with it.

    I still think the GPL is proper for any stand-alone application simply because it prevents companies from building an interface around the

  11. Re:Still I really dont like it. by burnin1965 · · Score: 2, Interesting

    "I still feel that by choosing GPL I am giving up my freedoms as a developer."

    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 closed source application, you may own less of your application than you thought.

    Also realize that the freedom given to you to use the GPL Spices to create your own recipe does not give you the freedom to steal the GPL Spices for your own profit. If you don't want a GPL recipe then don't use the GPL Spices, that is where the freedom exists, choice.

    Theivery is a crime, not a freedom.

  12. some counter arguments. by JDizzy · · Score: 2, Interesting

    When I was working for Be Inc. as a tech support guy, my co-worker developed a 3com 3c509 driver based on Donald Becker's GPL Linux driver. BeOS users suddenly had something very useful, a driver working in BeOS that thought it was talking to a Linux kernel, but the wrapper made it interface with the BeOS network server. Anyway, long story short, the GPL is viral, as Be Inc. started to receive emails from the FSF about the driver download. Apparently Be Inc. would have to GPL the BeOS kernel to use the driver, or that was according to the Be Inc. legal dept that forced us to take down the driver+wrapper kit. I read the email exchange, and RMS himself was involved in the process. So point one is apparently the authors attempt to change history or something, not sure. Fact is the GPL-left version was designed to work-around the viral aspects of the license, so you can link to gpl libraries, etc... to not have to be gpl yourself (the code linking into gpl lib's).

    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.

    --
    It isn't a lie if you belive it.
  13. Re:Misconception 11 by SLi · · Score: 2, Interesting

    I am curious about how this "derivative work" applies to the Linux kernel, since it is under the GPL. I am not completely familiar with the kernel's behaviour, but doesn't it mean that if I were to make any calls to the Linux kernel, this could be seen as similar to linking into a dynamic library? And anything up the call tree is also under the GPL. How can commecial software be created without using the LGPL for the Linux kernel?

    The commonly accepted (but untested) theory is that the API provided by the kernel is so narrow and well defined that using it doesn't create a derivative work of the kernel. I too can see that this might be a problem, even more so in the case of embedded devices where essentially the "software" is the kernel + a binary. To me it seems that it shouldn't make much difference (legally) in that case whether you hard code your application in the kernel or use a binary; it seems to me that the result is in any case a binary "firmware", essentially a single program that controls the device, not two very separate things (the kernel and the userland).

    Another common argument is that the kernel developers themselves have stated that merely using the provided syscalls is not creating derived works. If they were the sole owners of the copyrights, it would of course be in their power to make that decision. However incorporating 3rd party GPL code that didn't originate from the kernel makes this case more interesting, as the kernel developers no longer have the authority to make such "exceptions" to GPL.

  14. Re:The GPL is Viral, deflection not withstanding.. by Bing+Tsher+E · · Score: 2, Interesting

    Well, adding a small amount of IBM or Apple or Microsoft's code into your source code makes your entire source code 'illegal' in just the way the GPL'd code is illegal. It's just that the 'punishment phase' of the violation of the GPL'd code's copyright is to release your source code. You can also opt to cease all distribution of your binaries instead **. There isn't an established legal 'camel's nose under the tent' precedent that prys open big repositories of code as a mandatory action just because a little snippet of GPL'd code was included.

    (** there are probably ogres and activists and even lawyers who will instead try to coerce you into 'releasing the source code.' )