Hacker News new | past | comments | ask | show | jobs | submit login
GPL Enforcement in Apple's App Store (fsf.org)
177 points by chanux on May 26, 2010 | hide | past | favorite | 88 comments



The FSF should take a more active role in GPL violations overall. This is by far not the only one. See for example how Drobo completely ignores requests for source code, while spreading FUD about proprietary drivers:

http://www.drobospace.com/forums/showthread.php?tid=935&...

I'm not a fan of bashing Apple at every occasion, but a shakedown of phone software licensing would not hurt — it would actually clarify the situation (both for iPhone OS and Android) and perhaps force companies to change the terms of service somewhat.

UPDATE: I double-checked and since my last request they actually posted an E-mail address where you can supposedly request the code. I did request the code and I'm waiting to see what happens.

Also, for those who think this is fanaticism: I'm doing this, because the DroboShare is unreliable and lost my data by corrupting the entire Drobo volume. I need the code, because I want to check whether Drobo actually improved the Linux HFS+ code or not (I suspect not).


The Drobo forums are only available to paying customers, but I did come across the following page;

http://support.datarobotics.com/app/answers/detail/a_id/434

Seems you can request the code by e-mail. No idea why they'd like to know your company affiliation though.


No idea why they'd like to know your company affiliation though.

Marketing.


The FSF does as much enforcement as it has resources to do.

If someone would like to see more FSF actions, I would suggest they donate to the FSF, volunteer time to the FSF or release code under the GPL.

Donation page: https://my.fsf.org/donate


I will not donate to the FSF until I clearly understand how it works (charter/bylaws). I requested this information once and was told that it is too costly to get it into digital form.

For the same reason, I am against assigning copyrights to the FSF. I would like to be sure that once someone takes over from Richard Stallman, FSF under new leadership will not be able to do things to my code that I wouldn't want done.


> The FSF should take a more active role in GPL violations overall.

I belive they can't really do anything unless they own the copyright, as they do with GNU Go. The Linux HFS+ code is probably owned by whoever wrote it for example.


There are actions they can take other than suing the violator themselves. They can contact license violators to try to reach diplomatic solutions, and they can offer resources such as legal counseling for other rights-holders. They don't have to force every violator to cough up the code or face putative damages, they just have to generally make it known that violating the license is more inconvenient than following it.


And ... indeed, that's what they do, as described by ... the article and all their other literature...


The FSF is only in a position to "go after" Apple because it is the copyright holder of GNU Go. It does not hold copyright on Linux.


The free software foundation takes the lead in GPL whether they hold the copyright or not - for example, the Linksys enforcement.

http://www.technewsworld.com/story/43996.html

(article written from a 'how much can you get away violating the GPL' - not my feelings but it make, the FSF is who comes after you).


What I don't like about this post is that they explicitely say The primary problem is that Apple imposes numerous legal restrictions on use and distribution of GNU Go through the iTunes Store Terms of Service, which is forbidden by section 6 of GPLv2. I'd like to see them enumerate these legal restrictions and explain how they contravene the GPL. Don't leave us guessing.

For reference, a copy of the GPL V2: http://www.gnu.org/licenses/gpl-2.0.html

Section 6:6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.


Well, the EFF has a long list of the things they hate about Apple's licenses. The FSF pretty much sees eye-to-eye with them, so that seems like a good starting place. Here's the link:

http://www.eff.org/deeplinks/2010/03/iphone-developer-progra...

After reading that, my best guess for the GPL violation would be Section 7.2, which "makes it clear that any applications developed using Apple's SDK may only be publicly distributed through the App Store."

But the worst part for Apple, I would think, is the review. Even though it's not their fault that some developer submitted an infringing application, they approved it. IANAL, though, so I don't know exactly what Apple is on the hook for. My guess would be that Apple will pull the application and blame the developer, but I don't know where it'll go from there. It really seems like they're more interested in Apple than the developer, after all.


IANAL, though, so I don't know exactly what Apple is on the hook for.

The GPL applies to anyone who distributes a GPL product. Apple is the distributor.


I am not sure that is going to fly though. Apple is the conduit in this case. The developer is still the distributor and has chosen to do so through the store.


