Friday, May 28, 2010

"Free" as in not really

Apple is apparently going to start rejecting GPL apps, but the reason isn't what I expected.

The sticking point was that the App Store's terms of service says that a piece of software downloaded from the store can only be used on five devices. But the FSF said that the terms of service impose numerous legal restrictions on the use and distribution of GNU Go that are forbidden by GPLv2 section 6:


So, the FSF is considering it not redistributable enough that an application is available for free via the iPhone store. The quibble is something about, the receiver of the software should be able to further redistribute the code for free, versus telling people that they can download it themselves from the app store.

In general, the GNU license isn't all that "free" in any common definition of the word. It seems pretty darned free to me if anyone who has an iPhone at all is able to download the software, run it all they like, and even go grab the source code. It's hard for me to see this as anything other than the FSF trying to get negotiating leverage and make itself more important. The problem is, their efforts to gain power are involving steps that are against their mission. To promote free software, they're seeking power, and to seek power, they're blocking the distribution of free software.

Open source is not for everyone. However, if you really want to give away software, it seems to me it should be given away in some simple, intuitive way. Either public domain it, or, if that seems too radical, use a clearly free license such as the MIT license.

2 comments:

Anthony Pallatto said...

You are misunderstanding the GPLs definition of free. The GPL is not about being free as in free beer. It is about being free as in free speech. Believe it or not you can charge for your software under the GPL. A perfect example of this would be RedHat Linux. However, Apple store apps aren't even really free as in free beer. For example you say,

"It seems pretty darned free to me if anyone who has an iPhone at all is able to download the software, run it all they like, and even go grab the source code."

You are forgetting about the fact that one is compelled to own an iPhone to run or read the source. Since the iPhone costs money and you are required to have on to view the software, app store code is not free as in free beer.

App store software is not free as in free speech either. The restrictions that are imposed by the app store infringe on the user's ability to run and distribute code freely. This is a core requirement of the GPL.

While I understand where your power argument is coming from, the FSF's decision does not gain any leverage from the app store. The FSF isn't a company trying to find as many outlets as possible for it's software. It's mission is to provide a legal framework for people who want to distribute their software for free. All that has really happened is that the FSF has found that the app store is not compatible with their legal framework. Unless Apple has the desire to make the app store GPL compatible; which I think by their actions we can safely say no, there will be no more negotiations.

Rev said...

@Anthony said:

"You are forgetting about the fact that one is compelled to own an iPhone to run or read the source."

That isn't the case. You don't need to own an iPhone to compile and run the source, and you especially don't need an iPhone to read the source.

Furthermore, you don't need to have an iPhone app accepted in the App Store to run it on an iPhone. There are hoops to jump through and you're limited to 100 users, but it's entirely possible. You don't need to pay anyone for this privilege, you simply have to download the iPhone SDK.

The FSF's beef isn't that you have to spend money on an iPhone to read the source to a GPL'd iPhone app. It is that users do not have the rights to extract that binary and redistribute it, which the terms of the GPL require.

There's the possibility that GPL'd apps could be banned from the Android Market as well, where the same situation exists. At least, if the app is Copy Protected. You are able to extract/re-package non-copy protected apps on Android OS, producing an .APK file you can redistribute at will.

The iPhone OS and Android OS both follow another model, in contrast to WinCE and Windows Mobile (pre WinPhone 7), on which you could copy off the executables for a GPL'd app and distribute it as you like.