Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

[ Create a new account ]

iPhone SDK and Free Software Don't Match

Posted by CmdrTaco on Wednesday April 16, @11:26AM
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

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • by zappepcs (820751) on Wednesday April 16, @11:29AM (#23091198) Journal
    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 :)
      • by DECS (891519) on Wednesday April 16, @08:39PM (#23098298) Homepage Journal
        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 [roughlydrafted.com]
  • by erroneus (253617) on Wednesday April 16, @11:29AM (#23091202) Homepage
    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!
  • A new low (Score:5, Funny)

    by Ethanol-fueled (1125189) * on Wednesday April 16, @11:33AM (#23091280) Homepage
    "...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 ;)
  • by nweaver (113078) on Wednesday April 16, @11: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 nweaver (113078) on Wednesday April 16, @11: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 kithrup (778358) on Wednesday April 16, @12:19PM (#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.

  • Enough said really, why should everything strive to be GPL compatible? I've often wondered this in the past when <Insert Random Project Here> 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.
  • 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 SimHacker (180785) on Wednesday April 16, @12:03PM (#23091796) Homepage Journal

    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

  • by w3woody (44457) on Wednesday April 16, @12:04PM (#23091816) Homepage
    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 [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.

    • by Dionysus (12737) on Wednesday April 16, @12:45PM (#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 gEvil (beta) (945888) on Wednesday April 16, @11:33AM (#23091266)
      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...
    • by EricR86 (1144023) on Wednesday April 16, @11:44AM (#23091502)

      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.

        • by voidptr (609) on Wednesday April 16, @06:19PM (#23096538) Homepage Journal
          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 [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.