8 ms·
No GPL Apps for Apple's App Store
- alanh 16y agoAnother reason to go BSD over GPL unless you really do care about the GNU project more than shipping code & solutions.
- sedachv 16y agoI drew exactly the opposite conclusion. Go with BSD if you want Apple to steal your code and contribute back nothing to the community (how much have they given back to Free/NetBSD?).
- alanh 16y agoDarwin? How is it stealing if it's open source, and the end result is the best desktop OS ever created? Sheesh And Apple's work on open source Clang/LLVM and WebKit has been quite significant has it not?
- morphir 16y agoit has. But I think its important to point out that freebsd and the bsd-stack is not in any way in competition with osx. Apple develops products, and earns money by creating products that average joe can operate with ease. This means that Apple is able to commoditize off open source, by taking and contributing back to their projects of interest. Free Software Foundation have their understanding of what freedom is. Unfortunately the fight for freedom has resulted in a rather complicated GPL v3 opposed to BSD-licenses which demand that your respect copyright and by that restricts you less than the GPLish licenses. It's ironic, but BSD offers more freedom than GPL. Also, it's a shame that VLC - being the most kick-ass videoplayer today - is hindered by legal issues. As a funny sidenote, one could say that if you choose GPL you need to consult your legal-department. But if you choose BSD you don't even need a legal-department.
- ajross 16y agoWebKit is a descendant of KHTML, and thus LGPL by requirement. I have a hard time believing Apple would have ever opened this technology had they developed it internally.
- alextgordon 16y agoThat seems a little unfair and speculative. Maybe they would have, maybe they wouldn't've. All we can say for sure is they did.
- protomyth 16y agoClang? OpenCL? I think there are counter examples.
- sedachv 16y ago"Open source" is a misleading term, please stop using it: http://www.gnu.org/philosophy/open-source-misses-the-point.html http://www.gnu.org/philosophy/open-source-misses-the-point.h... As pointed out in other replies, Apple is working on clang because it doesn't want to deal with the GPL (unless you own Apple stock, you're the one losing because of this decision), and WebKit because it's derived from LGPL code. How much work is Apple putting into making Darwin a usable Free Software OS? Versus how much work have Red Hat, Canonical, Novell, IBM etc. have put into making Linux available in a number of different, free distributions? The reason all has to do with GPL and copyleft. There is very little incentive for companies to invest in BSD code, and no disincentive for them to steal it. If Linux wasn't GPLed, it wouldn't be where it is today. There's nothing wrong with what Apple is doing. However, if you think that somehow Apple releasing some of their code under the BSD justifies restricting their end-users to their locked-in App Store and their fight against the GPL, there is something morally off with your thinking. Claiming that this makes the BSD a better choice than the GPL shows that you don't understand that Apple doesn't care about you and your open source; they'll take whatever is convenient. You're the one losing out, and you're justifying it to yourself as a good thing.
- alain94040 16y agoApple will take whatever is convenient. You're the one losing out I know it's a strawman argument, but if you feel superior to Apple, how come you didn't come up with the iPhone innovation? Saying Apple doesn't care about me when they obsess about designing amazing products that blow away anything that existed before is a little big disingenuous.
- buster 16y agoUhm.. How does it feel to be trapped in Job's Reality Distortion Bubble?
- alain94040 16y agoIn your reality, do all smartphones have touch interfaces? That's pretty much the definition of a revolution: when you can clearly point to a before and an after.
- X-Istence 16y agoThis keeps being brought up, the whole apple not contributing back to FreeBSD, but I would urge you to please look through FreeBSD's CVS history to find all of the places that Apple HAS indeed contributed back (I've made several comments with links to such sources on HN before). Apple also has an entire website dedicated to the various pieces of source code for their OS, and other tools, and are actively developing clang/llvm (they hired the creator) which is under a BSD license ... WebKit is also a thriving open source implementation of a rendering engine for a browser and is actively used by various different projects. Your comment brings absolutely nothing to this discussion other than unsubstantiated claims and misinformation.
- saurik 16y agoAs somebody who actually has to use Apple's "open source" website, you have to realize that the code for the projects listed there is often: a) out of date or unrealized (for which they are entitled to do with BSD code, but when it comes to GPL I file complaints) b) redacted and uncompilable (they purposely remove source code for specific targets that is still listed in the build environment, or hold back critical header files for dependent libraries) c) limited in scope (they release WebCore, because it is LGPL, but they actually /don't/ release a lot of WebKit) Also, it is quite clear to everyone involved that the reason that they are actively developing Clang/LLVM is so that they can avoid gcc 4.3+, when it went GPLv3. It was hard enough for them before: gcc was the one place they have been unable to redact and hoard their ARM contributions, but with GPLv3 the situation becomes untenable for them. So, since then, Apple's Xcode compiler has rapidly slipped out of date, and now they are forced to take over development of a BSD project just to stay competitive. Frankly, this is actually a /win/ for the GPL: despite Apple's claims, Clang/LLVM is still very very far behind GCC in terms of correctness and compliance (certainly with recent specifications, like C++0x), which has made Apple's less-free choices result in an increasingly "dispreferred" deployment target for many projects.
- vasi 16y agoI mostly agree with you, but you're incorrect about WebCore/WebKit. For the first couple of years of WebKit development, Apple did indeed only release WebCore, but since 2005 all of WebKit has been released. Otherwise, how could Gnome (Epiphany), KDE (rekonq), Chromium, etc be using it?
- sad 16y agollvm, clang, webkit... Directly benefiting FreeBSD: http://wiki.freebsd.org/BuildingFreeBSDWithClang http://wiki.freebsd.org/BuildingFreeBSDWithClang They've contributed infinitely more than "nothing" back. Literally...
- buster 16y agoBecause they have no choice..
- jsz0 16y agoRead the BSD license. They definitely have a choice.
- buster 16y agoFine for my downvotes. So many fanboys here, it's sickening. If you would have read the thread you may have guessed that i meant: - Webkit = LGPL = No Choice - LLVM because gcc is a no go (GPL) Now, here some downvotes too, because i insulted your oh so holy Apple company, boohoo..
- redial 16y agoThese may be old, but help to get some perspective. http://lists.freebsd.org/pipermail/freebsd-chat/2004-July/002483.html http://lists.freebsd.org/pipermail/freebsd-chat/2004-July/00... http://www.trollaxor.com/2004/02/thank-apple-for-freebsd.html http://www.trollaxor.com/2004/02/thank-apple-for-freebsd.htm... As mentioned in the first link by Paul Robinson, "If FreeBSD wanted more than attribution, perhaps the choice of BSD license was a bad idea. :-)"
- cperciva 16y agoFreeBSD developer here. Apple contributes back lots. We're very happy that the BSD license has allowed Apple to use our code.
- mcantelon 16y agoIt's not about advancing the GNU project as much as advancing the values expressed in the GPL: allowing your software to be built on by those who agree to return the favor. There's nothing wrong with reciprocity.
- hrabago 16y agoThe issue isn't about being able to build on top of what you built. This can still be done by open sourcing your app. The issue is distribution. Those people may not be able to redistribute the app, but they can still contribute code.
- tbrownaw 16y ago> values expressed in the GPL: allowing your software to be built on by those who agree to return the favor. GPL3 has gone far beyond that; instead of just requiring that the software be usable as a starting point and building block for new work, it now also mandates that it be user-serviceable. You don't just need to be allowed to modify the tivo software to make your own dvr, now you also need to be able to modify the software in-place on your existing device.
- rbanffy 16y ago> don't just need to be allowed to modify the tivo software to make your own dvr If you can't do that to your TiVo, is it really yours?
- tbrownaw 16y agoThe part you quoted isn't about doing things to your tivo. For the part that is, are all of my gadgets that are built with non-standard screws also "not really mine"?
- rbanffy 16y agoWith a TiVo (as with an iPod, a VCR, a PlayStation) you are either pretty much happy with what it does or royally screwed (with non-standard screws). If you are happy with your TiVo, then good for you. If you are not, you cannot bend it to your will. It would be much better if users could do that, but, unfortunately, we are not that lucky. You can always sell your TiVo and build your own DVR.
- rbanffy 16y ago> Another reason to go BSD over GPL Great. This way you take away freedoms from the users. > unless you really do care about the GNU project more than shipping code & solutions. No. You chose GPL when you really care about the freedoms your users deserve.
- Stormbringer 16y agoThe GPL does not give a rat's patootie about users. The GPL is designed to ensure the maximum freedoms of developers.
- Stormbringer 16y agoIf you really want to get on your high horse about companies not contributing back to open source, you need to stop ignoring the elephant in the room (Google) and you need a bigger horse. But, this is just another prime example of the bizarre logic of Apple bashing. Never mind that Apple does more to give back to open source community than most, lets ignore the facts and bash Apple. Let me give you some more: Greenpeace bashing Apple even though Apple was actually doing more to reduce environmental impact than any of the beige box companies. Greenpeace's logic was that even though the beige box companies were worse, they had promised to at some distant future unspecified point in time take unspecified steps to at that point be better than what Apple was today... Apple of course said no such thing about their future plans... so Greenpeace was puffing on the vaporware announcement, and bashing the company that was actually taking real steps. Incredible. Adobe bashing Apple for not putting flash onto their phone - when no other smart phone in the world ran flash... and it would be 3 years before a serious full implementation would come out from a competitor (and lo and behold it was an awful user experience and it killed battery life). --- Frankly, as a developer there are an absolute truckload of things to complain about Apple that get ignored, but the ones people pick to focus on are just bizarre.
- steauengeglase 16y agoCan't it be re-released under dual licenses? There seems to be plenty of other software out there that has done this.
- alanh 16y agoIt depends on which license the code is in already and what each contributor allows. If you own the copyright, completely, you can license under virtually any license, ever, at any time. Period. But if you have an open-source project with tons of contributors, well, they licensed their work under the terms of a specific license. And in the case of the GPL, it explicitly means that their contributions CANNOT be redistributed under ANY terms that conflict with the “freedoms” guaranteed to end users, etc., by the GPL. However, you can at any time release a BSD-licensed work under the GPL. This is part of why the GPL is sometimes called “viral” — once it touches you, it’s hard/impossible to escape, see? So what would have to happen would be for everyone who ever contributed to VLC to say, “Okay, I’m chill with BSD,” and the code contributed by anyone who refused to do so would need re-written e.g. in a cleanroom to avoid copyright infringement. :-/
- duskwuff 16y ago> So what would have to happen would be for everyone who ever contributed to VLC to say, “Okay, I’m chill with BSD,” and the code contributed by anyone who refused to do so would need re-written e.g. in a cleanroom to avoid copyright infringement. :-/ And since one of the VLC developers has already invoked the GPL to prevent the distribution of an iOS version, the same developer would probably block BSD relicensing for the same reason.
- jarin 16y agoI believe that in order to do that, they would need to aggregate the copyright or get permission to change the license from each contributor. From what I understand, most projects that have dual-licensed have required contributor assignment of copyright from early on. Edit: Here's a good overview on it http://opensource.com/law/10/9/copyright-aggregation http://opensource.com/law/10/9/copyright-aggregation
- 16y ago
- blasdel 16y agoThis is much more about a single VLC developer spitefully griefing the others than the GPL. The only reason he has grounds to send C&D letters to Apple is because he holds copyright over his contributions to VLC. The other developers don't give a shit that the Apple-distributed binaries aren't redistributable by default, given that the iOS port is still fully open source and is trivially redistributable/compilable on jailbroken devices.
- prodigal_erik 16y agoI have trouble believing an entire project is using the GPL yet almost nobody cares whether most users are getting stuck with unmodifiable binaries. And what about reused libraries? I don't believe I have any code in VLC, but if I did I'd be livid if they decided it'd be okay to contribute it to Apple's dystopian nightmare against my express wishes.
- tbrownaw 16y ago> I have trouble believing an entire project is using the GPL yet almost nobody cares whether most users are getting stuck with unmodifiable binaries. If a project is initially started under the GPL, it's stuck that way forever even if they get all-new developers after a while who don't care. If a project is started by someone new to the area, the FSF and supporters are vocal enough that there's a decent chance they'll pick the GPL by default without really considering it. If a project links to a GPL library, there's a decent chance they'll bow to pressure of the FSF's overbroad redefinition of "derivative work" and (re-)license their project as GPL regardless of their own preferences. It's all quite self-reinforcing and doesn't require reasoned intent from any of the participants.
- Stormbringer 16y agoI agree that it sounds more like one developer trying to pee in the porridge pot than a genuine licence problem. For all the people screaming about how GPL forces X, Y and Z, there is a really simple solution that has been tried and proven to work before: just DUAL LICENCE A dual licence allows you to work inside the GPL walled garden, and also outside of it in the real world. You can literally have the best of both worlds. It preserves maximum freedoms for the users. What it doesn't do is advance the agenda of the GPL, which is to create a self contained and self sufficient ecosystem consisting solely of the GPL. So when dual licencing you can say, well, we're not at that utopian programmer's paradise yet, so it doesn't matter, but the less commitment people have to a strong GPL, the longer it will take to reach that ideal world.
- pwpwp 16y agoUser-hostile is what it is.
- Stormbringer 16y agoNo, it's just programmer politics from some douchebag with an axe to grind. Frankly, the entire open source community should pat itself on the back that this sort of thing doesn't happen more often. People being what they are, this is a genuine Christmas miracle. What he should do, is pull a Theo and go off and fork the project, instead of trying to ruin it for everyone else.
- Dylan16807 16y agoTo me this seems like a failure of the simplicity of the GPL, but with no easy fix. Apple doesn't want to restrict the program to anyone, they just want to have their distribution process restrictive. If there was a way to proxy the supply of the restriction-free binary and/or source code of the app there wouldn't be a problem. The app submitter or VLC devs or another interested party would step up to host.
- pornel 16y agoThey want to restrict the program — Apple forbids private APIs, system modifications, kernel extensions, auto-updates. Whether you need those things might be debatable, but Apple doesn't give you freedom to have them, and adds DRM to prevent you from modifying the app.
- Dylan16807 16y agoThey want to restrict the syndicated developer. But the program you download is the same open-source app you signed up for. DRM is indeed an issue, but that goes toward the tivoization clause that VLC explicitly did not adopt.
- spiffworks 16y agoThis is as it should be. You cannot create an ecosystem that is diametrically opposed to every principle the FSF has ever stood for, and then expect to be able to distribute GPL licensed code from it. I'm actually glad to see the GPL working.
- jrockway 16y agoExactly. I contribute code to GPL-licensed projects, and I don't want the users of my code to be unable to fix it; it's simply not fair to distribute software that the end-users are not allowed to tweak and improve. When you distribute software on the App Store, the users get the changes I made, but I never get the chance to get changes that they would have made. Hence, a license that prohibits this unfairness is necessary, and the GPL fits the bill. Don't get me wrong, I am fine with software that is BSD- or MIT- licensed. But I think for the best culture of contribution and sharing, you need to clearly set your expectations in the form of a license, and the GPL does exactly that. If Apple wants the world of GPL'd code to be available on their devices, the solution is simple -- allow side-loading.
- cd34 16y agoWhy are people that purchase/download your GPL app not able to get the code or share changes? All one must do is provide a method for the client to get the code through whatever means. The section deals with third party distribution of binaries and obtaining the source code from the author indirectly. There is nothing stopping one from getting hold of the SDK and compiling the code you have distributed and installing it - they don't even need a developers account. They can't distribute it without paying Apple the developer's fee and submitting it to the app store, at which point it might be considered duplicate functionality, but, that is a separate argument. Additionally, a client that changes your app is not required to send you the changes back unless s/he distributes it. Modifying it for his/her own purposes doesn't mean you are entitled to a copy of their changes.
- schrototo 16y agoWell, actually you do need to have a developer account to install builds on any iOS device. The 99$ fee is necessesary even for installs on your own device. I guess they have their reasons for not just opening up provisioning for everybody, although doing that would sure help them win over the open source crowd (not that they really care about that in any way).
- cheald 16y agoThis is a good (but painful) thing. The GPL is designed to counteract the sort distribution lockdown that the App Store represents, and it's doing its job here. The GPL is diametrically opposed to the App Store ecosystem (buy once, reuse/modify never), and it's a good thing that it's being enforced, even if it does mean the loss of quality software on the iOS platform. This really does underscore, however, how important it is to license your code carefully. If you want to make it completely free (as in, "I don't care what you do with it" free), use BSD. If you want to make sure that your software is never used restrictively and that it continually promotes the free software ethos, then GPL is a great tool.
- wzdd 16y agoI'm not entirely convinced about this, so perhaps someone can help me out. If I contribute to a BSD-licensed project but don't assign copyright, wouldn't that give me the right to ask Apple to remove the project from their store on copyright grounds, assuming somebody submitted it there? What does the GPL have to do with it, in general? (I realise the specifics of this case are slightly different.)
- protomyth 16y agoIf a project is under the BSD and you contribute code under the BSD, you gave rights via the license. If you change your mind the you poison the BSD licensed project. Why contribute?
- wzdd 16y agoThis is a good question to ask of a rational, logical person. However, people change their minds all the time, so I'm interested in the legalities: could a contributor to a BSD project get applications taken down? Assume the contributor is malicious, insane, or just mercurial.
- X-Istence 16y agoNope. You have given away the right to make decisions on who can use the code when you assigned that license to it. Could you take said code, remove the license and make it available commercially? Sure, it is your code, but any older or previous copies are still available under the BSD license.
- billpg 16y agoI've made a couple of video clips and published them under cc-by. Say someone (A) wanted to use my clip in a bigger project, but couldn't give me attribution because someone else higher up in the bigger project (B) insists on not crediting any outsiders. Would it be wrong of me in this hypothetical to demand that I either be attributed or they don't get to use my clip? Should I even feel guilty? Bill, like anyone's going to want to use my clips of ducks quacking or sword waving.
- drdaeman 16y agoIt's sad how many developers use /L?GPLv[23]/ licensing for their software without actually understanding what those licenses are about. Then crying out loud about "FSF destroying communities" and insisting on "oh, just don't tell anyone about GPL incompatibilities here, because distribution is more important." If they consider an ability to ship the software more important than users' freedoms (in GPL sense), they should've been using appropriate license. I'm not saying GPL is a good or bad choice, but talking about being responsible in (licensing) decisions and statements.