Slashdot Mirror


iPhone SDK and Free Software Don't Match

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

41 of 304 comments (clear)

  1. Why is it still a case where by zappepcs · · Score: 4, Insightful

    companies are issuing SDKs and don't tell you what license is actually compatible in a common sense, non-legalese way?

    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 :)

    1. Re:Why is it still a case where by jank1887 · · Score: 5, Funny

      STOP THE PRESSES, FOLKS! This guy doesn't see any problems. There must not be any!

    2. Re:Why is it still a case where by mysqlrocks · · Score: 4, Funny

      There are a handful of different popular vehicle fuels.

      Yes, but it met the Slashdot requirement of being a car analogy.

    3. Re:Why is it still a case where by DECS · · Score: 4, Interesting

      Because leaded gas would destroy the catalytic converter in newer cars.

      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

  2. Apple haters be damned! by erroneus · · Score: 5, Funny

    It seems Apple haters are coming out of the wood work just to attack poor defenseless Apple! Apple does things they way they do them because they work. And the proof of that is illustrated perfectly in how cool and popular Apple stuff is... and by extension, anyone who uses Apple stuff is also cool and popular. So why can't people stop reading all these legal issues and get back to fun and sunshine!

    1. Re:Apple haters be damned! by sm62704 · · Score: 3, Funny

      iScream! uScream! we all scream for iScream!

      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 last week?

      iKid, iKid! ok iGo now.

      --
      mcgrew's razor: Never attribute to stupidity that which can be explained by greedy self-interest
    2. Re:Apple haters be damned! by drerwk · · Score: 3, Informative

      A lot of the *NIX core is there and rather functional...
      FYI - all of UNIX is now there.

      Leopard is an Open Brand UNIX 03 Registered Product, conforming to the SUSv3 and POSIX 1003.1 specifications for the C API, Shell Utilities, and Threads. Since Leopard can compile and run all your existing UNIX code, you can deploy it in environments that demand full conformance â" complete with hooks to maintain compatibility with existing software.
      Though my favorite quote is

      The most widely-sold UNIX operating system, Mac OS X version 10.5 Leopard combines a fully-conformant UNIX foundation with the richness and usability of the Macintosh interface, bringing multi-core technology and 64-bit power to the mass market.
      Sold. Get it? Sold.
    3. Re:Apple haters be damned! by Yvan256 · · Score: 4, Funny

      Sunshine? WTF dude, this is slashdot. We're all supposed to be hiding in the basement!

  3. Re:Why is this a surprise? by gEvil+(beta) · · Score: 5, Insightful

    People should really read what they agree to but of course they don't most of the time. Of course, the /. crowd as a whole probably does so far more than most demographics.

    And if the ability of /.ers to RTFA (not just this one, but any FA) is any example to go on, then it's a completely hopeless situation...

    --
    This guy's the limit!
  4. A new low by Ethanol-fueled · · Score: 5, Funny

    "...If you want to develop Free Software, Linux.com (Shares corp overlord w/ Slsahdot )..."

    Wow, /. editors can't even spell their own name? Somebody should give them a pointy hat and make them go sit in the corner for a bit ;)

  5. Combined FUD, Maby-FUD and Not-FUD... by nweaver · · Score: 4, Informative

    The Not FUD: The iPhone is incompatible with GPLv3.

    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.

    --
    Test your net with Netalyzr
    1. Re:Combined FUD, Maby-FUD and Not-FUD... by FooAtWFU · · Score: 3, Informative

      From TFA, it may affect the publishing of source code under any license. The BSD license isn't going to get you very far if you could be violating the Apple NDA by publishing the source code. Furthermore, even if you did / could publish it legally, it won't do anyone else much good if they can't compile it for the iPhone because they haven't paid Apple $99 and gotten the magical seal of approval.

      --
      The World Wide Web is dying. Soon, we shall have only the Internet.
    2. Re:Combined FUD, Maby-FUD and Not-FUD... by nweaver · · Score: 3, Informative

      You CAN distribute code under the BSD liscence, just you can only distribute to other registered developers.

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

      --
      Test your net with Netalyzr
    3. Re:Combined FUD, Maby-FUD and Not-FUD... by mobby_6kl · · Score: 4, Funny

      > You CAN distribute code under the BSD liscence, just you can only distribute to other registered developers.

      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!

  6. Why should *everything* be GPL compatible? by Richard_at_work · · Score: 5, Interesting

    Enough said really, why should everything strive to be GPL compatible? I've often wondered this in the past when has its license suddenly decreed to be 'GPL incompatible' to a great outcry here on Slashdot, when at the same time the GPL itself doesn't strive for great compatibility with others.

    1. Re:Why should *everything* be GPL compatible? by jrumney · · Score: 5, Informative

      when at the same time the GPL itself doesn't strive for great compatibility with others.

      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.

    2. Re:Why should *everything* be GPL compatible? by Hatta · · Score: 3, Insightful

      Because there's a lot of GPL software out there, and people are going to want to run it on their devices. If a device cannot legally run GPL software, that's a really good reason not to get that device.

      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.

      --
      Give me Classic Slashdot or give me death!
    3. Re:Why should *everything* be GPL compatible? by dreamchaser · · Score: 4, Interesting

      There is a big difference with an individual software package not being GPL compatible and an entire platform being so. Locking out free software may not have been Apple's actual intent but they have done so.

    4. Re:Why should *everything* be GPL compatible? by truthsearch · · Score: 3, Insightful

      It strives to be the most free. Sometimes that causes problems with proprietary systems. I don't think it strives to be the most free. At least I don't see it that way. I think it strives to propagate freedom. And that's what sometimes conflicts with proprietary systems.
    5. Re:Why should *everything* be GPL compatible? by daveewart · · 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.

      --
      "If you think the problem is bad now, just wait until we've solved it." --- Arthur Kasspe
    6. Re:Why should *everything* be GPL compatible? by Bill_the_Engineer · · Score: 3, Insightful

      Hardware on the other hand, not so much. What's needed to develop on hardware should be license agnostic.

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

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    7. Re:Why should *everything* be GPL compatible? by Your.Master · · Score: 3, Insightful

      Yes, I can seriously argue that. Especially because it isn't that you can't remove the freedoms of others, it's that you must grant a set of freedoms to others. The work that goes into a derived work does not have some platonic natural state of being free for all others to use, it is imposed by the source GPL work.

      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.

  7. A pointy hat by tepples · · Score: 3, Funny

    Somebody should give them a pointy hat and make them go sit in the corner for a bit ;) I put on my robe and wizard hat.
  8. Does this conflict with GPL 2 or just GPL3? by DaveInAustin · · Score: 3, Informative

    This seems to conflict with GPL 3, but it's a stretch to say that it conflicts with v2. If I distribute code that uses an API, am I disclosing the API? IANAL so I guess someone could make that argument. I'm glad apple will be pushed to clarify this, but it's probably ok. Is Apple trying to make sure nobody ports an iphone app to the andriod ?

    --
    --- http://davidnehme.blogspot.com
  9. Re:Why is this a surprise? by EricR86 · · 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.

  10. GPLv2 MAY BE incompatible... by nweaver · · Score: 5, Informative

    Actually, GPLv2 MAY BE incompatible, if the answer is "code which uses the iPhone APIs contains confidential information". In that case, you could only distribute the code to other registered developers, not everyone, which means Berkeley liscence is fine but GPL is not.

    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.

    --
    Test your net with Netalyzr
    1. Re:GPLv2 MAY BE incompatible... by kithrup · · 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.

  11. Code Signing by diamondsw · · Score: 3, Insightful
    Simply put, there are three problems:

    1. Code signing - this conflicts with GPLv3's "anti-Tivoization" clause. As others posted, both sides will see this as a feature, not a bug.
    2. 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.
    3. 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.

    --
    I don't know what kind of crack I was on, but I suspect it was decaf.
  12. Leave Salsadot alone! by eldavojohn · · Score: 4, Funny

    "...If you want to develop Free Software, Linux.com (Shares corp overlord w/ Slsahdot )..." Wow, /. editors can't even spell their own name? Somebody should give them a pointy hat and make them go sit in the corner for a bit ;) Leave Salsadot alone!

    Mmmmm, "Dancing for Nerds. Spicy food you pay for twice."
    --
    My work here is dung.
  13. No SimCity/Micropolis for iPhone by SimHacker · · Score: 4, Insightful

    I keep getting asked if I'll port SimCity (Micropolis) to the iPhone.

    Now I know the answer: NO! Because it's licensed under GPL 3.

    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

    --
    Take a look and feel free: http://www.PieMenu.com
  14. Then no cell phone is compatible. by w3woody · · Score: 5, Insightful

    There are three points of contention:

    (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, 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. 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.

    1. Re:Then no cell phone is compatible. by Microlith · · Score: 3, Informative

      To be sure, Apple is the only one that requires signing before the application can even be loaded and run. Both Symbian and Windows Mobile will run unsigned applications, but their access to phone capabilities will be restricted to some degree.

    2. Re:Then no cell phone is compatible. by Dionysus · · Score: 5, Informative

      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

      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.
      --
      Je ne parle pas francais.
  15. FSF Doesn't Get To Define Free Software by logicnazi · · Score: 3, Insightful

    I have great respect for the FSF and the goals they are trying to accomplish but when I see claims like, "But the result still would not qualify as free software, since no one could alter your source code and run the modified result on their phone," it irks me.

    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.

    --

    If you liked this thought maybe you would find my blog nice too:

  16. Sarcasm by StarKruzr · · Score: 4, Funny

    You do not has it.

    --

    +++ATH0
  17. So far, anyway, by StarKruzr · · Score: 3, Insightful

    we can still jailbreak, and there's no reason we can't continue to develop free software with the community toolchain.

    --

    +++ATH0
    1. Re:So far, anyway, by Chabil+Ha' · · Score: 4, Insightful

      An this is what really matters. Will I go legit when the App store comes out? No. Because jailbreaking offers me the freedom that I have now come to expect.

      --
      We're all hypocrites. We all have hidden parts, it's the contrast between them that make us more a hypocrite than others
  18. Apple's license is viral, not the GPL by nguy · · Score: 3, Insightful

    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.

    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.

  19. iPhone delivers on the GPL's purpose for being by quibbler · · Score: 3, Insightful

    I've seen a lot of tech demos. I've seen alot of prototypes. And yet, the iPhone for all of its closed terrible-ness is the most advanced piece of technology I've ever seen- and it gets better... I own one. Its in my hand. I use it every day. This isn't something we drool over and fantasize about owning some day, this is extremely attainable.

    The point is that while I am a FSF and EFF supporter, GPL still doesn't deliver with jaw-dropping results. Apple does. The open movement was created largely in response to advanced technology being kept out-of-reach of average consumers ($5000/seat UNIX comes to mind) largely out of ignorance on the part of the companies developing the software.

    Today, we have Apple solidly delivering to the consumer what many are calling *the* next platform, and the GPL community is throwing stones. Meanwhile Android has failed to be more than 'cute' and certainly nothing to write home about.

    Finally, the GPL community needs to gain perspective. Would it be nice to have a few GPL projects one iPhone? Sure. Will I miss their absence? Not a chance. This is *not* a desktop, this is a digital prosthetic. If the FSF is hoping to pressure Apple to change policy, stop now. Instead look at changing GPL to accommodate a company that is (in its own way) delivering on the goals that FSF was created to accomplish.

    1. Re:iPhone delivers on the GPL's purpose for being by agendi · · Score: 3, Interesting

      .Instead look at changing GPL to accommodate a company that is (in its own way) delivering on the goals that FSF was created to accomplish.

      What? That would be a very, very sad day. I had to read that statement 3 times. Forgive me if I misunderstand you but I get the feeling that you are suggesting that the GPL bends to support the activities of Apple? Again, a very, very sad day.

      I have an iPhone, I have had one for a couple of months now and have been using it everyday. It's not bad. There are some very nice things about it and there are some very idiotic things about it. The one thing that I constantly complain about however is the reception - it is just no good. I performed several tests with my previous phone and the iPhone consistently failed to get ANY signal where the other phone got at least 1 (and sometimes 2) bars. This is not a sign of a good phone. When your sitting with a strong signal, I've no complaints with it but I'm getting tired of walking around my office and having the call drop out from no signal. As a cool gizmo and a "shape of things to come" it is excellent. As a phone it is mediocre, as a low end phone camera - mediocre, as an ipod it's fine, as an organizer it's fine if you use a Mac and mediocre if you use a PC and a headache if you use linux.

      This is just my personal experience with it, I have several other friends with them that have similar problems. I think the next version of the iPhone will solve these problems and will be something to behold, but the current one is not as shiny as the cool kids would have you believe

      --
      I just can't be bothered.
  20. Re:Why is this a surprise? by voidptr · · Score: 4, Insightful

    The license I choose as an author is binding on everyone else, not me. It's my code, I still own the original copyright, and I can do whatever the hell I want.

    There's nothing stopping me from releasing it under the GPL with an exception addendum 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.

    --
    This .sig for unofficial government use only. Official use subject to $500 fine.