I'm surprised to see people are selling GPL'd software on Microsoft Store. An example is GIMP. GIMP is GPL'd opensource image editing tool. There are some vendors on Microsoft Store have repackaged GIMP and are selling it there. Is it legitimate to do that without violating the GPL license? If there is a GPL software only available in form of source code, is it legal to build it to executable form (like Windows App), package and sell it?
Yes, absolutely, and it is important that the GPL allows this.
First, the FSF encourages people to sell free software when possible (emphasis mine):
Actually, we encourage people who redistribute free software to charge as much as they wish or can. If a license does not permit users to make copies and sell them, it is a nonfree license.
Free programs are sometimes distributed gratis, and sometimes for a substantial price. Often the same program is available in both ways from different places. The program is free regardless of the price, because users have freedom in using it.
It is certainly possible that the situation you describe is predatory, insofar as it sells for a fee what could easily be had without a fee. But that may not be generally true for this category of behavior, and this specific case may not even be particularly predatory.
To you, the availability of this software in the Microsoft store is not valuable, so you would not pay money for it. That may not be so for someone whose nation's firewall or whose employer's system policy forbids downloading or installing software from particular places. If Microsoft's store is the only place they can get the GIMP, they might happily pay the fee rather than figure out how else to get it.
Even if that's not actually true of this particular case, it is true of similar cases. The ability to redistribute the software through different channels (and compiled to run on different architectures) is important to ensure enduring and widespread availability of the software, and the GPL allows redistributors to charge money to do so. The GPL, as a legal tool, cannot distinguish between "predatory" and "non-predatory" prices for any particular act of redistribution; we can only rely on the market to sort such matters out.
If you object to the price being charged for some free software through some redistribution channel, the GPL (or any free license) gives you the freedom to build and offer your own copy for whatever lower price you want. In this way, the price will eventually (but not instantly or uniformly) approach zero across all distribution methods.
Note that any particular distribution channel may impose GPL-incompatible requirements (see another answer on this question that explores this extensively), but there is no problem in general with compiling or distributing GPL software for a fee.
Yes, it is legal to sell GPL-licensed software as long as you keep the terms and conditions of the GPL. Those terms and conditions are that you cannot use a different license than the GPL (which gives the recipients certain rights with regard to making changes and redistribution) and that you make the source code available to the recipients.
The GPL license is often seen as unfriendly to commercial use, because I can buy one copy of a GPL application from you and then re-sell copies of it for a lower price.
As others have already stated, "distributing" (GPLv2) or "conveying" (GPLv3) software by selling it is explicitly permitted by both the GPLv2 and GPLv3 as long as the terms of the license are not violated. Any licensee is completely free to sell GPL software and make money off of it.
The complication stems from the additional legal and technical restrictions app stores tend to impose. As a particularly infamous example, Apple purged their app store of all GPL-licensed software in the early 10s because they were found to violate the terms and conditions of the GPLv2. As the FSF put it:
The primary problem is that Apple imposes numerous legal restrictions on use and distribution of GNU Go through the iTunes Store Terms of Service, which is forbidden by section 6 of GPLv2.
At the time, Microsoft also banned all GPL software from their store (as reported by arstechnica):
"Excluded License" means any license requiring, as a condition of use, modification and/or distribution of the software subject to the license, that the software or other software combined and/or distributed with it be (i) disclosed or distributed in source code form; (ii) licensed for the purpose of making derivative works; or (iii) redistributable at no charge. Excluded Licenses include, but are not limited to the GPLv3 Licenses. For the purpose of this definition, "GPLv3 Licenses" means the GNU General Public License version 3, the GNU Affero General Public License version 3, the GNU Lesser General Public License version 3, and any equivalents to the foregoing.
Fortunately, the situation has improved drastically since the early 10s. Both companies have revised their EULAs to be more compatible with the GPL. Apple for example has emended their EULA to allow sellers to override their standard EULA:
Any App that you acquire is governed by the Licensed Application End User License Agreement (“Standard EULA”) set forth below, unless Apple or the App Provider provides an overriding custom license agreement (“Custom EULA”).
Microsoft has done something similar with their EULA:
From all of this, a person can reasonably conclude that anyone is allowed to resell GPL software on Microsoft's store AND Microsoft is allowed to distribute said software as long as the end user can fully exercise their rights. Generally, this holds true on x86-64 platforms which tend to be open platforms. There might be legal issues with selling GPL-licensed software for the XBOX platform and ARM-based systems which tend to be locked down by Microsoft via DRM and thus completely running afoul of section 10 paragraph 3 of the GPLv3.
Last year, I actually emailed Mr. Stallman, the primary author of the GPLv3, asking him about his opinion on this specific issue. He seemed to believe that the way App Stores currently distribute GPLv3 software to locked devices violates the terms of the license.
- Selling GIMP for x86-64 Windows is probably okay.
- It is still unclear if the seller is allowed to sell GIMP for XBOX, ARM-PC or any other device where Microsoft locks down the device or requires the device be locked by OEMs.
Disclaimer: I'm not a lawyer. This is not legal advice. YMMV.