Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×

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.
This discussion has been archived. No new comments can be posted.

Misconceptions About the GPL

Comments Filter:
  • It's how a judge ultimately interprets it.
    • ... and "what a lawyer says it means" is a critical part of how a judge ultimately interprets it, not to mention the fact that judges ARE lawyers. Sorry winkydink, but the idea that a lawyer's interpretation doesn't matter is wrong by definition in one regard, and wrong as a matter of processual fact in the other. BG
  • I wish any viruses that affected me would refuse to be infect other people unless I agreed to allow them to also have an opt out clause on further infection to third parties.

    You have to admit it would be quite effective at stopping the common cold.
  • Misconceptions (Score:5, Interesting)

    by Drachemorder ( 549870 ) <<brandon> <at> <christiangaming.org>> on Wednesday August 30, 2006 @01:00PM (#16008563) Homepage
    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.
    • by Ed Avis ( 5917 )
      Agreed. I'm considering filing bug reports against free software that does this; however, it'd just be my opinion against the author's, and it would be a little bit obnoxious of me. An explanatory web page on FSF's site, saying why click-through agreements are counterproductive for free software, would make it easier to get these fixed.
    • Doesn't the "No Warranty" section apply to the user of the software, in addition to the distributor? Having the user acknowledge that they understand there is no warranty for the software is useful and desirable.
    • by eison ( 56778 )
      "The right to use the software is implicit in the fact that it was legally distributed to you." - not in America, no.
      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
  • I understand the GPL completely. It means that if I use Microsoft Word to write a novel, I have to give the rights to my novel to the free software community.

    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)

      by wolrahnaes ( 632574 )
      If you don't know where it comes from, clearly you didn't Get The Facts [microsoft.com]
    • Re: (Score:2, Insightful)

      by Anonymous Coward
      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 come up with this nonsense.

      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)

      by giorgiofr ( 887762 )
      Mainly from RMS's GPL v3, which turns distributing data via the internet into having to give up the programs you used to create it, which you have written by yourself.
  • by neonprimetime ( 528653 ) on Wednesday August 30, 2006 @01:02PM (#16008583)
    1. The GPL is viral
    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
    • Distributors don't need to provide offers of source code I seem to remember that you don't have to offer your code explicitely. You must provide the text of the license and provide source code to those who ask for it. I might be wrong but the Openoffice site said something very similar.
    • by hal2814 ( 725639 )
      "10. I don't think that word means what you think it means"

      Inconceivable!
  • The GPL (Score:5, Funny)

    by zo1dberg ( 939135 ) on Wednesday August 30, 2006 @01:05PM (#16008606)
    Basically it says something like "Your sourcecode is to be available, penguins are to be worshipped, but are to be referred to as GNU/Penguins, and men are not to shave". If you don't care about all that, you can skip to the end, which is a good part and has Marvin in it.
  • I find it amusing how the article attempts to claim the GPL isn't viral, using the following arguments:
    * 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
    • by Dr. Zowie ( 109983 ) <slashdot@defores t . org> on Wednesday August 30, 2006 @01:34PM (#16008834)

      If I use any GPL code in my application, even one line, I have to release my application under the GPL license.


      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.

    • The "viral" that TFA refers to is the misconception of the scope of the license. It's a simplification, to be sure, but the point that part of the article makes is still valid.

      If I use any GPL code in my application, even one line, I have to release my application under the GPL license.

      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)

      by rewt66 ( 738525 )
      To combine two previous posts: This is not the normal case. The normal case is that you want to take a GPLed program, and change one line, or a hundred, but most of the program is the GPLed original. It's 99% theirs, not 99% yours. And that, in all such situations, robs your argument of it's moral force.

      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
    • 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

    • I agree completely.

      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

      • by dylan_- ( 1661 )

        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.

        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:

        Question 1.4. What is this about non-free licenses?
        The non-free licenses are for companies that wish to use FFTW i

        • Thanks for the snarky reply. I am well aware that a non-GPL license for FFTW can be purchased from MIT. I was referring to people using the GPL version.

          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

    • If I'm writing a piece of Open Source code I don't mind being put to commercial use, I will apply the LGPL. That's what it's for. If you find a GPLed library on Slashdot that you want to use in a commercial product, don't give up looking for an LGPLed or public domain version. Otherwise, accept that you're developing a commercial product and have your boss/client cough up the change for a commercial library license; explain the difference in cost between purchasing the license and paying you for man-hours t
    • I have never liked the term viral applied to the GPL, not because I want to hide the fact that you have to license your modifications under the GPL, but because it was deliberately chosen for its negative connotations, and isn't really an accurate description of how the GPL works anyway.

      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
    • 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.

    • 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

  • GPL is pushed by propaganda zealots, spin doctors, and to make matters worse, lawyers.
  • by Anonymous Coward
    It would be nice if the FSF actually noticed trends that damage people's understanding of the GPL and did something about them. For example, many programs place the GPL in the role of a click-through license. This makes no sense whatsoever, and leads people to think that the GPL is a EULA and that it applies to *users* of GPL'd sofware. On top of that, it lends credence to the notion that click-through licenses are worth something.

    Another example is MySQL. They don't understand the GPL, in fact it seems to
  • 6. Distributors only need to supply source code, and not the means to use it

    Under section 3 of the GPL, providing the source code is only part of a distributor's obligation. The section defines the complete source code as not only "the source code for all modules" and "any associated interface definition files," but also "the scripts used to control compilation and installation of the executable" -- in other words, the tools needed to make the source code useful to anyone. Within the free software commun

    • 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.

  • 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?

    For example, if I write an application that makes a call into something like OpenSSL, does my app have to be GPL'd?
    • I just checked and found out that OpenSSL isn't GPL'd in the first place, so that was a bad example.
    • by kbmccarty ( 575443 ) <kmccarty&gmail,com> on Wednesday August 30, 2006 @02:18PM (#16009227) Journal

      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)

      by Sloppy ( 14984 )

      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

  • by crosbie ( 446285 ) <crosbie@digitalproductions.co.uk> on Wednesday August 30, 2006 @01:48PM (#16008981) Homepage
    More misconceptions:

    1. The GPL is designed to prevent commercial exploitation, and it does this by forcing companies who use it to publish their modifications.
    2. The objective of the GPL is to prevent the commercial sale of software in order to produce a gift economy in software development.
    3. Microsoft makes money by selling software. Making money by selling software is wrong. Microsoft is wrong. You can't sell GPL software. GPL software is better than Microsoft software.
    4. You shouldn't use GPL software unless you contribute to the community in some way.
    5. Any employee who discovers their employer has modified GPL software and hasn't published those changes should deliberately leak them.
    6. Hacking into websites based on GPL CMSes in order to obtain their unpublished mods is intrinsically ethical.


  • There is no question what the GPL says if you listen to RMS in the new documentary "Alternative Freedom"! He is not only the inspiration for the title, but also the most direct and to-the-point interview in the documentary.

    Check out: http://alternativefreedom.org/ [alternativefreedom.org]

    Documentary also features Lawrence Lessig, Danger Mouse (of Gnarls Barkey), and others...
  • My understanding is that you are able to modify a GPL'd application and profit from it without sharing your changes if you don't distribute it. And running a modified version of a GPL application on a server would probably not count as distribution in most cases.

    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
    • 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 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

  • by Milo_Mindbender ( 138493 ) on Wednesday August 30, 2006 @01:56PM (#16009065) Homepage
    The biggest problem I've seen with GPL is that static linking your (completely NON GPL) code with a GPL library seems to make the entire program subject to the GPL. While dynamic linking to DLL's doesn't. This has always been the biggest sticking point with using libraries under full GPL (not LGPL) as part of a piece of software. I've had to avoid using many useful GPL libraries simply because the platform I'm on required static linking.

    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.
    • 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)

      by Maskull ( 636191 )

      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)

    by spikenerd ( 642677 )
    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
  • The GPL has its problems when a GPLed application has a plugin functionality, because then the plugins have to be GPLed, too, or else they cannot be used. Usually, plugins are loaded as shared objects (that is, they are linked dynamically at run-time), so the GPL applies here too. This can be solved either by providing a different ABI (rather hard to achieve) or by putting the application under another license.

    Also, GPL for libraries is almost always a bad idea. Unlike programs, libraries are linked, techni
  • by argoff ( 142580 ) * on Wednesday August 30, 2006 @02:32PM (#16009338)
    ... is that the GPL is pro copyright because it's a license. Wrong! The success of the GPL is the ultimate proof that all those arguments like ... "copyrights are pro creator, pro business, an incentive, protection, pro commecial..." ... are lies, frauds, and scams. Copyrights like any coerced monopoly or any personal "right to sue" for market share will slow business, hurt individuals, are predatory rather than protectional, and are a disincentive to creation and productive behavior. The GPL basically fought fire with fire. The greatest victory of the GPL is that it broke the software industry copyright cartel and is forcing them to compete off of merits and service rather than off of threats and control.
  • 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?

  • by JDizzy ( 85499 ) on Wednesday August 30, 2006 @03:22PM (#16009818) Homepage Journal
    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.

Our OS who art in CPU, UNIX be thy name. Thy programs run, thy syscalls done, In kernel as it is in user!

Working...