> I get an iPhone, and somehow I purchase the Wesnoth game from the App Store > paying $3.99, enjoying the experience (of playing, not paying). Some time > after, I discover some rough edges in the game that I would like to soften, > and have read that Wesnoth is released under the GPL, so I get the latest > sources from their official repository, and start hacking it. I don't like the > terms of the Apple Developer's Program, so I don't pay $99 and simply download > Xcode into my Mac. My iPhone is already jailbroken, so I can test my compiled > version on my device or any other friend (all of them have jailbroken > iThings). Finally, I can distribute my derived version as "Wesnoth Unjailed" > in Cydia, under the GPL with a write offer to provide the sources. I may > attach to it the same price tag or not, this is irrelevant. All perfectly > normal, legal and usual when working with GPL programs. No violation nowhere.
I want to respond to this but it is a bit murky because Wesnoth is being distributed by the same people that made Wesnoth. Technically, there is no violation here -- not because it isn't against the GPL, but because they are the copyright holders and they can do whatever they like. So if you don't mind, I'd like to change your example to VLC. This is the same scenario as Wesnoth except that the iOS port was not created by the copyright holder, it was created by a separate company, Applidium. So, replace "Wesnoth" with "VLC" and I'll continue... The problem here is that you had to modify your operating system in order to get it working, and so do your end users. If Applidium were distributing VLC via Cydia, then this whole story would make sense. "Applidium VLC" requires Cydia. You can make your changes and distribute "Pedro VLC" which also requires Cydia. You can rebuild the same executable that they built -- one that doesn't work on an unmodified iPhone but does work in the app store. However, Applidium did not distribute VLC via Cydia. They distributed it via the app store. So "Applidium VLC" runs on an ordinary unjailbroken iPhone. You can make your changes and distribute "Pedro VLC", but it requires Cydia. The executable you built is not the same as the one Applidium built. You are physically incapable of creating an executable that runs on unjailbroken iPhones (unless Apple approves, but I doubt they'll approve a second slightly-modified VLC app, nor should you require Apple's permission to exercise your rights under the GPL). So *you* may be happy with your second-class "Pedro VLC" that requires a jailbroken iPhone, but it does not satisfy the GPL because it doesn't allow you to rebuild the same executable that Applidium built. Applidium cannot require that someone uses a different operating system to run the modified version -- they must provide the data and utilities to produce the same executable (modified in any way you wish). To put this another way, you are excusing this distribution because of the existence of a jailbroken mode. What if there was no jailbroken iPhone? I understand that jailbreaks are possible due to security bugs in iOS. So what if Apple brings out a perfect version of iOS that simply cannot be jailbroken any way you look at it? Does that change your assessment of the situation? Is it now a GPL violation because it is physically impossible to run a modified version on your iDevice? I don't see how you can interpret the GPL as "it's okay to release unmodifiable software as long as there is an alternative operating system which can run the modified version, but otherwise there isn't." An analogy is the Ubuntu Software Centre. Much like the App Store, the USC distributes applications to users. It is not open to anyone -- there is a rigorous process for having an application approved in the USC, similar to Apple's approval process. Canonical can remove any app it wants, similar to Apple. Applications are digitally signed by Debian or Canonical, and the operating system will refuse to install an app that doesn't match a valid signature. On the face of it, Canonical's USC and Apple's App Store are very similar. But distributing an app via the USC does not violate the GPL, because Ubuntu users can choose to override those settings and install whatever software they like. For example, if Applidium distributed "Applidum VLC" via the USC, and I wanted to change it, I could post a modified version on a Launchpad PPA. To install it, users would need to add my public key to their keystore, and then they could add "Matt VLC" in the USC. It is a different distribution channel, but it's the same executable on the same operating system. The difference is that iOS doesn't allow modified executables to run at all. Note: I'm not trying to suggest taking action here. I think we've kind of reached a consensus that the LGPL will remain on FluidSynth and the developers won't actively pursue violations, but that perhaps there will be a warning on the website. I'm just making the point that this is technically a violation (of both the spirit and the letter of the (L)GPL). _______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/fluid-dev