You're really ignoring the obvious facts in favor of arguments over tiny minutiae. The App Store is a store. Not a conduit, not a dumb pipe, a store. Apple maintains it, Apple choses what to stock there, Apple specifies the terms of purchase and Apple makes a profit off each item it sells there. The developer just gives Apple his app to put in its store.

Analogously to this case, if my local store doesn't refrigerate its milk properly, I don't sue the dairy farmer. Apple's App Store is a store in exactly the same sense.


Your analogy fails miserably.

If your grocery store fails to refrigerate otherwise perfectly good milk, the analogy to the App Store would be that Apple injected GPL code into the app.

No, if Nabisco violates a copyright agreement with the box design of some cookies, and your grocery store sells them (unknowingly), the grocery store is not at fault.


The developer did not place any illegal restrictions on the app. Those are all imposed by Apple's store.


Farmer : producer. Walmart : distributor.

Car manufacturer : producer. Car dealership : distributor.

Software developer : producer. Apple App Store : distributor.


I don't think that scenario holds for the actual "license" and it would just make the GPL suck that much more if you try to hold Apple to something like that.


Hm. It would seem that similar logic would apply to, say, an ISP which "distributes" GPL produces over its pipes and applies additional restrictions via its EULA.

This sort of "if you touch GPL in any way" reading isn't a very positive one for copyright in general, and I think it'd be a pretty bad faith argument to make. I think, then, that the FSF's argument must be a more nuanced one; but like pierrefar I can't quite suss out what, exactly, they object to.

The App Store obvious violates the spirit of the GPL in about a dozen ways, but it's unclear to me how the app store violates the letter of the GPL.


Did you read the root post in this thread? Apple is distributing GPL code, and therefore Apple is responsible for providing source. Cut and dry, cannot get any simpler. If you distribute binaries compiled from GPL source, you are required to distribute source. Apple is not distributing source, case closed.

Furthermore, the App store license forbids end-users from redistributing binaries, which again, is a cut and dry violation of the GPL, since it not only says the opposite, but that you must allow them to distribute binaries and source. This isn't an "if you touch GPL in any way" problem. It's a "if you give someone something under the GPL, you must follow the GPL."

Apple is not a dumb pipe. They are hosting the software.


Did you read the root post in this thread?

Why do you need to do this? I'm trying to honestly engage with the ideas presented here, and what's clear to you isn't clear at all to me. Why do you assume I'm operating in bad faith?

Apple is not a dumb pipe. They are hosting the software.

Clearly, and clearly it's an important difference. But I'm not so sure where the legal line is drawn.

What about SourceForge? They have a EULA, right? Have they carefully written one that's compatible with the GPL? Or what about language package hosts like RubyGems, PyPI, or CPAN? Do they need to be careful about any terms and conditions to avoid violating GPL'd apps placed on their repositories?

I'm not a lawyer -- are you? -- and I certainly don't claim to be an expert here. But even if you think I'm an idiot the fact is I actually know quite a good deal about copyright and software licensing, and I still don't see what the FSF's particular legal argument is. And I do want to understand their argument, especially as it applies to other types of "app stores" that might distribute open source code on behalf of other users.


I think there is a certain amount of laugh test failure to the "ISP is distributing too!" argument. I see it as akin to the USPS and FedEx being required to pay royalties to the music companies for distributing the music.

As for what the FSF is arguing, it is that iTunes has a blanket license that limits how many devices you can use the app on, which is pretty much against the part of the GPL that says you can't restrict the license further, or add any additional clauses.

