In a recent blog on the Free Software Foundation’s web site, which describes itself as part of “a series of articles detailing threats Apple’s iPhone poses to free software and user freedom,” John Sullivan takes issue with Apple’s practices relating to iPhone app software. Among the complaints are “Tivoization” and possible incompatibility with the GPL.
The blog generally lays down a gauntlet: “The Free Software Foundation will be treating this new proprietary platform as another threat to user and developer freedom, in the same way that we have worked to counter the threats posed by every other proprietary operating system, from Microsoft Windows in all its forms, to Apple’s OS X and other proprietary Unix variants.”
The “Tivoization” problem is explained as follows: “In order for any program to be installed on the iPhone, the program must be cryptographically signed. When a user attempts to install software on her iPhone, the iPhone’s…system checks to see if Apple considers the signature on the software to be valid. If there is no signature or if the signature is invalid, the iPhone will refuse to install the software. If the software has been modified in any way, the signature check will fail. The signature check is also tied to the user’s specific device, which means that she is not permitted to transfer or copy downloaded programs directly between iPhones, and any other copying is permitted or not permitted at Apple’s whim.”
Although the blog says that “Apple’s approach runs headlong into…the GPL’s copyleft approach…” it stops short of claiming the iPhone store delivery system violates GPL version 2; it does state that it violates version 3. It states that the GPL v3 and Apple’s iPhone Developer Program License Agreement “are incompatible. Apple’s license says that to write and distribute software for the iPhone, developers have to agree that any freedom users should have to modify and share their software is secondary to the paramount requirement of observing and protecting Apple’s DRM system.”
If this is so, then GPLv3 is not an available licensing choice for iPhone apps. But it’s unclear whether that will be a net benefit to free software. The most likely result is that developers will use other licenses for their apps — a result far more likely than Apple changing its policies. Given the generally slow adoption of GPLv3 since its release, it’s not clear that prohibiting iPhone app developers from using GPLv3 would be a win for FSF.
Of course, the issue of whether it is best for mobile apps to be available only via official sources is a broader, more interesting, and more complicated one. Mobile phone manufacturers want to control the content available for their phones to manage their brand (primarily by excluding offensive content), minimize security issues (primarily by excluding apps that promulgate violations of netiquette or the law), and improve user experience (primarily by excluding apps that don’t work). But the price of a warm, comfortable user experience is accepting censorship. In this sense, the larger issue is yet another example of the age-old debate between freedom and safety.