Advertise Mobile SDKs Books Events Forum News Social Networking Support Us
Follow @iphonedevsdk on Twitter

Interface 2, Advanced iOS
Mockup & Code Gen
($9.99)

Make your own iPhone apps
and run them live!
(free)

Pic Frame Dynamo: Photo Editing
($0.99)

Abiliator
($1.99)

Want your application or service advertised on iPhone Dev SDK?

Go Back   iPhone Dev SDK Forum > Business Forums > Business, Legal, & App Store

Reply
 
LinkBack Thread Tools Display Modes
Old 11-25-2010, 08:06 PM   #1 (permalink)
Fly-by-night Innovator
 
Join Date: Jun 2010
Posts: 364
musicwind95 is on a distinguished road
Default GPLv3

From a community standpoint, what's the general consensus on allowing GPLv3 code into the App Store? I'm looking to build an app that would rely heavily on GPLv3 code as a rendering engine; I've read conflicting reports about its validity in the App Store. I'm aware that there will almost always be some competition or disagreement, but I'd like to hear directly from some open source developers if possible. Would this result in any legal trouble, or just some annoyed individual developers?

Also, what about the LGPL?
__________________
If I have helped you, please consider donating. I use PayPal. It would mean a lot to me!


For more iOS Development, check out my blog—Cups of Cocoa. All visitors welcome, but especially beginners!

Hope I have helped!

Please check out IceFall, a new action game available in the App Store!
musicwind95 is offline   Reply With Quote
Old 11-26-2010, 08:01 AM   #2 (permalink)
Registered Member
 
Rudy's Avatar
 
Join Date: Mar 2009
Location: Ottawa, Canada
Posts: 1,425
Rudy is on a distinguished road
Default

If I remember correctly GPL isn't compatible with the AppStore
__________________
My Games:

My Blog
13" Macbook Air 1.7Ghz Core i5, 4GB DDR3, Intel HD Graphics 3000
iPhone 4S - PSPGo - 3DS - Wii - PS3 - 360
Rudy is offline   Reply With Quote
Old 11-26-2010, 03:59 PM   #3 (permalink)
Fly-by-night Innovator
 
Join Date: Jun 2010
Posts: 364
musicwind95 is on a distinguished road
Default

I'm not sure what you mean by "compatible" in this context. Does Apple specifically ban GPL code?
__________________
If I have helped you, please consider donating. I use PayPal. It would mean a lot to me!


For more iOS Development, check out my blog—Cups of Cocoa. All visitors welcome, but especially beginners!

Hope I have helped!

Please check out IceFall, a new action game available in the App Store!
musicwind95 is offline   Reply With Quote
Old 11-26-2010, 04:04 PM   #4 (permalink)
dre
Registered Member
 
Join Date: Oct 2009
Location: Los Angeles
Posts: 1,307
dre is on a distinguished road
Default

Tyrian game is based on OpenTyrian project which is GPL

There are also plenty of GPL based apps in appstore, It seems they are doing fine. Why would GPL license be against Apple's rules?
__________________
Game Pack - All-in-1 Game Pack
Shinro - A combination of Minesweeper and Sudoku
Nibbles - Remake of a classic snake game
Hooptie Browser - Humorous web filter
dre is offline   Reply With Quote
Old 11-27-2010, 04:03 AM   #5 (permalink)
Registered Member
 
Join Date: Jun 2009
Posts: 93
davek is on a distinguished road
Default

The GPL is not compatible with the App Store. Under the terms of the GPL the receiver of the application is entitled to the source code AND exactly the same rights you have. In order to install the app on a device, or sell it in the App Store you need to have a developer license. This is not possible for someone who buys your app without them also purchasing a license from Apple and you have therefore breached the GPL. This will apply to all versions, not just version 3.

The LGPL differs in that you only need to provide the source for the LGPLed code you use, along with any modifications you have made to it. As such LGPL is compatible I think.
davek is offline   Reply With Quote
Old 11-27-2010, 10:45 AM   #6 (permalink)
dre
Registered Member
 
Join Date: Oct 2009
Location: Los Angeles
Posts: 1,307
dre is on a distinguished road
Default

Quote:
Originally Posted by davek View Post
...exactly the same rights you have. In order to install the app on a device, or sell it in the App Store you need to have a developer license.
It's not worded like that. Nowhere it says that devs who modified GPLd code should be able to use other companies' distribution channels for free. Apple distribute GPLd GCC bundled with xcode, do they violate GPL because we can't distribute our modified GCC also from Apple web-site?