Further, Apple may be required to host the source themselves as intermediary distributors of GPL software (by which I mean make available to additional customers beyond the original authors' reach, not act as a shipping company -- i.e. they are resellers).

I don't think the original author's actually violate the GPL, they provide the source to Apple... and they probably don't restrict the license at all.


I think "common carrier" is the term for ISP's and similar entities that are clearly not responsible for the content that passes through them. I believe this status is defined in the DMCA and other laws. IANAL but this is pretty basic stuff you can research.


In this context, "common carrier" is a legal designation reserved for telecommunications carriers under the Communications Act of 1934. To date, ISPs are specifically not under that broad category, although I'd wager it's simply a question of when, rather than if.

The DMCA relationship you're thinking of is the "safe harbor" provision for ISPs that respond in a proscribed manner to copyright infringement notifications.

Wikipedia link (which is, sadly, very poorly edited right now): http://en.wikipedia.org/wiki/Common_carrier#Telecommunicatio...


I can see a need to clarify this. A website might easily be little more than an ad-supported clearing-house. It would be little more than a "dumb pipe."


I'm pretty sure that Apple isn't the seller of the programs in the AppStore, the author is, Apple is acting as an agent in the transaction. So in this case, they are the ones that aren't complying with the GPL. In effect, they've broken two agreements, one with the GPL, the other with Apple. Otherwise, that would be like suing Visa for a GPL violation if you bought something from a seller and they didn't give you the source code.

I think that it's been pretty well established by the EFF/FSF/etc that the GPL is largely incompatible with the AppStore, so really, it's the author who should be on the hook for this.

The relevant sections of the App Store ToS: (http://www.apple.com/legal/itunes/appstore/us/terms.html)

There are two (2) categories of Products offered through the Service, as follows: (i) those Products that have been developed, and are licensed to you, by Apple (the “Apple Products”); and (ii) those Products that have been developed, and are licensed to you, by a third party developer (the “Third Party Products”).

The Application Provider of each Third Party Product is solely responsible for that Third Party Product, the content therein, any warranties to the extent that such warranties have not been disclaimed, and any claims that you or any other party may have relating to that Third Party Product or your use of that Third Party Product. You acknowledge that you are purchasing the license to each Third Party Product from the Application Provider of that Third Party Product; Apple is acting as agent for the Application Provider in providing each such Third Party Product to you; Apple is not a party to the license between you and the Application Provider with respect to that Third Party Product; and Apple is not responsible for that Third Party Product, the content therein, or any warranties or claims that you or any other party may have relating to that Third Party Product or your use of that Third Party Product.


In the case he doesn't read Hacker News, I suggest you contact Brett and ask him. He left contact information (including email) at the end of the article.


Incidentally, I did so, and he said I was far from being the only one with this concern, and that they are preparing just such a statement.



I suppose that the right to copy, distribute or modify the Program is not the same as the ability to do so.

Apple could grant everyone the right to redistribute any GPL'ed apps, but it wouldn't make any practical difference because who could I distribute the app to?


Isn't this the "Tivoisation" problem that GPLv3 was meant to address?


Precisely


who could I distribute the app to?

Anyone with a jailbroken phone, right?


If this is the case, then how is it any different to distribution through the Android store?


I could be wrong, but I don't think the Android store applies any blanket license to downloaded apps, besides the implied "you may download and use this app". The disagreement here is that Apple adds a license to all apps that says you aren't allowed to decompile or reverse engineer them (among other things), and the GPL doesn't let anyone but the copyright holder add those kinds of additional restrictions.

The Android developer distribution agreement says (http://www.android.com/us/developer-distribution-agreement.h...):

  5.4 You grant to the user a non-exclusive, worldwide, and perpetual license to 
  perform, display, and use the Product on the Device. If you choose, you may
  include a separate end user license agreement (EULA) in your Product that 
  will govern the user’s rights to the Product in lieu of the previous sentence.
So it sounds like Google doesn't add any new terms to apps besides whatever the app authors themselves say, so GPL apps are fine.


Also, the users are free to obtain the source code recompile and run it on their phone at any time. While the iPhone requires a SDK license to be able to distribute the software to the phone and can only do so through the app store. I think this is their problem with apple and GNU Go. There is no way for the user to modify the application and run it on their phone.


No - requiring a commercial compiler & sdk wouldn't be a problem - this is a licensing issue - the terms under which the author of the iPhone application is re-distrubiting the app, through the iTunes store, cannot be possible under the terms of the GPL - so the author had no right to do distribute it in this way in the first place.

You can write and trade GPL software on proprietary platforms, even platforms other people may never have access to - as long as you aren't contractually restricting them from re-using the code.


But again, it hasn't been made explicitly clear which terms are being violated. The GPL doesn't require that code be distributed along with binaries, only that code be made available upon request, and the manner for doing so be made clear. There's nothing about app store which prevents that.

The section 7.2 clause in the SDK agreement seems troubling, but it also seems unenforceable. Not only have lots of people blatantly chosen to ignore this provision (see Wordpress), it doesn't seem like it would hold up under copyright law (but I'm not a lawyer).


It's not a source code issue. The GPL prohibits you from adding restrictions to further redistribution. The App store adds the restriction that you're not allowed to redistribute. Seems pretty clean cut to me.


Ok, I see the issue now. Thanks for clarifying that.


A subtext here not mentioned is that FSF / GNU owns the copyright to GNU Go, hence they enforce their rights. Violations of GPL in other projects should be enforced by the copyright owners


Very good point. The cynic in me thinks that if Apple pulls GNU Go, it’ll be solely for the copyright issue. (Similarly, other GPL’d apps that may exist in the app store via unofficial ports or forks.)

What’s Apple to lose if a user or developer of an open-source GPL’d application mistakenly pushes said application to the App Store? That is, until another a copyright holder or another developer calls foul.

I’m interested to see how this plays out between the FSF and Apple. Some murky territory we’re getting into regarding Apple regulation on licensing & copyright claims.


The issue is so much simpler than you all make of it. And Apple is essentially not liable or responsible. The developer is the one who may be doing something wrong.

It goes like this: the developer enters into two separate agreements.

One is with the open source community, as he is re-using code licensed under the GPL. Any modifications and new code that links to that open source code, he must re-publish in source code.

Two, is the agreement with Apple to use the SDK and its APIs. Apple places restrictions on what you can say about the APIs (namely, that you can't say much at all:-).

If the developer modifies GPL code and mixes it with confidential APIs from Apple, he is stuck. He can either publish the source, and Apple can go after him, or he can keep the source confidential, and the authors of the Open Source code can go after him since he is using their code without a license (copyright infringment).

That's it. Apple is not particularly liable for what developers do. Of course, in practice, Apple being the company with big pockets, if I was trying to make a billion dollars from such a case, I'd sue Apple, not the poor Russian developer in their basement.


Presumably, the process of getting your app into the app store involves you licensing it to apple on some kind of standardized terms that allow them to sell it on your behalf. Thus, Apple is acting within their rights, and the original developer did something that they weren't allowed to do.


The contract with the submitter is not going to protect Apple. The submitter cannot grant Apple the right to distribute code belonging to someone else.

At best, the contract can be used to show that Apple acted in good faith, and thus limiting the damages to be paid to the owner (here, the FSF). But since the FSF doesn't usually demand damages, that is not relevant for this case.

The DMCA safe harbor provision (which protects sites like Hacker News) will not protect Apple either unless the application is free. In which case Apple should respond to a DMCA takedown notice.


Is anyone aware of Apple going after somebody that distibutes the source code of their iPhone app? My interpretation (IANAL) of sectoin 7.2 of the Apple Developer License is that you are not allowed to distribute your apps anyway other than through the App store. But if you are distibuting the source code, as required by GPL v2, that doesn't seem to be infringing to me. Of course, maybe someone can point to an example of Apple harassing someone that was doing this.

Of course, maybe the FSF is getting all upset about the fact that not just anyone can download code onto an iPhone., only those in the Apple Developer Program? Except I personally find that situation as similar to needing to have a piece of hardware to use software designed for that hardware. If I use GPL code that I have modified such that it will only run on a PS3, I'm not obliged to furnish users with a PS3...


Although I think the FSF would love to see all of those things, the actual legal technicality that they have in mind is the requirement that whoever distributes the software (i.e. the App Store) is responsible for making the source code available also - which they just don't do.


I wonder if Apple actually counts as distributing the software in that case though. I mean, it wasn't Apple that used the GPLed software after all. I remember seeing Redhat on sale in a box in an electronics store in Australia 10 years ago, and I don't think anyone would hold that store responsible for the distribution of the source code - it was obviously Redhat that was responsible...


Not only do they distribute it, they profit from that distribution^. If they were just a "dumb pipe", like an ISP, then no, but they have an active hand in it.

(^ Not that profiting from it is a conflict with the GPL, it just reinforces their status as a distributor.)


I don't know that the retailer of a product containing GPL software can really be said to be distributing programs as defined in the GPL. If I buy a Panasonic TV with linux inside it from my local Fry's, does Fry's have to take on the task of furnishing me with the source code of the program in question? It doesn't feel right.

Oh, and just a note - if the application in question is free, then Apple doesn't profit from it at all.


I think this is the app in question ("Go go"): http://itunes.apple.com/us/app/go-go/id300106575?mt=8

("It's driven by the GNU Go 3.6 engine")

I ran into a similar issue with a GNU Backgammon app. The publisher (who wasn't charging for the app) put up the source (https://svn.leozide.com/pocketbg/) after being asked but now that I'm looking at it, it doesn't appear to get linked to obviously on the site (I haven't checked inside the app).


iPhone OS already contains GPL v2 code (at least libgcc and libstdc++) so presumably Apple is in compliance on that front.

Is FSF suggesting that it's not enough for the developer to distribute the source code, and Apple must also distribute the source code of any 3rd party applications (which use GPL code) distributed via the App Store?

GPL v2 doesn't contain the anti-tivoization clause that v3 does, so that can't be the problem. I don't know what else they could claim, it would be nice if they could clarify the specific violations.


It doesn't appear they're objecting to the source-code distribution (which is allowed to be separate from the binary), but to the app store's license terms for apps: http://www.apple.com/legal/itunes/appstore/dev/stdeula/

Since GNU Go is under the GPL, they're saying: you can't distribute it under Apple's "Licensed Application End User License Agreement", because that isn't a license the original author applied to the software, and the GPL prohibits you from piling on a new license.

This no-new-license-terms section of the GPL is to keep people from subverting the GPL by tacking on new terms to GPL'd software, which I believe includes EULAs. So, unless you're the original author and copyright holder (in which case you can always add whatever terms you want), you can't tell end users something like: "it's GPL, but here are more rules you have to follow if you want a copy [click yes to agree to these terms]". Since the App Store basically does that---it has an EULA that you have to agree to before you can get a copy of GNU Go---it falls afoul of that provision.

In practice it's more making a point, because Apple probably cannot really enforce any of the additional terms against users of a copy of GNU Go, and it's not clear they'd care about doing so. But it violates the FSF's principle that end-users should be able to modify the very copy of the software they receive, because it tacks on terms that amount to, "you cannot reverse-engineer or decompile this copy of GNU Go", which clearly isn't a condition the FSF itself, as the GNU Go copyright holder, would've added.

A workaround, if Apple cared enough, would be to exempt open-source apps from the EULA terms, because the terms are really mainly aimed at stopping reverse engineering, and there's no point in stopping reverse-engineering of apps which are already open source. (Android's app store avoids this problem entirely by not applying any default EULA, and leaving it entirely up to the app author which EULA, if any, they want to ship.)


The App Store allows custom EULAs though they have to meet some minimum terms. I have no idea if the minimum terms are GPL compatible (probably not you'd imagine).


Don't those custom EULAs just supplement the Apple EULA? If so, that doesn't solve the problem.


I’ve wondered about these license conflicts for a while now, as I’d been tinkering away on a couple of apps I’m planning to open source.

This is, hands-down, the clearest plain English explanation I’ve heard regarding the combination of GPL and App Store EULA.


libgcc and libstdc++ both contain a special exception to the GPL, making them easier to distribute with non-free software.

http://en.wikipedia.org/wiki/GPL_linking_exception


Whoever distributes the code must comply with the license. By demanding the role of distributor, they're also taking responsibility that usually falls to the author.


Would it be enough for the developer to bundle the source code (and license) within the application somehow, such that if the application is distributed (unmodified) it will automatically be in compliance?


No, because the end user can't modify and run the software, even with the source code, because Apple's locked-in hardware won't let him.


The user can join the developer program and modify and run the software that way.

Nothing is preventing that.

That's what a lot of GPL advocates are missing here. The GPL doesn't specify how things are supposed to get done, only that they do get done.

The GPL boils down to a couple of things: Make the source available and allow others to modify and redistribute it (as long as they follow the GPL).

Nothing about bundling the source with the app or having access to the same avenues of distribution as the original author or even the same tools.


Are you sure that libgcc and libstdc++ are on the iPhone? Could it be some other library (non-GPL)?


Yes, all the licenses are listed in Settings -> General -> About -> Legal.


So even if you provide full source for your app, you can't have it on the app store period? Or would this person also be breaking the GPL if they simply uploaded a binary to their site?


This is why I never liked the GPL. If someone wants to use GNU GO in their app suddenly they're on the hook for the political restrictions the GPL imposes even if they're making no significant modifications to it? In this case restricting their freedom to distribute their app where and how they want to. Of course you should adhere to the licenses you use it's just an interesting parallel track of software license restrictions. Looking at it purely from the perspective of using outside code, with a license you have no control over, the primary difference here is who dictates the terms to you. Apple or FSF. Either way they are going to dictate the terms.


hey guys, look at the Id's DOOM classic for the iPhone. it's GPLed by John Carmack you can download via App Store you can download the full code http://www.idsoftware.com/doom-classic/


Hang on, if the source wasn't distributed to Apple (it generally isn't), how can Apple be expected to comply? Sounds to me like Apple need to take the app off the store. Any failure here is the fault of the submitter failing to comply with the GPL; Apple is just an innocent victim.


The source really isn't the problem. An app developer can put a link on the app page that has the source. I think the problems stem more from things like:

    6. Each time you redistribute the Program (or any work based on the Program),
    the recipient automatically receives a license from the original licensor to
    copy, distribute or modify the Program subject to these terms and conditions.
    You may not impose any further restrictions on the recipients' exercise of
    the rights granted herein. You are not responsible for enforcing compliance
    by third parties to this License.
Apple definitely imposes "further restrictions on the recipients' exercise of the rights granted". I can't copy the game from my iPhone to my friend's iPhone. I can't even use a copy of the source without paying Apple more money for a dev license.


> (...) we want to resolve this situation as amicably as possible.

Have they emailed the author to request that the app be pulled? That seems like the most obvious and efficient way to obtain the goal of getting the app out of the App Store.


..."the upstream developers for this port are also violating the GPL, and we are discussing this with them too."


Ah, that's what I get for skimming.


That sucks. So basically, Gnu is saying that nobody is allowed to develop for Apples platform with any GPLed code? That does not seem like freedom to me.

The GPL knows that the software will be removed from the store. So they are basically killing it to support their philosophy. That's not freedom, that's just religious ideology.

If I wrote code 10 years ago under the GPL and I want to release it now on the iPhone platform, I don't want a bunch of people to come tell me what to do or what not to do with the code I wrote. I did not sign up to a cult and have to follow their rules. When I can do what I want with my copy of my code, then that is freedom.


They're saying that if you want to use GPLed code, then you have to follow the GPL rules. Clearly the person writing that code decided to use a GPL license, instead of something more flexible like an MIT or BSD license. Thus it makes perfect sense that they force those that use that code comply with the license chosen. If they didn't, they would be doing a disservice to the code authors.

If you don't like the license, don't use code that specifically chose to use that license. There are many alternatives to libraries out there, and as a last resort you can always write your own, original, non-GPLed code that performs a similar function.

It's also my understanding that if the situation is such that you wrote the code, then you can change the license on the code you wrote and continue with that base, however, the original code is still GPLed and would remain open.

[Updated for clarification]


yea but most programs have some libraries. it seems unlikely that one entity will own all the code (unless you happen to be the FSF). unless the libraries are less-than GPL licensed and compatible with the App store terms, then you are stuck.

it sounds to me that in many or even most circumstances, the GPL and the App store cannot mix unless Apple makes some allowances. it would be great to hear from the FSF exactly what would be required.


As long as the libraries aren't statically linked you are okay there... at least as far as libraries that are part of the stock system goes. (otherwise we'd never be able to build against, say, a differnet libc or anything like that)

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


Certainly; if you wrote the code and still hold copyright, you can license it under whatever terms you wish. You can GPL it, but then turn around and release a proprietary version. You have this right _if_ you're the copyright holder.

From what I can tell, the person who put this app on the App Store is not the copyright holder of GNU Go. (The FSF holds copyright to most of GNU Go's code, and they'd hardly offer an app on the App Store; and if they had, they could take it down without going through this mess.)

So what we have here is someone who took someone else's code (which was made available under GPL) and then released a DRMed version of it. The FSF is saying you don't get to do that.


As long as the code is available, I don't see why the DRM should matter. As noted elsewhere in this thread, it would be great if the FSF could provide a more detailed analysis of what the AppStore distribution is lacking. As it is, it seems this would just make developers more worried about the GPL.


From what I understand, Apple is a distributor - not just the original developers.

Because Apple is distributing they have the same responsibilities as any distributor to provide the source code and allow the code to be shared.

And making people worried about the GPL shouldn't be a priority here. The GPL isn't a free-for-all license - its a very specific license which, while granting a lot of rights, also has a lot of requirements. Anybody distributing code with such a license needs to make sure they fall in line.


If the author of the app provided a link to a full source code download in the app itself and on the appstore page, wouldn't that make the whole thing compliant, at least in spirit, with the GPL? Everybody would be able to download the source, build/modify it themselves and run it in the emulator and if they have a developer certificate install it on their phone.


I guess that's what I'm getting at, yeah.


As it was said above, it's not the distribution that is the problem, it is the addition of license terms which the GPL forbids.


The FSF is saying that if the Apple Store wants to distribute a program covered by the GPL, they should comply with the GPL. Which seems reasonable.

If you wrote code 10 years ago under the GPL, you retain the copyright, and may distribute the code or the program how you please under whatever license you like. Other people do not hold the copyright, and may not distribute your program under licenses of their choosing. People and companies do dual-license fairly commonly, allowing the free software community to use and develop their product, while retaining the ability to license it commercially.

The FSF clearly does expect the software will be removed from the store, hence the linked communication. But they are not requiring it. This is somewhat more lenient than you might expect a commercial software vendor to be if their software was being illicitly distributed by Apple on the App Store.

Hope this helped clear things up for you.


>#COMMENT FLAG: DELIBERATE MISINTERPRETATION

> If I wrote code 10 years ago under the GPL ...

> ... I did not sign up to a cult and have to follow their rules. When I can do what I want with my copy of my code, then that is freedom.

If you released code under the GPL, then you released code under the GPL. This means other people can't do whatever they like with the code; instead they must follow the Gnu cult rules.

However, copyright says you can do what you want with your copy of the code, including release it under whatever licences you like.

The GPL protects the code and itself, but does not restrict the owner's right to release code under any additional other licenses (except IANAL but I don't think you can revoke a GPL license.)


