Forgot your password?
typodupeerror
Technology (Apple) Technology

iPhone SDK and Free Software Don't Match 304

Posted by CmdrTaco
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."
This discussion has been archived. No new comments can be posted.

iPhone SDK and Free Software Don't Match

Comments Filter:
  • by nweaver (113078) on Wednesday April 16, 2008 @10:35AM (#23091326) Homepage
    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.
  • by DaveInAustin (549058) on Wednesday April 16, 2008 @10:39AM (#23091422) Homepage
    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 [google.com]?
  • by FooAtWFU (699187) on Wednesday April 16, 2008 @10:43AM (#23091484) Homepage
    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.
  • by Bazar (778572) on Wednesday April 16, 2008 @10:44AM (#23091504)

    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.
    There is free as in beer, and free as in speech.

    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.
  • by jrumney (197329) on Wednesday April 16, 2008 @10:45AM (#23091512) Homepage

    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.

  • by nweaver (113078) on Wednesday April 16, 2008 @10:49AM (#23091592) Homepage
    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.
  • by nweaver (113078) on Wednesday April 16, 2008 @10:53AM (#23091666) Homepage
    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).
  • by Anonymous Coward on Wednesday April 16, 2008 @10:54AM (#23091682)
    Oh Wait their are, So if I want to make Free Software for the iPhone I just don't make it GPL...

    No, actually, the point of the article is that the NDA you agree to when you sign up is written in such a way that the source code might be considered "confidential" to Apple, which the NDA would prevent you from sharing under ANY license. The article also points out specific parts of the agreement that would prevent you from distributing code under GPL3 if Apple does clarify their NDA to make it so that your code isn't covered.
  • Gratis or libre? (Score:3, Informative)

    by tepples (727027) <tepples AT gmail DOT com> on Wednesday April 16, 2008 @10:57AM (#23091726) Homepage Journal

    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]?
  • Re:History Repeating (Score:3, Informative)

    by Constantine XVI (880691) <[moc.liamg] [ta] [todhsals+ythgie.hsart]> on Wednesday April 16, 2008 @11:08AM (#23091874)
    Not to completely debunk your post, but Apple charges a total of $0 for Xcode (the IDE for OSX) and associated tools, and lets you do whatever the hell you want with the resulting source and binaries.
  • by Microlith (54737) on Wednesday April 16, 2008 @11:17AM (#23091988)
    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.
  • by kithrup (778358) on Wednesday April 16, 2008 @11:19AM (#23092022)

    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.

  • by Anonymous Coward on Wednesday April 16, 2008 @11:32AM (#23092284)
    no. the iphone sdk is used for both iphone and ipod touch, and apps must be signed for both (it's the same os, just slightly different hardware).
  • by Dionysus (12737) on Wednesday April 16, 2008 @11:45AM (#23092464) Homepage

    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.
  • by Dekortage (697532) on Wednesday April 16, 2008 @11:46AM (#23092468) Homepage

    Mod parent up. If the iPhone SDK has the same clause as the ADC has had for awhile, this is very much a "red herring."

  • by Bill_the_Engineer (772575) on Wednesday April 16, 2008 @12:36PM (#23093172)

    It strives to be the most free.

    O Really? Don't get me wrong, because I prefer the GPL but I understand what the terms are.

    Public Domain is the most free. Absolutely no restriction on how or what you have to distribute and no restriction on price. The users are free to manipulate the source code as they see fit. Since it gives the developers the most freedom, it gives the users no "freedom" when it comes to derived works. The users can only get access to the original source and not necessarily from the author of the derived work.

    BSD is the second most free. It's like public domain, with some credit and advertising clause.

    GPL is restrictive.

    Basically the original developer gives up some freedoms, to protect the freedoms of the intended users.

    GPL is mostly free in cost. The GPL doesn't require the author to give the program for free, instead it allows the users the freedom to share with others.

    You have strict rules on how and what you distribute. Also, you now have rules on what types of hardware you can develop it for (re: Tivo).

    The reason why I like the GPL is that I want to give my software out for free, and I like the restrictions that force others to contribute to the maintenance of my works. Not many boilerplate licenses have this feature and the acceptance by the community at large (thanks to the marketing done by FSF).

    This is the irony that is GPL. It really has the most restrictions of most developer license, but people still see it as more free because of what it allows the end users.

    However there are cases where GPL fails such as the iPhone SDK. There is the ability to share code with the developer community, and the ability to give the working applications to the end users for free. Unfortunately the restrictions dictated by the GPL may prevent any iPhone software (outside of unlocking) from being GPL.

    GPL is just a generalized free software license, and is really not meant to be used in every situation. I know the FSF don't like to hear this, but there are more appropriate free licenses out there. Just pick the free license that best suits you and the distribution system that you want to utilize.

    Just because it's not GPL compatible doesn't make it bad...

  • by drerwk (695572) on Wednesday April 16, 2008 @12:38PM (#23093200) Homepage

    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.
  • by erwincoumans (865613) on Thursday April 17, 2008 @12:43AM (#23100690)

    GPL is not just incompatible with iPhone. (L)GPL is also incompatible with proprietary development environments on game consoles such as PlayStation 3, Wii etc (except for PS3 Linux obviously).

    Just use the Zlib license and feel flattered if people consider using your software. Even if they don't give credit. Even if they don't contribute back.
    Some will contribute back or give credit voluntary, even through they are not required by the license.

    You can publish your source code, just avoid re-distributing proprietary technology.

Old programmers never die, they just hit account block limit.

Working...