Top 5 myths of GPLv3 dispelled (part 1)

Top 5 myths of GPLv3 dispelled (part 1)

Summary: Now that the "Final Draft" of the GNU General Public License version 3 (GPLv3) is out and we're 30 days away from the official published version, I thought it would be a good time to take a look at some of the least well understood provisions in the license. These are things you might have heard and accepted, but the truth may be different from what you believe. The first one is: You can't sell GPLv3 software.

SHARE:
TOPICS: Software
21

Now that the "Final Draft" of the GNU General Public License version 3 (GPLv3) is out and we're 30 days away from the official published version, I thought it would be a good time to take a look at some of the least well understood provisions in the license. These are things you might have heard and accepted, but the truth may be different from what you believe.

Disclaimer: This information was culled from a variety of sources, including the GPLv3 web site, interviews with experts involved in the process, and analysis from various industry watchers. However this isn't intended as legal advice.

Myth 1: You can't sell GPLv3 software.

False. Technically speaking, you've always been able to "sell" GPL software. GPLv3 spells this out more clearly than previous versions however. The Preamble in the final draft says (my emphasis):

Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish) ...

So you can charge for copies of software that you distribute (note the careful wording here).

"Hey," you may be asking, "didn't you say just the opposite in an older column?". Not exactly. I'll save you the trouble of looking it up - check out this thread from 2006. To paraphrase our illustrious former president Clinton, "It depends on you mean by 'sell'."

If you come from a traditional proprietary software background like many developers, the verb "to sell" means something a little different than it does to regular people. It means something like "to charge a fee for a license to run". That you cannot do under the GPL. So in that sense, you can't "sell" the software, but in the usual sense of exchanging money for goods, you can. If you can find a buyer, that is.

Practically speaking, it's hard to get anyone to pay you for GPL software, because other people can always undercut your price, down to $0. That's because section 2 of GPLv3 (final draft) says:

This License explicitly affirms your unlimited permission to run the unmodified Program.

and section 10 says:

...you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License...

Can you sell apples for $1 each if the guy standing next to you is giving them away? Probably not.

That's not to say you can't make money off GPL software - plenty of people have done that - you just have to be a little clever about it and add some value for your customers to make them feel like they're getting their money's worth. Using the apple analogy, maybe for that $1 you will guarantee freshness (warranty), help them with apple recipes (service), gift wrap it (packaging), or automatically deliver new ones when they run out (updates).

So to summarize, you can sell GPL software, but you can't force people to pay you for it. Users don't have to agree to any license to run the software let alone pay anyone for the privilege. It's a subtle point, but one that anyone hoping to make a living from GPL software needs to understand.

Future installments will explore and dispel other GPLv3 myths; so stay tuned.

Topic: Software

Ed Burnette

About Ed Burnette

Ed Burnette is a software industry veteran with more than 25 years of experience as a programmer, author, and speaker. He has written numerous technical articles and books, most recently "Hello, Android: Introducing Google's Mobile Development Platform" from the Pragmatic Programmers.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