Users can download the source code from developer's web-site, modify the software, jailbreak their iphones, install, and use the modified version without any limitation. I still don't see violation.
__________________
Game Pack - All-in-1 Game Pack
Shinro - A combination of Minesweeper and Sudoku
Nibbles - Remake of a classic snake game
Hooptie Browser - Humorous web filter
dre is offline   Reply With Quote
Old 11-27-2010, 12:46 PM   #7 (permalink)
Registered Member
iPhone Dev SDK Supporter
 
smasher's Avatar
 
Join Date: Jul 2008
Location: San Mateo, CA (San Fran)
Posts: 3,858
smasher will become famous soon enough
Default

The GPL requires you to release your source code; I assume you know that already.

GPLv3 has specific language in place to prevent "tivoization," or using code signing to prevent users from running modified versions of your code. That's pretty much to the letter what Apple does, so I'd say that selling your app on the app store with no way for users to run a modified version is a violation of the GPLv3.

To comply you'd have to include "Installation Information" that allows your users to recompile and run the app, and you have no way to do that because Apple controls the signing process.

EDIT: Dre, I hadn't considered jailbreaking, but I don't think that helps unless you're only distributing on Cydia. Even if jailbreaking meets the "Installation Information" requirement, what if Apple releases OS 4.3 and there's no jailbreak yet? You're out of compliance and should pull your app from the store until a new jailbreak is available. Seems dangerous to depend on the jailbreak community for your GPL compliance.
__________________

Free Games!

Last edited by smasher; 11-27-2010 at 01:03 PM.
smasher is offline   Reply With Quote
Old 11-27-2010, 01:28 PM   #8 (permalink)
dre
Registered Member
 
Join Date: Oct 2009
Location: Los Angeles
Posts: 1,307
dre is on a distinguished road
Default

Quote:
Originally Posted by smasher View Post
... Even if jailbreaking meets the "Installation Information" requirement, what if Apple releases OS 4.3 and there's no jailbreak yet? ....
I agree with that. And still this will potentially violate only GPLv3, GPLv2 doesn't have "anti-tivoization" clause.

Moreover. iOS itself comes with GPLd binaries like libgcc, libstdc++. They are GPLv2 though. Following the very same logic then Apple are not complaint?

Apple release all their modification sources of libgcc, but they don't let end-users to run modified versions on their own hardware.

So it's either Apple break GPLv2 or GPL (at least v2) is compatible with the appstore.
__________________
Game Pack - All-in-1 Game Pack
Shinro - A combination of Minesweeper and Sudoku
Nibbles - Remake of a classic snake game
Hooptie Browser - Humorous web filter
dre is offline   Reply With Quote
Old 11-27-2010, 07:04 PM   #9 (permalink)
Registered Member
iPhone Dev SDK Supporter
 
smasher's Avatar
 
Join Date: Jul 2008
Location: San Mateo, CA (San Fran)
Posts: 3,858
smasher will become famous soon enough
Default

Agreed, GPLv2 seems ok. Not GPLv3 though.
__________________

Free Games!
smasher is offline   Reply With Quote
Old 11-29-2010, 05:52 AM   #10 (permalink)
Registered Member
 
Join Date: Jun 2009
Posts: 93
davek is on a distinguished road
Default

Quote:
Originally Posted by dre View Post
It's not worded like that. Nowhere it says that devs who modified GPLd code should be able to use other companies' distribution channels for free. Apple distribute GPLd GCC bundled with xcode, do they violate GPL because we can't distribute our modified GCC also from Apple web-site?

Users can download the source code from developer's web-site, modify the software, jailbreak their iphones, install, and use the modified version without any limitation. I still don't see violation.
I'm afraid it is very much worded like that. Strictly speaking you also need to provide the source code to all the GPL libraries that you use in a GPL app as well but that is generally overlooked as they are openly available. It has nothing to do with being able to use other companies distribution systems, I only mentioned that due to the same license being required to install on a device. Needing to jailbreak a device is an additional step that relies on security flaws in iOS that may be closed at somepoint so there is a limitation. It is not only the source you need to provide but strictly speaking the entire build chain in order to be able to reproduce the binary.

From GPL version 2: (highlighting added by me)

Quote:
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.
davek is offline   Reply With Quote
Old 11-29-2010, 10:06 AM   #11 (permalink)
Registered Member
 
Join Date: Nov 2008
Posts: 864
nobre84 is on a distinguished road
Default

Quote:
Originally Posted by davek View Post
I'm afraid it is very much worded like that. Strictly speaking you also need to provide the source code to all the GPL libraries that you use in a GPL app as well but that is generally overlooked as they are openly available. It has nothing to do with being able to use other companies distribution systems, I only mentioned that due to the same license being required to install on a device. Needing to jailbreak a device is an additional step that relies on security flaws in iOS that may be closed at somepoint so there is a limitation. It is not only the source you need to provide but strictly speaking the entire build chain in order to be able to reproduce the binary.

From GPL version 2: (highlighting added by me)
A complete Xcode project with all source files seems a perfectly valid compliance to the paragraph above IMO.
A Mac or Windows GPLv2 developer wouldn't possibly be responsible for supplying the community with valid Mac or Windows licenses, just as one wouldn't be responsible for supplying valid iOS program signatures to release such software as GPLv2.
nobre84 is offline   Reply With Quote
Old 11-29-2010, 10:09 AM   #12 (permalink)
dre
Registered Member
 
Join Date: Oct 2009
Location: Los Angeles
Posts: 1,307
dre is on a distinguished road
Default

What scripts used to control compilation have to do with anything we discussed about?

What about libgcc and libstdc++ coming in binary form with iPhones and available as source codes from Apple? Why FSF never complained about it?
__________________
Game Pack - All-in-1 Game Pack
Shinro - A combination of Minesweeper and Sudoku
Nibbles - Remake of a classic snake game
Hooptie Browser - Humorous web filter
dre is offline   Reply With Quote
Old 11-29-2010, 08:37 PM   #13 (permalink)
Fly-by-night Innovator
 
Join Date: Jun 2010
Posts: 364
musicwind95 is on a distinguished road
Default

So it appears that the general consensus is no...

Has Apple released any information about this? I seem to be sensing that Apple doesn't care; what would the community do in this case?

Also, is the GPL a "copyright" on the code itself, or more of a "patent" protecting the general idea? As in, if I use a GPL-covered algorithm, but completely re-write the code, using only the logic, is that okay?
__________________
If I have helped you, please consider donating. I use PayPal. It would mean a lot to me!


For more iOS Development, check out my blog—Cups of Cocoa. All visitors welcome, but especially beginners!

Hope I have helped!

Please check out IceFall, a new action game available in the App Store!
musicwind95 is offline   Reply With Quote
Old 11-29-2010, 09:36 PM   #14 (permalink)
dre
Registered Member
 
Join Date: Oct 2009
Location: Los Angeles
Posts: 1,307
dre is on a distinguished road
Default

Quote:
Originally Posted by musicwind95 View Post
...
Also, is the GPL a "copyright" on the code itself, or more of a "patent" protecting the general idea? As in, if I use a GPL-covered algorithm, but completely re-write the code, using only the logic, is that okay?
GPL is copyright.

You have to be very careful with "completely rewriting" thing. Technically even if you are LOOKING at somebody else's code while writing yours you might be infringing. So if you take somebody else's code and start rewriting it, you might still infringe somebody's copyright. You either use somebody's code or you don't use it completely, you can't "half-use" it.

IMHO GPL is fine, since there are plenty of GPLd apps and Apple themselves use GPLd code. Another example is GCC coming with xcode.
__________________
Game Pack - All-in-1 Game Pack
Shinro - A combination of Minesweeper and Sudoku
Nibbles - Remake of a classic snake game
Hooptie Browser - Humorous web filter
dre is offline   Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



» Advertisements
» Online Users: 401
17 members and 384 guests
baja_yu, bignoggins, ChrisYates, davejas69, Domele, dungnd2001, Feldspar, Hamood, iAppDeveloper, jessicagx69, JmacDotOrg, kaidm80, linkmx, logan, Punkjumper, TimoFrageFuchs, Yoonoo
Most users ever online was 1,387, 04-10-2012 at 04:21 AM.
» Stats
Members: 175,641
Threads: 94,108
Posts: 402,847
Top Poster: BrianSlick (7,990)
Welcome to our newest member, JmacDotOrg
Powered by vBadvanced CMPS v3.1.0

All times are GMT -5. The time now is 02:55 PM.
Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0