farmisen / iphonefrotz

Automatically exported from code.google.com/p/iphonefrotz
Other
0 stars 0 forks source link

Frotz is distributed through the App Store, which is incompatible with the GPL #126

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Frotz is licensed under the GPL (http://frotz.sourceforge.net/):

"Distributed under the GNU General Public License."

Therefore Frotz may not be distributed on the Apple App Store 
(http://www.fsf.org/news/blogs/licensing/more-about-the-app-store-gpl-enforcemen
t):

"That's the problem in a nutshell: Apple's Terms of Service impose restrictive 
limits on use and distribution for any software distributed through the App 
Store, and the GPL doesn't allow that."

Could you please remove Frotz from the App Store until such time as Apple 
adjusts their TOS to support GPL'd code?

Original issue reported on code.google.com by dhgba...@gmail.com on 11 Jan 2011 at 11:29

GoogleCodeExporter commented 9 years ago
I don't agree with that interpretation of the GPL.
I believe the assertions in the linked web page are incorrect because the 
license applies to the source code, not particular binaries, and the source is 
available separately than App Store distribution.
Any developer with the iPhone Dev tools can download and compile Frotz source 
code for their own device independently from App Store distribution, and so App 
Store restrictions do not in reality impose any further restrictions on 
distribution of "the software", because to GNU, software means source code.

If GNU Go and any GPL software on the App Store is illegal, than TiVo, Linksys 
routers, and many other products which use GNU/Linux under the hood would also 
be illegal.

Obviously people have different views of the GPL, and ultimately this will 
eventually be resolved in court in a suit around one of these products.

But until that day comes, I am not going to deprive people of the ability to 
play IF on iOS device because of one view of GPL until that view is validated 
by a court.  I would need to hear from an original author of Unix Frotz (the 
actual license holders who placed it under GPL) before I would act, and in that 
case, I would just rewrite the Z-machine portion, since at this point this is a 
small subset of IOS Frotz, rather than pulling it.

Original comment by spath...@gmail.com on 11 Jan 2011 at 11:56

GoogleCodeExporter commented 9 years ago
A further point: 
It is Apple who is applying restrictions to redistribution via their TOS for 
the App Store, so if indeed the GPL violation argument is valid, it is Apple 
who is in violation and not developers who distribute their software on the App 
Store, since it is Apple who is imposing additional restrictions.
(Again, I don't buy this argument, because I think 'software' and 'program' 
mean source code to the GPL authors.)

But in any case, an original author/contributor of a GPL'd work is the only one 
with grounds to request that the work be pulled.

Original comment by spath...@gmail.com on 12 Jan 2011 at 12:10

GoogleCodeExporter commented 9 years ago
I disagree with your analysis in two ways.

Fristly, Section 6 of the GPL prohibits the distribution of GPL'd software 
under more restrictive terms:

"You may not impose any further restrictions on the recipients' exercise of the 
rights granted herein."

This is not a matter of interpretation; the GPL expressly forbids you from 
doing what you are doing.  By distributing GPL'd software on the App Store, you 
are agreeing to the 'further restrictions'.  Therefore, you are in violation of 
the GPL (as is Apple).

Secondly, anyone may request that software be pulled from the App Store due to 
GPL violations, not just a copyright holder.  Only a copyright holder may go to 
court over the issue, however.

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 1:04

GoogleCodeExporter commented 9 years ago
The last sentence of section 6 would be relevant here:
"You are not responsible for enforcing compliance by third parties to this 
License."

Apple is the third party here.   MY agreement with Apple as a developer 
explicitly allows open source software (which they deem FOSS), which Apple's 
lawyers clearly believe includes GPLV2 licensed programs, as there are many of 
them available on the App Store.

This isn't as clear cut as you make it out to be.

I am going to write to the other authors of Frotz and request their permission 
to change the license (which copyright holders can do, as the license gets its 
power from copyright law) to include an explicit exception for binary 
distribution so this will not be an issue.

The authors of Frotz, including myself,  want people to be able to enjoy 
Interactive Fiction on as many platforms as possible and increase the public 
availability of the art.  Your intentions here are contrary to that end, no 
matter whether your interpretation of the GPL turns out to be 
technically/legally valid or not.

You will not be making the world a better place by getting software pulled from 
the App Store against its authors wishes.  

Original comment by spath...@gmail.com on 12 Jan 2011 at 1:39

GoogleCodeExporter commented 9 years ago
I've actually already suggested to the Frotz holders (via a support ticket) 
that they could dual-licence the code; if the Frotz core was available under a 
more permissive BSD-style licence this would be a non-issue.  

W.r.t. making the world a better place, I think you're missing the big picture. 
 Allowing companies and individuals to violate the letter and intent of 
software licences will only weaken the value & strength of those licences in 
the future.

Are you really claiming that the ability to run Frotz on a non-jailbroken 
iPhone is more important than the integrity of the FOSS community?

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 2:01

GoogleCodeExporter commented 9 years ago
Well, I suppose I'm a pragmatist and not an idealist when it comes to these 
things.

While I support and contribute to open source software, the fact is that that 
the restrictions do not in fact prevent users from modifying and running their 
own version of Frotz, since the source is available separately, and this is 
explicitly allowed in Apple's iOS Dev Program SDK agreement in the section 
covering FOSS.

Apple uses the same DRM to protect all apps regardless of whether they are FOSS 
or not.  Their reasoning behind using the DRM is primarily based on security.   
While you may not agree with their use of DRM, they are very unlikely to change 
this policy unilaterally because they would lose the security and anti-piracy 
protection it provides for all apps, not just FOSS ones.   They would have to 
somehow compartmentalize FOSS apps from closed source ones and have two 
different TOS agreements covering each, which would be awkward and unwieldy for 
users.  I don't see Apple changing this regardless of how many GPL apps are 
removed from the App Store over it.  Playing this game in hopes of forcing 
their hand hurts innocent users of these applications in the process, making 
them pawns in a ideological war they probably want no part of.

From a pragmatic point of view, it makes more sense for Apple to protect the 
particular binary images distributed via the App Store, and then allow FOSS to 
distribute source separately.  I am not a lawyer, so perhaps you are right that 
Apple's behavior violates the letter of the license.   However,  I do not 
believe it violates its intent (as long as the developers comply with the GPL 
and make source readily available). The whole point of the GPL is that 
developers are free to view, modify, and redistribute the source, which they 
CAN still do.

Original comment by spath...@gmail.com on 12 Jan 2011 at 2:49

GoogleCodeExporter commented 9 years ago
I think our disagreement is that the _whole_ point of the GPL isn't the 
modification and redistribution of source.  If you look at the FSF's summary:

"The freedom to run the program, for any purpose (freedom 0).
The freedom to study how the program works, and adapt it to your needs (freedom 
1). Access to the source code is a precondition for this.
The freedom to redistribute copies so you can help your neighbor (freedom 2).
The freedom to improve the program, and release your improvements to the 
public, so that the whole community benefits (freedom 3). Access to the source 
code is a precondition for this."

It is clear from this summary that the FSF see the distribution of software 
(freedoms 0 and 2) and access to source code (freedoms 1 and 3) as separate.

So, I think that the distribution of GPL'd apps on the App Store is in 
violation of the spirit, as well as the letter, of the GPL.

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 3:07

GoogleCodeExporter commented 9 years ago
But I do not believe there is a violation of freedom 0 or 3, either, since you 
can redistribute the source code, and you can build your own binaries (which 
will be bit for bit identical with Apple's minus the DRM) and redistribute 
them.   The only thing being limited is the ability to directly copy the bits 
installed on the phone itself via the App Store.  But it's a distinction 
without a difference.  The separate release of source completely mitigates the 
restriction placed on the particular binary provided by Apple.  You can still 
get those bits, and modify and redistribute them, only via an alternate channel.

Again, I ask that you please don't try to get Apple to pull Frotz from the App 
Store.
I don't think you'll achieve your goal ultimate goal of changing Apple's 
policies by doing this, and you'll be hurting a lot of people who want to enjoy 
interactive fiction on their mobile devices.  The ease of use of the platform 
has meant that Frotz has introduced IF to a lot of people who would not have 
otherwise discovered it.

Original comment by spath...@gmail.com on 12 Jan 2011 at 3:29

GoogleCodeExporter commented 9 years ago
"The only thing being limited is the ability to directly copy the bits 
installed on the phone itself via the App Store."

And that limit is in violation of the letter of Section 6, and the spirit of 
freedoms 0 and 2.

Personally, my ultimate goal isn't to change Apple's policies.  My ultimate 
goal is to prevent Apple from benefiting from GPL'd code while violating the 
GPL.

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 4:03

GoogleCodeExporter commented 9 years ago
"And that limit is in violation of the letter of Section 6, and the spirit of 
freedoms 0 and 2."

Again, that makes no practical difference to anyone's actual freedoms.  Bits 
are bits, and people can still copy and modify the software.

You can't go into a retail store with a laptop, open up a DVD of your favorite 
distro of GNU/Linux, and freely copy the bits off the DVD without buying it.   
You are restricted to purchasing the media first.  That is also a restriction 
on your ability to copy that instance of GPL'd software.  They even charge you 
for it, making money off of other people's open source contributions.    Are 
you against this as well?

Original comment by spath...@gmail.com on 12 Jan 2011 at 4:23

GoogleCodeExporter commented 9 years ago
"You can't go into a retail store with a laptop, open up a DVD of your favorite 
distro of GNU/Linux, and freely copy the bits off the DVD without buying it."

But you can make copies once you've bought it.  That's the difference between 
putting GPL'd software on a laptop for sale, and making it available via the 
App Store.

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 4:32

GoogleCodeExporter commented 9 years ago
"They even charge you for it, making money off of other people's open source 
contributions.    Are you against this as well?"

No, not all.  GPL'd software may be sold, and in fact the more money people 
make off GPL'd software the more attractive the licence will become to 
developers of commercial software.

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 5:08

GoogleCodeExporter commented 9 years ago
The point is that it is still a restriction on copying those bits, even if it's 
lifted after you've bought the DVD.
Your point seems to be that any restriction on copying GPL'd bits whatsoever is 
a violation, and that's not the case because if so, it would be illegal to sell 
GPL'd software.

In either case, the exact same bits are freely available through other readily 
accessible channels, and THAT is the crucial element that makes the restriction 
okay.

If someone made their own modified distro of GPL'd software and EXCLUSIVELY 
sold it on DVD without providing an alternate free way to acquire it, this 
would clearly be a full violation of the GPL, even though the DVD could be 
copied once purchased.  This is explicitly spelled out in the GPL. If the 
modified source is not provided directly with the program or available on a 
network, you even have to provide people with copies on request for only the 
cost of the physically reproducing the media.

Selling GPL'd software DVDs isn't okay simply because you can copy it once 
you've bought it.  It's okay because the content MUST be available for free as 
well.

So if that free distribution clause is crucial to allowing GPL'd software to be 
sold commercially at all, it stands to reason it should be sufficient in the 
App Store case as well.  

Original comment by spath...@gmail.com on 12 Jan 2011 at 5:33

GoogleCodeExporter commented 9 years ago
Let me be more blunt here.

I have spent MONTHS of my time working on Frotz, and released it for free 
because I believe in free software, I want to promote Interactive Fiction to 
the masses.

I will be extremely unhappy if you cause my effort to be wasted, as well as 
depriving thousands of users of a valuable experience because of your own 
ideological crusade.  You have already ruined my evening stressing out over 
this.  If you follow through and successfully get the app removed, you will 
have ruined something I care greatly about.  And over nothing but a legalese 
nitpick that doesn't actually restrict anyone's freedom.

Original comment by spath...@gmail.com on 12 Jan 2011 at 5:44

GoogleCodeExporter commented 9 years ago
"Your point seems to be that any restriction on copying GPL'd bits whatsoever 
is a violation, and that's not the case because if so, it would be illegal to 
sell GPL'd software."

No, my point is that if you distribute a binary of GPL'd code, then the person 
to whom you redistribute it must be able to redistribute copies of that binary. 
 That isn't my opinion; that is one of the freedoms enumerated by the FSF and 
protected by the GPL.

The GPL requirements are not satisfied by the person being able to redistribute 
a similar binary.  If he can't redistribute the binary you provided him with, 
then you are in violation of the GPL.

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 5:46

GoogleCodeExporter commented 9 years ago
"And over nothing but a legalese nitpick that doesn't actually restrict 
anyone's freedom."

That's simply untrue.  If I download a copy of Frotz from the App Store, I 
can't share that copy with others.  That's more than a nitpick; it's a clear 
restriction of my use of that software.

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 5:52

GoogleCodeExporter commented 9 years ago

"If he can't redistribute the binary you provided him with, then you are in 
violation of the GPL."

It says no such thing in the GPL.  Section 3 covers copying executable or 
object code, and it clearly is concerned with availability of source code.

"3. You may copy and distribute the Program (or a work based on it, under 
Section 2) in object code or executable form under the terms of Sections 1 and 
2 above provided that you also do one of the following:

a) Accompany it with the complete corresponding machine-readable source code, 
which must be distributed under the terms of Sections 1 and 2 above on a medium 
customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give 
any third party, for a charge no more than your cost of physically performing 
source distribution, a complete machine-readable copy of the corresponding 
source code, to be distributed under the terms of Sections 1 and 2 above on a 
medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute 
corresponding source code. (This alternative is allowed only for noncommercial 
distribution and only if you received the program in object code or executable 
form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making 
modifications to it. For an executable work, complete source code means all the 
source code for all modules it contains, plus any associated interface 
definition files, plus the scripts used to control compilation and installation 
of the executable. However, as a special exception, the source code distributed 
need not include anything that is normally distributed (in either source or 
binary form) with the major components (compiler, kernel, and so on) of the 
operating system on which the executable runs, unless that component itself 
accompanies the executable.

If distribution of executable or object code is made by offering access to copy 
from a designated place, then offering equivalent access to copy the source 
code from the same place counts as distribution of the source code, even though 
third parties are not compelled to copy the source along with the object code."

Why don't you go pick on TiVo or Linksys or some party is really violating both 
the letter and spirit of the GPL?

Original comment by spath...@gmail.com on 12 Jan 2011 at 6:13

GoogleCodeExporter commented 9 years ago
I don't think that there's any point continuing this conversation.  You're 
convinced that the FSF's interpretation of their own licence is wrong; I 
seriously doubt that anything I can add to their argument will sway you.

(FWIW my other current GPL-related complaint is with Telstra over the 
non-compliance of their T-Hub product; see 
http://projectgus.com/2010/11/telstra-violating-gpl/#comment-3878.  I'm not 
picking on you or the Frotz project specifically.  

I like Frotz and IF having written some myself, I just don't think it's okay to 
violate the GPL in order to bring IF to the iPhone user community.)

Original comment by dhgba...@gmail.com on 12 Jan 2011 at 6:31