21 comments
Log in or register to join the discussion
  • Top 5 what?

    You left out support. Give the software for free and sell support and.. service. Like development.

    Users need support and will gladly pay and do BTW.
    xstep
    • Says you

      I don't pay for support, I read the flippin manual.
      Suicida|
      • Choice is the point

        You don't pay for support because you don't need it. However, I might need support because I can't read 100 "flippin manuals" and learn everything about every program my company needs to run.

        This I know from experience: many business will GLADLY pay for support, not because they want to give money away, but because it is like insurance: it's great to have it when you need it and you don't have to think about it when you don't need.

        I love FOSS just for this reason. You have the choice to read the manual, assuming there is one, or to peruse the source code. I have the same choice. You can comb the Web looking for other users, just like I can. I have the choice to do the same or to pay someone (like Covalent) to offer me the peace of mind that comes with knowing I've got an expert whom I can call. I can choose to pay, you can choose not to.

        Gotta love it!

        -MC
        Mercutio_Viz
        • Good point.

          Companies do pay for software which they could obtain for free. Partly to have someone answer questions and partly to have an organization backing the product.

          And partly, too, to be certain the software works with other software. That's why Red Hat and Novell's SuSE have been designated the two "commercial" forms of Linux.

          But notice it's still buying the software. A confirmation is the way a company like Red Hat makes migration to another duistribution more difficult than it might be. Repeat customers count.

          Open source companies that expected to make money as service providers disappeared in the great extinction of open source companies years ago. Those which survived have a clear picture of what they're selling and how to sell it.
          Anton Philidor
  • Isn't this a GPL issue in general?

    The issue of being able to sell GPL licensed software has been around for awhile now. The v3 license doesn't change this, it merely closes a few loopholes that a few people have been working in between.
    Robert Crocker
    • Sure

      GPLv3 has different language that tries to clarify it but yes, the issue has been around forever.
      Ed Burnette
  • Microsoft is a linux customer for the coupons that it purchased from Novell

    IMO, the deal between MS and Linux distros is for MS patents that the Linux distros get. Wouldnt it be the duty of the Linux distros to make sure that they willingly & knowing do no damage to the MS IP.
    If the Linux distros distribute GPL 3.0 with MS IP, then it would be that the Linux distros violated some agreement. How could FSF and other linux distros get the use of MS IP, because one or more than one linux distros distributed GPL 3.0 code (Microsoft did not).


    Even the Novell-MS deal, Microsoft did not distribute Linux, it was Novell who distributed it. MS was the customer and not the distributor
    zzz1234567890
    • So far

      I have not seen any program in linux that violates MS IP, with the exception of corefonts which is under a free license.

      I feel that there is far more OSS code in windows than vice-versa due to BSD.
      Suicida|
      • Who's the real IP thief?

        I agree: the likelihood of MS infringing upon others' IP is much higher than the opposite. They say ALL of OSS that they've search violates a whopping 235 patents? MS probably violates that many patents just in the Windows OS, not to mention all of the other programs they have.

        MS claiming to be the victim of IP infringement by the OSS community is laughable. That's like Adolf Hitler saying that the French are really mean people.

        -MC
        Mercutio_Viz
        • Has MS released any IP details yet?

          To the best of my knowledge, Micro$oft has not yet released any specifics on which IP patents they claim are being infringed for fear of those patents being challenged in court. And since they have made the accusation of IP patent infringement, if I am not mistaken, the clock is now ticking for M$ to either file litigation in court or forever losing any chance of seeking damages for possible IP patent infringement due to abandonment. If they don't actively seek to enforce their sole ownership of their IP patents, they have effectively granted implicit permission for others to use their Intellectual Property.
          JJQ1000
  • Thank you

    For dispelling a little of the BS being
    proliferated by Microsoft sucker-uppers.

    The GPL2 clearly stated that their
    software could not be distributed with
    proprietary software, (which the
    Microsoft/Novell "twisted" deal, in
    their own words, was a sneaky attempt to
    thwart) and anyone who read the license
    and didn't understand it has to be
    somewhere between a crook and a complete
    ignoramus. If the ver2 had been followed
    there would be no need for ver3.

    It's a shame on us all that business
    ethics and honesty has been converted
    to "loopholes" by selfserving sly
    unscrupulous lawyers, and the citizenry
    follows them rather than the law.
    Ole Man
    • Sad but true...

      I wish this wasn't true, but you're absolutely right. Sly lawyers = :(

      -MC
      Mercutio_Viz
  • Number 2 on the list?

    There seems to be a lot of 'confusion' with some people who seem to think proprietary code won't even be allowed on the same system as GPLv3 software, but I guess this is another old one recycled as well. I've given up on one ignoramus who doesn't get that the GPL and LGPL are separate licenses and that unless the kernel moves to GPLv3 (which it has already been stated it won't) that there is no effect on the status of binary only hardware drivers.

    It might be a good thing to emphasise the distinction between code that links and code that merely runs alongside.
    odubtaig
    • Excellent point

      [i]It might be a good thing to emphasize the distinction between code that links and code that merely runs alongside.[/i]

      Very true. The GPL doesn't place any restrictions on "mere aggregation", something a lot of GPL detractors don't get when arguing against it.
      Tony Agudo
    • Agreed

      I hope this is in the top 5. People so badly need to learn the difference between 'linking', 'mere aggregation', and 'co-existing' on the same system.

      If what these people believed were true then none of the FOSS software out there should even run on Windows! Imagine, no Firefox, no Samba, no FileZilla, no Bittorent...

      Great stuff. I'm looking forward to other myths being dispelled.

      -MC
      Mercutio_Viz
      • Dispelled? Nah.

        Cynic that I am, I suspect that a lot of the ignorance and misinformation spread about the GPL in these forums is deliberate.
        Zogg
  • does the GPL say that derivative source must be freely available? (nt)

    :)

    .
    wessonjoe
    • Freely?

      The GPL states that if you release the binaries you [u]must[/u] release the source. However, you are allowed to charge for access to the servers on which the code is held or disc duplication.

      Section 3 of the current GPL (http://www.gnu.org/copyleft/gpl.html) states:

      [b]3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:

      a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
      b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
      c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)[b]

      On the flipside, if you [i]don't[/i] release the changes you have made in binary form, you don't have to release anything.
      odubtaig
    • Sorry, corrected text. Must close formatting properly.

      The GPL states that if you release the binaries you must release the source. However, you are allowed to charge for access to the servers on which the code is held or disc duplication.

      Section 3 of the current GPL (http://www.gnu.org/copyleft/gpl.html) states:

      [b]3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:

      a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
      b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
      c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)[/b]

      On the flipside, if you [i]don't[/i] release the changes you have made in binary form, you don't have to release anything.
      odubtaig
      • Subtle point on releasing source

        "The GPL states that if you release the binaries you must release the source"

        A subtle point, but actually it says that if I convey covered binaries TO YOU then I must also make the source available TO YOU (so you can create modified binaries). In other words, I, myself, don't have to make the source available to everybody. (Of course you can turn around and make the source available to whoever you want.)
        Ed Burnette