> That sucks. So basically, Gnu is saying that nobody is allowed to develop for Apples platform with any GPLed code?

They're saying that no one is allowed to sign away the user's rights by agreeing to something like the Apple Developer License, which allows the application to be distributed only through the App Store.

How can someone who doesn't own the code ever agree to that?

And if you're taking your own code, which you want to GPL, how can you GPL it while still agreeing to the Apple Developer License which says in Section 7.2 that you can't distribute the code, except via the App Store? What good would GPLing such an application do, when you wouldn't be allowed to give anyone the source or let them modify it?

You can still use it on Apple devices where Apple does not restrict the use and development of code, of course, such as their general purpose computers. But yeah, you're not free to develop for the iPad or iPhone without following Apple's rules. And Apple's rules appear to be in conflict with the GPL.

You can find further discussion of the incompatibilities here:

http://www.linux.com/archive/feature/131752


what do you wanted ? the iphone is a closed platform.


Well, if you wrote the code, you own the copyright. You can release it under any license you wish. If other people wrote the code, then they've expressed their wishes through the terms of the GPL (which haven't really changed in the last decade), and those wishes include forbidding additional licensing agreements from being put on top of the GPL (which appears to be the objection in this case).


I did not sign up to a cult

If you apply for, and receive, Timbuktan citizenship and the next year they pass a law you don't like, you, as one of their citizens, are subject to that law. You signed up for it.

If you released code under the GPL: yes you did sign up for this 'cult'.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: