Slashdot Log In
iPhone SDK and Free Software Don't Match
Posted by
CmdrTaco
on Wed Apr 16, 2008 10:26 AM
from the hey-now-wait-a-minute dept.
from the hey-now-wait-a-minute dept.
kookjr writes "Are you planning to develop software for the iPhone? If you want to develop Free Software, Linux.com (Shares corp overlord w/ Slashdot) has a good review of the conflicts between Apple's Registered iPhone Developer Agreement and licenses like the GPL. This is important for people who may not read all the agreements they click Agree to."
Related Stories
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Why is it still a case where (Score:5, Insightful)
It seems only logical that this should fall in the 'system requirements' type category of the install documentation...
Sure, when you start your car there is no beeping alarm and a warning sign to use ONLY unleaded gas, but then they go to extra efforts to warn you at the gas fill spot, and make the neck of the gas fill tube so that only unleaded fuel and siphon hoses will fit.
This license thing is like letting you believe you can pour diesel fuel right on in the tank, no worries.
I like car analogies
Re: (Score:3, Insightful)
There are thousands of different licenses.
Fuel compatibility is based on verifiable engineering principles.
License compatibility is based on legal opinion.
Re:Why is it still a case where (Score:5, Funny)
Yes, but it met the Slashdot requirement of being a car analogy.
Parent
Re:Why is it still a case where (Score:5, Funny)
Parent
Re:Why is it still a case where (Score:5, Interesting)
Old cars used lead in fuel to lubricate engine parts. Lead is toxic. In addition to removing lead, newer cars added catalytic converters to burn off tailpipe toxins. If you run leaded gas through them, it contaminates the catalysts.
So to prevent people who didn't know better from thinking they could run "regular" gas through their newer cars without destroying a ~$300 part and dumping out more pollution, they make it difficult to do so with a smaller filler hose and port.
That shares little in common with the idea of using GPL software in the iPhone. First of all, there's no damage: anyone can adapt FOSS libraries or develop new code under a free license and use this to deliver iPhone programs. Their open source code can be distributed for others to adapt; the only difference is that in order for someone to actually deploy an adapted version of that code, that new developer would need to be in the iPhone dev program so they could sign and distribute it.
Apple uses both GPL and BSD licensed software on the iPhone, and makes their source available from its website. Why can't other software developers do the same?
Perhaps I'm missing something, but even the GPL doesn't force developers to guarantee that their code will never be used on a secured platform that requires code signing. iPhone development offers no barriers to open source ideologies. It's only the official AppStore distribution of completed software that requires some approval from Apple. It seems pretty clear that there will always be some software that requires modifying the iPhone's firmware to distribute non-signed, unofficial software, so even that is hardly relevant.
What's the controversy here? Seems to be much grasping at straws by the ignorant diggtard crowd that likes to bewail the "Apple monopoly." Of course, the problem is that Apple competes against lots of other products in the market. There are lots of MP3 players, media software, and smartphones; there are no commercial PC operating systems to choose from, and even the free volunteer options are hard to find available on a new PC that doesn't already include a Windows license. That's the difference between the Windows monopoly and the competition of iTunes, the iPod, and the iPhone.
iPhone 2.0 SDK: How Signing Certificates Work [roughlydrafted.com]
Parent
Apple haters be damned! (Score:5, Funny)
Re:Apple haters be damned! (Score:4, Funny)
Uh, 'scuse me while iRead this iSummons from Apple's iLawyer. Who isn't so iCool or iPopular. But nothing's as iCool as iScream!
Did iMention that iGot an iOperation [slashdot.org] last week?
iKid, iKid! ok iGo now.
Parent
Re:Apple haters be damned! (Score:5, Funny)
Parent
Sarcasm (Score:5, Funny)
Parent
Re:Apple haters be damned! (Score:4, Informative)
FYI - all of UNIX is now there.
Though my favorite quote is
Sold. Get it? Sold.
Parent
Why is this a surprise? (Score:3, Insightful)
People should really read what they agree to but of course they don't most of the time. Of course, the
Re:Why is this a surprise? (Score:5, Insightful)
And if the ability of
Parent
Re:Why is this a surprise? (Score:5, Insightful)
It might be considered a surprise considering you can release your software for free (as in beer). But you can't really release the source for free (as in speech) under a GPL.
If want to release "free" software, it's hard to believe you have to do so restrictively.
Parent
Re: (Score:3, Insightful)
Re:Why is this a surprise? (Score:5, Insightful)
There's nothing stopping me from releasing it under the GPL with an exception addendum [wikipedia.org] to account for the iPhone code signing requirements. So if you modify my app and distribute it, you still have to comply with the GPL except for distributing a code signing key to make it work on real hardware.
Parent
So far, anyway, (Score:4, Insightful)
Parent
Re:So far, anyway, (Score:5, Insightful)
Parent
Gratis or libre? (Score:3, Informative)
There is nothing preventing free software to be distrubuted from the iPhone App Store. I'm working on one to release, probably for free. The barriers are for Open Source Software, which just happens to usually be free.
Except the term free software [wikipedia.org] is commonly used as a synonym for open source software [wikipedia.org] (or vice versa). Are you thinking of freeware [wikipedia.org]?
A new low (Score:5, Funny)
Wow,
A pointy hat (Score:3, Funny)
Leave Salsadot alone! (Score:5, Funny)
Mmmmm, "Dancing for Nerds. Spicy food you pay for twice."
Parent
Combined FUD, Maby-FUD and Not-FUD... (Score:4, Informative)
If you ask Apple, thats a feature.
If you ask the Free Software Foundation, thats a feature.
The Maby FUD: Is code which uses the iPhone APIs confidential information under the NDA? No answer yet.
The Total FUD: It only affects SOME Free liscences. Even if the APIs are confidential, this does NOT stop BSD code, but only viral liscences like GPL.
Re:Combined FUD, Maby-FUD and Not-FUD... (Score:4, Informative)
Parent
Re:Combined FUD, Maby-FUD and Not-FUD... (Score:4, Informative)
Since registering as a developer for the SDK is $0.00, and a registered devolper with a dev key is $100, AND is needed if you want to modify the code, Big Frakin Deal: you can only distribute the code to people who are able to use it, as the jailbreak dev-kits don't use the same APIs (and if they did, then you can distribute to your hearts content because its clearly no longer confidential information).
Parent
Re:Combined FUD, Maby-FUD and Not-FUD... (Score:5, Funny)
Oh, ok. I think I've just solved the prostitution problem for the US using the same approach: you can pay women for sex, but only if the woman in question is your wife. Ta-da!
Parent
Re: (Score:3, Informative)
When they are talking about you can't alter it and then use it, their talking about how the software isn't free of restriction. They are not talking about its price.
Apple's license is viral, not the GPL (Score:4, Insightful)
The GPL quite clearly says that the OS can be under whatever license it wants to be. GPL'ed software runs on SunOS, Solaris, Windows, AIX, Symbian, and lots of other systems with weird licenses. GPL software does not infect software that isn't derived from it in some way.
The problem here is that Apple is trying to be viral and infect software that they did not develop. The GPLv3 just says that it won't allow itself to be infected by viral corporate licenses.
I've owned about a dozen Macs over the years. I'm so pissed of about Apple's recent bullshit that I'm not going to buy another Apple product until they change or hell freezes over.
Parent
GPLv2 MAY BE incompatible... (Score:5, Informative)
Also, apple's method of distribution MAY BE GPLv2 incompatible, because Apple might not want to also be responsible for distributing the source code and some GPLv2 authors may not like derivitive works where a different party distributes the source code compared to the binary (because the developer could always host the code if its not confidential), and the GPLv2 as written says it is the binary distributer's responsibility to distribute the source code.
We don't know yet, but if the distribution is not GPLv2 friendly:
If you ask the Free Software Foundation, that would be a feature.
If you ask Apple, that would be a feature.
Parent
Re:GPLv2 MAY BE incompatible... (Score:5, Informative)
The normal ADC NDA says the same thing, and that has never prevented anyone from distributing application source code. (One can argue that the third-party books which describe the API cover this -- but books always lag behind, and I've never seen anyone worried that they'll be sued by Apple for distributing their application source code before any third-party books describing the APIs they're using are out.)
Of course, I'm neither a lawyer nor Apple (and certainly not an Apple lawyer), so I can't speak definitively... but common sense seems to say this is a red herring.
Parent
Re: (Score:3, Insightful)
Why should *everything* be GPL compatible? (Score:5, Interesting)
Re:Why should *everything* be GPL compatible? (Score:5, Informative)
A great amount of effort went into writing GPLv3 in such a way that it would be compatible with Apache License v2.0 and other Free licenses.
Parent
Re:Why should *everything* be GPL compatible? (Score:4, Insightful)
You're right that the GPL doesn't strive for great compatibility with other license. It strives to be the most free. Sometimes that causes problems with proprietary systems. It's not the GPLs fault that it can't be compatible with licenses that remove your freedoms.
Parent
Re:Why should *everything* be GPL compatible? (Score:4, Insightful)
Parent
Re:Why should *everything* be GPL compatible? (Score:5, Insightful)
[The GPL] strives to be the most free.
Not quite. It strives to stay free. Most people consider BSD-licensed code to be more free than GPL-licensed code, simply because there are fewer restrictions.
I'm not commenting on whether "being more free" or "staying free" is "better" (whatever that might mean in this context), simply that there's a difference.
Parent
Re:Why should *everything* be GPL compatible? (Score:4, Insightful)
The 13th amendment DOES make you less free in some aspects. You are not free to own slaves. Less freedom. That's the end of it. Now, it makes any potential slave much, MUCH more free in some other aspects (and I get that in this analogy, everybody is a slave -- but also in this analogy the slaves can have slaves, so it still holds), and it is overall a good thing, but "good" and "free" are not synonyms. Just because the 13th amendment is absolutely a good thing doesn't mean that it isn't a restriction of your freedoms.
Parent
Re:Why should *everything* be GPL compatible? (Score:5, Interesting)
Parent
Wrong license... (Score:3, Insightful)
I think you misspelled "BSD" or "MIT"...
Re:Why should *everything* be GPL compatible? (Score:4, Insightful)
There are other hardware manufacturers. So if you don't like the terms required to support the iPhone, then help out the GPL compatible alternatives instead (eg. Nokia N810)..
Parent
Does this conflict with GPL 2 or just GPL3? (Score:4, Informative)
Code Signing (Score:4, Insightful)
- Code signing - this conflicts with GPLv3's "anti-Tivoization" clause. As others posted, both sides will see this as a feature, not a bug.
- It's not "free". This is true; much as you cannot download the Tivo source code and have it compile and work on your Tivo, you cannot just download available source code and run it on your iPhone. This goes back to the signing issues above.
- NDA provisions. I'm willing to bet this is purely during the beta period. All of Apple's other tools, documentation, etc are freely available, and I expect this will continue once it is released. After all, signing up for this program gives access to beta software (the iPhone firmware 2.0), and Apple similarly restricts access to OS X and other beta software. Once it's final, these restrictions are lifted.
Ultimately, this all boils down to code signing and what you think of it. The problems presented by this are fairly specific to GPLv3; anyone is free to distribute their code under (for example) the MIT/BSD license, or even GPLv2.As for GPLv3 it's far from widespread, and with prominent projects such as the Linux kernel avoiding it, I'm not sure how much traction it will gain over GPLv2. Much like Windows Vista has to compete with XP, GPLv3 has to compete with GPLv2.
No SimCity/Micropolis for iPhone (Score:5, Insightful)
I keep getting asked if I'll port SimCity (Micropolis) [google.com] to the iPhone.
Now I know the answer: NO! Because it's licensed under GPL 3 [google.com].
It's a lot easier to port software to the Windows CE on the PocketPC, anyway. And then I can give it away for free, instead of charging for it and forking over money to Apple.
-Don
Then no cell phone is compatible. (Score:5, Insightful)
(1) You must have your application signed before it will run on any cell phone,
(2) Your application must be delivered via the Apple iTunes store, and
(3) Your usage of the beta version of Apple's development kit subjects you to an NDA.
Well, the NDA part of the beta program struck me as a little odd, as it takes about no effort for any idiot to sign up and download the SDK for free--however, this seems to be a standard tactic by Apple for all its beta SDKs. The NDA will be gone, however, by the time the SDK is out of beta--so the whole "you must sign an NDA and that is incompatible with the GPL" thing will be gone by summer.
So what is left is the fact that you have to sign your application before it will run on the iPhone.
As someone who has written cell phone software before, I can tell you that Symbian and Windows Mobile also require application signing before allowing your programs to run on their platforms. It's very common in the cell phone industry to use certificate signing--and at $99/year, Apple is the cheapest to obtain a signing key. Further, from the sounds of it, by the time the SDK goes out of beta, anyone with $99 can get a signing key and sign as many apps as he wishes. (By contrast, for Windows Mobile you pay VeriSign $350 for 10 signing events [verisign.com], meaning you can only sign 10 applications or different versions of the same application. (Actually a signing event means you sign one executable.) Symbian is even more of a pain in the neck. [verisign.com] And let's not talk about Android until real Android-based phones start showing up on the market and we learn what sort of package signing requirements the cell phone manufacturers impose on Android applications.
While I appreciate the need for authors to fill column space in order to get paid, it seems to be a little early to start complaining about GPL incompatibility and pointing the fingers solely at Apple because you're too lazy to compare and contrast with the other mobile operating systems out there.
Re: (Score:3, Interesting)
Re: (Score:3, Informative)
Re: (Score:3, Insightful)
Re:Then no cell phone is compatible. (Score:5, Informative)
Oh, please. You hear this excuse from Apple apologists every time this issue comes up. Of all the programs on my Nokia N70, only the stuff from Nokia, Opera and Adobe is signed. Gmail app is not signed. None of the games are signed. They all installed and run fine.
Parent
FSF Doesn't Get To Define Free Software (Score:4, Insightful)
More accurately it would not meet the FSF's definition of free software. I would call freely released source code that I could load into the iphone simulator (or with $99 an iphone itself) free software. But whether or not you agree with my usage of the term isn't the point. 'Free software' is a term like 'free country.' It's part of the language and no one entity can dictate it's meaning just because it thinks that is what the term should mean.
To be clear I have no dispute with the FSF. Just as various activist groups might offer their own definitions of free countries that differ so too is it reasonable for the FSF to offer their own definition of free software and to try to convince us it is the correct one. However, journalistic pieces like the one at linux.com shouldn't assume that the FSF can define by fiat what words in our language mean. Instead they should tell us that this would not qualify as free software under the FSF definition.
GPLv3 not really a problem? (Score:3, Insightful)
The Actual GPLv3 License says:
IANAL, but it looks to me like the only person who would be restricted from distributing GPLv3 code for the iPhone would be Apple, and even they could do so safely as long as they don't bundle it into the same transaction in which you buy the iPhone itself. You or I ought to be able to just provide a link to the source code in our app, or otherwise embed the source code in a readable fashion, and be safe from that clause while still distributing our app through iTunes.
So where's the problem Mr Smith?
Re: (Score:3, Informative)