4

As I know, softwares licensed under the GNU GPL is totally free and not allowed for sale. However, today I found this program called Minitube and it is sold even though it is licensed under GPLv3. Does the original author has a permission to sell his own software, even if he releases it under the GPLv3?

Sun
  • 175
  • 1
  • 5
  • 5
    -1, invalid premise and FUD. – l0b0 Jan 09 '12 at 09:55
  • 1
    @l0b0 - I should point out somebody removed the "As I know" in a previous edit. The author original made a opionion statement, somebody else, made it sound like he was saying a fact. – Ramhound Jan 09 '12 at 16:09
  • I edited the question. As Ramhound said, I didn't want to say a fact. By the way, I am not a native English speaker thus I apologize if something lead the readers to misunderstanding. – Sun Jan 09 '12 at 18:39

3 Answers3

17

You are wrong. You can sell code under GPL. And you don't have to be the owner.

But you also have to provide/publish to your customer or user source code modification. (And your customers are allowed to redistribute the code free of charge. This is why most GPL code is free as in beer.)

One of the main idea behind the GPL is that the user must be able to modify or audit software. But the licence itself does not refrain you to sell the software.

See this page from the FSF on selling GPL software.

Xavier T.
  • 1,612
  • 13
  • 15
  • 1
    Do you mean I can sell software under GPL but I need to provide the full source code to my customer ? – Sun Aug 22 '11 at 16:44
  • 7
    Yes, the GPL FAQ is worth reading: http://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney – FigBug Aug 22 '11 at 16:47
  • @Sun: Yep, that's exactly right. – configurator Aug 22 '11 at 16:47
  • There is an inherent problem in the whole line of thinking. If you release your product under GPL and sell your product, the purchaser is granted a license of your code under GPL. Nothing stops them from making changes to your product and reselling it again (baring yet another license with them). You can't get those changes unless you buy their product now. This is all assuming that you can only get the code if you bought the product, making you a customer. Surely this is not the intent of the GPL. – Andrew T Finnell Aug 22 '11 at 18:06
  • 2
    @Andrew http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#TOCWhatDoesWrittenOfferValid You have to provide the source to anyone, not just direct customers. This is to stop you putting in contract riders that override the GPL provisions – Martin Beckett Aug 22 '11 at 21:00
  • 1
    @Andrew: Yes, that is precisely the intent of the GPL. The point is to ensure that anyone who has the executable can get the source. That's really it. – David Schwartz Aug 22 '11 at 21:02
  • 1
    @Martin: The written offer to provide source must go to everyone, but if you provide the source directly with the binaries, you do not have to provide the global offer. So if I sell a CD with source and binaries, I have met my obligation, and do not have to further give the source to anyone who asks. – Sean McMillan Jan 09 '12 at 14:03
  • 1
    @Sean - correct, I was explaining to Andrew that the people you pass the source on have the same obligation. This is 'the 3rd party' in the GPL agreement - but it doesn't mean you have to spend all your time handing the source to anyone who asks. – Martin Beckett Jan 09 '12 at 16:10
11

Yes, the original author is not bound by the terms of the GPL. The GPL is a License granted to any person who has a copy of the program. If you don't have a copy of the program, you are not entitled to the source code. The original author is also allowed to release the software under as many licenses as they wish. Once a piece of software has multiple authors, they must all agree to any licensing changes.

FigBug
  • 2,369
  • 3
  • 17
  • 20
  • "the original author is not bound by the terms of the GPL" -- if the original author distributes their program to someone, with the understanding that the program is licensed under the GPL, they are required to do what the GPL says (e.g. provide source code when asked) aren't they? I don't know what you mean. – Tyler Aug 22 '11 at 16:51
  • 6
    He means that the author can provide the code under a different license. – Christopher Mahan Aug 22 '11 at 16:56
8

The GPL is a copyright license. Such licenses only apply to people other than the copyright owner. The original author of the code is free to do with it as he wishes.

This makes dual-licensing possible, typically done by giving away GPL-licensed source while selling the same code to closed-source developers under a different license. That's how Trolltech made money from Qt. It is GPL-licensed, but before Nokia bought Trolltech, a developer seat for the proprietary version of Qt was quite expensive, a thousand dollars I think.

As pointed out above, despite the fact that the GPL is a Free Software license, it doesn't mean that you are not permitted to charge money for it. "Free" in this case refers to the rights passed on to those who obtain GPL-licensed code. You can charge anything you want for GPL code, you just have to abide by the terms of the license.

Lots of companies make vast sums of money selling GPL code: Google with Android, IBM with Linux for their RS-6000 servers, Red Hat with Red Hat Enterprise Linux. But all of their source that is linked with GPL source has to be GPL-licensed itself, and has to be made available to those who obtain copies of the binary.

Note that you don't have to actually distribute the source. Lots of people think that one has to post one's source online to comply with the GPL. That's not actually the case. Neither is it sufficient to post the code online: Richard Stallman pointed out a while back that those without an Internet connection would not be able to obtain your source if that was the only way you distributed.

To comply with the GPL, if I remember correctly, you must make a written offer to provide the source, and you have to actually provide the source when you are asked for it. You can charge a "reasonable" amount of money for the source, to cover the costs of media duplication, shipping and handling and so on. Even the Free Software Foundation sells its own source code on physical media, despite the fact that it is all available online.

Mike Crawford
  • 836
  • 4
  • 6
  • The easiest way in my opinion is to just drop the source .zip or .tgz in the doc directory of the installation. Done and you have no further commitment, ever. – Zan Lynx Aug 22 '11 at 18:51
  • @Zan Lynx, while distributing the source with the binary makes it easy for others to obtain, I don't think it actually complies with the terms of the GPL. You have to provide the source to those who ask for it, if they have the binary. That's the specific requirement of the GPL. While I know this is a contrived example, someone who got your source included with your binary might have deleted it, and so will ask you for the source at a later time. If you do not then give it to them, you are not complying with the license. – Mike Crawford Aug 22 '11 at 19:26
  • 1
    Read it again. If you provide the source to them with the binary your obligations are met. GPL version 2, section 3 has the text "provided that you also do one of the following:" and options a, b and c. Option a is complete machine readable source code. – Zan Lynx Aug 22 '11 at 19:45