Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Out of curiosity, why is GPL software prohibited on the app store?


The FSF argue that the App Store's ToS restricts app redistribution and therefore is incompatible with Section 6 of GPLv2: "You may not impose any further restrictions on the recipients' exercise of the rights granted herein."

Similar language is contained in each GPL and GPL-alike license.

http://www.fsf.org/blogs/licensing/more-about-the-app-store-...


> The FSF argue that the App Store's ToS restricts app redistribution and therefore is incompatible with Section 6 of GPLv2: "You may not impose any further restrictions on the recipients' exercise of the rights granted herein."

I anal but why would it restrict recipient's exercise of the rights? I believe as of iOS 10, you can compile your own apps on your iPhone without paying an Apple tax and I imagine the apps have source code publicly available in summer git repository probably on GitHub anyway?

I don't think the argument is that you as a developer are prohibited from using GPL code on apple app store. The argument (rightly) is that you should not participate in that ecosystem because it is a serfdom but then emacs exists on Windows which despite all the overture of "Microsoft loves open source" didn't come even close to saying in practice "Microsoft loves free software". Such is life. You can't win them all, Charlie Brown.

tl;dr I anal but I don't think the GPL prohibits you from putting your app on the app store. Just make sure you somehow give the source code to everyone who installed the app.


> I anal but why would it restrict recipient's exercise of the rights? I believe as of iOS 10, you can compile your own apps on your iPhone without paying an Apple tax and I imagine the apps have source code publicly available in summer git repository probably on GitHub anyway?

In order to download apps from the App Store, I have to agree to the App Store terms of service. Those terms say that I will not redistribute anything I download from the App Store. That is a "further restriction" that makes distributing on the App Store incompatible with GPL.

That I might be able to get a redistributable copy via some other mechanism, such as compiling the source code from the developer's GitHub repository, is completely irrelevant.

It is worth noting that this is different from the case where GPL software is included in physical goods. For instance, if some membership discount store sold you a router that contained GPL code, and part of your membership agreement with the discount store was that you could not resell items purchased there for three years, there would be no GPL problem (assuming that the membership store is just buying the routers from the manufacturer and passing them on).

The difference is that when you distribute your app on the App Store, you only upload one copy to Apple, and then Apple makes a copy of that every time someone downloads. Since Apple is making copies, Apple needs permission of the copyright owner, and so GPL is relevant.

The membership store is not making copies. They are just receiving the copies from the manufacturer and passing those on, one to one, to their customers. The first sale doctrine applies, and so the membership store does not need the copyright owner's permission, and so the license terms are irrelevant.


The thing is, the copy you get from the App Store is encumbered by the ToS licensing terms, which conflicts with the GPL. That you can get an unencumbered copy from Github doesn't fix that.


I don't understand the distinction. Does that mean any DRM encumbered store would also automatically be in violation of GPL? I'm thinking steam, origin, or any store that doesn't like you sharing binaries with others.


Depends on their specific Terms of Service. Some GPL software is distributed through Steam, so the platform itself apparently doesn't have mandatory rules like that (or nobody complained yet, although I remember some press when they forgot to include a GPL license notice a while back, so people have at least been looking at it). Just because the platform can do DRM doesn't mean it's not compatible with GPL code, if proper exceptions exist.

If they blanket-apply restrictions to usage of all software redistributed through the store, then yes, they are incompatible.


AFAIK it's because all app store apps have proprietary DRM by apple, and since it's built into the app, it would be violating the GPL to distribute the app without also releasing the source code for apple's DRM.


That seems more pedantry from the FSF than anything else.

You are perfectly free to distribute the source code to an app you publish to the App Store. The fact that binary compiled from said source code is digitally signed is ... neither here nor there.

By that rationale, PGP signing source code would fall afoul of the same, after all, which is the bit that is compiled - the signed code, or the unsigned code?


>You are perfectly free to distribute the source code to an app you publish to the App Store.

But the GPL states that when a user receives a binary, they may request the complete corresponding source code to that software. That doesn't mean most of the code, minus this proprietary bit that handles DRM.


By that reasoning, you couldn't use any compiled GPL software on Windows, either, since the code will be linked with Microsoft's runtime libraries (which are decidedly not FOSS).


The GPL has a system libraries exception that covers this.


Wouldn't the DRM handling system be considered a system library, thus falling in the same exception?




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

Search: