fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] Another application using FluidSynth announced


From: Matt Giuca
Subject: Re: [fluid-dev] Another application using FluidSynth announced
Date: Thu, 15 Sep 2011 13:52:40 +1000

> 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).



reply via email to

[Prev in Thread] Current Thread [Next in Thread]