We’ve had an immense hubbub about the delay in the source code release of Honeycomb, which led to a storm of critique being sent Google’s way. Turns out there’s another company withholding source code, and this time it’s Apple. They have stopped releasing the LGPL source code for WebKit in iOS since iOS 4.3.0, released about 8 weeks ago. Turns out – this isn’t the first time Apple has refused to release (L)GPL’d code. It took them six months to release the required GPL source code for iOS 4.1.
iOS contains a number of open source components, with WebKit probably being the most user-visible of them. I’ve used the mobile browsers on Android (up until 2.2), Windows Phone 7 and iOS, and there’s no doubt in my mind that Mobile Safari is the most pleasant to use. Mobile Internet Explorer is certainly not as bad as some make it out to be, but good it is not. Android 2.2’s browser is just as capable as Mobile Safari, but it just doesn’t feel as smooth (on an HTC Desire).
Starting with iOS 4.3.0, Apple has ceased distributing the source code to the platform’s WebKit browser engine. This source code is licensed under the LGPL, and as such, there’s copyleft on it – we’re not talking a permissive BSD license here. Since iOS 4.3.0, released 8 weeks ago, we’ve seen several other minor iOS releases, but no source code.
“It cannot be a simple oversight, as multiple inquiries have been made to Apple by interested developers. However, no source code until today,” writes Harald Welte, “I think it is time that Apple gets their act together and becomes more straight-forward with LGPL compliance. It is not acceptable to delay the source code release for 8 weeks after shipping a LGPL licensed software. Especially not, if you have already demonstrated in the past that you are well aware of the obligations and have a process and a website to release the corresponding source code under the license conditions.”
I never really dove into this stuff, but as it turns out, this is not uncommon for Apple. It took Apple a whopping six months to release the source code for components in iOS 4.1 (iOS 4.1: September 2010 – source: March 2011), a lot of which is covered by the GPL. I found this startling; Google was open and honest about not releasing BSD code for now, and here we have Apple structurally refusing to release GPL code for six months, and not a peep anywhere on mainstream tech websites.
Jay ‘Saurik’ Freeman, the man behind Cydia, even believes that Apple will, eventually, find itself facing a GPL lawsuit. In an article on upgrading the iPhone toolchain, he said about Apple’s lacklustre approach to releasing Xcode’s gcc’s GPL code, “I wouldn’t be surprised at all if Apple ends up on the bad end of a GPL-related lawsuit”. Freeman believes that Apple never even released the source code to the gcc components in Xcode 2.5 (I couldn’t find confirmation for this though, so take it as-is).
I did not see this coming. I simply wanted to turn this story into a page 2 item, and while digging around for confirmation (you have to be very careful with these kinds of stories), I stumbled upon the other cases mentioned here. I was dumbfounded – I find a delay of six months in releasing GPL source code worth reporting on – especially if you look at the major uproar caused by Google not releasing the Honeycomb code (for now), which is BSD-licensed.
I’m still unhappy about the lack of a source code release for Honeycomb, but this Apple thing is just as bad. I’m just wondering why nobody seems to be reporting this.
If you ship LGPLed stuff you HAVE TO provide source code. That is what the license says, otherwise you are in VIOLATION and can be SUED.
If you ship Apache code, you CAN provide source code, otherwise you are just a little bit evil and hypocritcal in some peoples eyes, but they can’t do shit about it.
Totally agree
It’s probably worth pointing out that you only HAVE TO provide it if someone requests it. You don’t have to make it publically available on your Web Site or anything. But if someone writes you a letter or something, asking for it, you have to give it to them. And of course, you can’t stop the person you gave it to from publically publishing it on a Web Site.
> this isn’t the first time Apple has refused to release (L)GPL’d code
As noted above you don’t have to publish the code, just make it available upon request.
Has any one actually made a request for the code and been refused? Like all Apple storm in a teacup issues this will no doubt be rectified at some point and everyone can stop panicking.
People asked for it, but Apple refused. They just didn’t get sued yet.
I have asked for a replacement for a faulty induction cooktop we were supplied – that was six weeks ago and it hasn’t yet arrived. That doesn’t mean I’ve been refused, it simply means there are internal processes they need to follow in order to make it happen. Unless there is a timeframe for the supply of the source code specifically quoted in the license Apple will simply argue that they’re following their internal procedures for such a release.
As mentioned in another post this is a storm in a teacup – no more than Thom trying to muddy the waters.
The difference between this and the Honeycomb release is that Google have openly stated they are never going to release the source code in it’s current form – in other words they are NEVER going to release the source code for what’s running on devices that have been sold sporting that code and which claims to be opensource, which makes that situation FAR worse than this one despite the way some of you want to try to colour it…
As always, ignoring the big picture, focussing on the little things you can somewhat refute. What about the six month delay in the iOS 4.1 code? What about Xcode 2.5’s GPL code never being released at all?
Apple fanatics and double standards – like horse and carriage.
Edited 2011-05-07 13:08 UTC
Stop feeding the troll.
Thom, you are really funny sometimes (or every time when you talk about Apple…)
Edited 2011-05-07 14:06 UTC
How’s WebCore-955.66 (coming soon!) under LGPL anything but a violation? If you distribute the object code without offering the source you loose the right to use and distribute the code(LGPL is revoked).
So who asked and why was it refused?
I’m guessing then that the answer is, nobody did. Your rant has about as much substance and truth as, “Linux stole Microsoft’s code”.
But hey, unsubstantiated rants are du jour in these parts, aren’t they? 😉
apple screwing with OSS rules again?
next… movie at 11
it is bigger news to see people who believe in apple being anything OSS friendly didn’t go dodo way and extinct
Yep.
There are still some people that think of good and bad corporations.
Microsoft, Apple, Google, Intel are on the game for the money. Their affiliation with opensource is only done when it brings them more money.
Or do you think any of the others would be better than Microsoft, if they got the chance to have the same market size?
“They have stopped releasing the LGPL source code for WebKit in iOS since iOS 4.3.0, released about 8 weeks ago. Turns out – this isn’t the first time Apple has refused to release (L)GPL’d code. It took them six months to release the required GPL source code for iOS 4.1.”
LGPL is not GPL. They are two different licenses. Don’t mix them up. Neither is ‘ice cream’ plain ‘ice’ only because it’s got ice in its name.
Yes, obviously they are different, but they still have the same requirement to release source code with distribution of binary releases upon request. They only differ on how much source code must be released.
The only difference are two sentences which related to the concept of “linking” and “whole works”. The basic terms are identical.
A small correction – Google did releases the (L)GPL parts of the Honeycomb stack. They delayed the release of the full AOSP build, but they are clearly in the green as far as (L)GPL compliance goes. IE they released the source to the Honeycomb kernel.
Apple, however, is in clear violation of the (L)GPL. Jobs is too busy convincing people they invented webkit: “Apple even creates open standards for the web. For example, Apple began with a small open source project and created WebKit, a complete open-source HTML5 rendering engine”
No, this is far worse than the Honeycomb case. They not only are in violation of the GPL, they also show great disrespect for the hard work of the KHTML team at KDE, forgetting that the first release of Safari was based on an almost verbatim copy of the entire source tree of KHTML.
Edited 2011-05-07 06:37 UTC
Please go to webkit.org, the KDE/KHTML team is clearly credited in the very top of the page. Even though it is a prehistoric project branch.
Now go to chromium.org that actively uses WebKit. They apparently aren’t happy to say they are using Apple’s efforts, nor KDE’s. Even on their blog post they didn’t mention “Apple” or “KDE”, let alone “KHTML”. http://blog.chromium.org/2008/09/chrome-3s-webkit.html
But why would they? Did Google make any Android/Chrome/Chromium presentation or speech where they credited specifically and openly Apple or KDE for the WebKit/KHTML project?
Nope. To them it’s completely homeless and the only brand they like is Google. Google this, Google that.
WTF? The linked blog talks about Chrome ffs, not webkit. They mention that it uses webkit and they link to the webkit website, but the post is about Chrome – which is written entirely (and opensourced) by Google. Jobs, however, is talking about webkit.
In fact, Google starts their announcement with this:
Our recent launch of Google Chrome simply would not have been possible were it not for the awesome WebKit rendering engine and the amazing team behind it.
Webkit and “amazing team” are hyperlinks, the latter linking to ALL contributors. What the hell are you blathering about? (and I hope you realize the difference between a browser and a rendering engine).
Edited 2011-05-07 18:57 UTC
Please, read carefully. I said specifically Apple and KDE/KHTML because you specifically said great disrespect and forgetting. And talk about current official project’s website. So Jobs said they used “open source project and then made it webkit”, well they did that and still who gives a ***. Certainly a major heart attack statement. WebKit is branched from KDE/KHTML and they do credit them very properly on webkit.org.
Does Google say they use “Apple” or “KDE” code? In the blog post? Maybe on the project’s website? Nope. But apparently Google writes stuff “from scratch”, so now I get it. Now I also get why Google won’t opensource Honeycomb.
PS. Even the first comment on the blog post did remind them of crediting KDE/KHTML. Which of course they should’ve. But that’s not how Google rolls. Which is sad. But I don’t give a c**p. You do. Apparently just not in Google’s case.
I guess bigger problem is Jobs. Let’s all cry because he said something, someday ago. He says something pompous so rarely.
Get a grip man. Cheers.
The problem is that you’re making an inappropriate comparison (which the original poster tried to point out above). Webkit is a rendering engine, Chrome is a browser.
Google never claimed to create a new rendering engine, because they clearly didn’t.
Webkit, in contrast, is a project directly forked from an open-source rendering engine. Webkit is essentially a modified KHTML, where Chrome uses webkit as a library; different situations entirely.
Also, if you go and look at the contributors to Webkit, about a third are Google employees. So Google does openly support Webkit.
Thank you saynte. Yeah, that’s exactly my problem – the two arguments do not fit. On one hand we have a claim that “Apple started with an open source project and created WebKit a complete open-source HTML5 rendering engine”. That is a blatant lie – and this is not the first time this happens. Can’t find the other quote, but I recall them saying that they “opensourced” it – while in fact WebKit (when released, basically KHTML + a few Apple patches) was already GPL, and Apple had no choice but to comply with its terms. One of the reasons I mention this that by now, among fanboys, it’s a well known fact that Apple gave the world WebKit – which is total BS.
On the other hand, we have an announcement by Google about their own browser, every single bit written by Google employees that happens to use WebKit as its rendering engine – and as saynte points out (and as I hinted at in my first reply) WebKit is a library. Rendering engines can be swapped out in all modern browsers. Case in point is Google Frame, that swaps out the rendering engine under IE, making it use the WebKit engine instead. Moreover, Google itself is a major contributor to WebKit, but they don’t claim they have created it.
I hope this clarifies it for you. And for others who say Apple gives proper credit to KHTML and KDE – yeah, they do in documents only geeks read, but that doesn’t get any press time. An open letter written by Apple’s CEO does… The result? Apple giving Webkit to the world has become a well known “fact” among fans, and this is becoming harder and harder to dispute. I even heard people say that Google couldn’t build Chrome without Apple. They certainly could. NOKIA built their maemo browser on KHTML before Apple forked it. Apple is just one among many contributors to Webkit, and certainly not its creator. And to get back to your google rant – again, that blog you link to is about Google’s browser, which was written 100% Google, not WebKit (although they do say a big thanks to WebKit in their opening line).
Everyone knows the story. I just don’t agree with your point of view. WebKit today is diversified from KHTML, based on years of development pushed first by Apple (with lots of other contributors coming after opening it), with completely new code, etc. It’s not the good old KHTML anymore. And it was pushed (and probably still is) mainly by Apple. More so KHTML AFAIR still exists as a completely separate and autonomous engine, I think it may even still be developed, but I’m not sure ATM.
Second thing, Google sports WebKit for Chrome(ium) and that makes it a vital part of the browser. You know perfectly well it’s the lungs and heart of Chrome(ium) and they won’t drop it. They brag about how they wanted to write their own engine but used WebKit instead. Sure they don’t have to use it, but they do and they will, so they incorporated the code in a way. If you stick to crediting KDE/KHTML for WebKit and everything related (which WebKit does), then why isn’t Google crediting those guys anywhere? Where is the credit?
All I’m saying is that Apple/WebKit (think of them what you wish) at least credits the original team – the KDE guys who clearly made today’s WebKit possible. Not in some internal docs, but on main website, first place you go. A simple thanks from Google would suffice, but it’s not there. It’s not anywhere.
Even worse – Google likes “WebKit” and they credit “WebKit”. If today they have 1/3 of contributors, I guess the story is that Google doesn’t need to credit KDE/Apple because Google thanks Google. For people who don’t know the whole picture, in a year or so, it’ll seem like Google indeed does thank Google for “making all this possible”. I’d be afraid of that, not some Jobs usual propaganda who everyone is used to.
Edited 2011-05-08 11:38 UTC
Hah, ok, I give up. I’m still kinda amazed of how you can spin this:
Our recent launch of Google Chrome simply would not have been possible were it not for the awesome WebKit rendering engine and the amazing team behind it. We want to take a moment to recognize their excellent work (past and present!) and talk about how we arrived at incorporating WebKit into Google Chrome. By the way, that excellent web inspector tool is actually a component of WebKit 😉
into Google claiming to have created WebKit. The amazing team links to all contributors, including NOKIA, APPLE, the whole KHTML team, everybody. Yes, the list includes Google (in fact, Google now has the largest number of committers) – but they specifically mention the excellent work of the whole team past and present. I think that this announcement about Chrome is perfectly reasonable, and it’s nowhere near the same thing as Apple’s CEO claiming that Apple created and opensourced WebKit. Yet you are able to spin it in such a way to claim Google does the same. Nice!
I heard that Apple even invented BSD and Unix. FreeBSD guys who copied the code from Apple have to thank them.
Didn’t Apple invent the iWheel, iFire, iCar, iLight iBulb and iToilet iPaper, too?
Edited 2011-05-09 13:22 UTC
I reckon not every company has released source code right away, They usually take time somehow. The post says Apple put up “Coming soon” on their website. If they are going to release source code, it won’t be much problem at all AFAIK. We will see.
Six months is a long time in computer area, which might enable real competitive advantage.
Also they need to release the current source code, it’s not like they’ll have time to clean it up. If they need to clean it up – or something similar – then they’re already in violation.
I think you don’t get it. As someone else mentioned already large corporation has to do some internal process before releasing something so they might take time before releasing the source code. So it could be that in this case I mean that nothing more nothing less. I didn’t say six months is short period time in computer area. I do not know what is holding back the source code release so it is too early to say that they are in violation. You are going too far too early I think. Let’s take a break and see what it gonna happen.
http://www.opensource.apple.com/
It’s right there.
http://www.opensource.apple.com/release/developer-tools-25/
Even up to Xcode 4.0.
http://www.opensource.apple.com/release/developer-tools-40/
Here is the status on WebCore/JavascriptCore [the only BSD/LGPL parts of WebKit]
http://www.opensource.apple.com/release/ios-43/
Hi,
As far as I can tell (and IANAL); while GPL says you have to distribute/provide source code, it doesn’t say anything about “when” or how quickly.
-Brendan
I believe that I read somewhere that there is a margin of 120 days after the release of the binary. I don’t know if this only applies to GPL LGPL or both.
I know that this stunt is regularly pulled by htc when releasing the android kernel.
That 120 days number is totally made up by some company to attempt to delay the release of GPL code.
Relevant: http://mjg59.livejournal.com/135665.html
I’m sure no one probably cares, OS6+ of the Blackberry browser is based on Webkit and is available for download at: http://us.blackberry.com/apps-software/blackberry6/browser_open_sou…
Also there is an acknowledgement page in the About section of the Options application on devices that credits “the WebKit Open Source project (including the KDE project) and JavaScriptCore Project (including portions from the KJS project)” and lists by name about 100 contributors.
the Symbian/Maemo browsers based on WebKit publishes the source at http://wiki.forum.nokia.com/index.php/S60WebKit
Okay, all of the other Google vs. Apple, Webkit vs. KHTML, etc. aside, the point that was being made is this:
1. LGPL and/or GPL-licensed code isn’t being released as required (read the license text, there’s no ‘slack time’), which means
2. the licenses are being violated, which means,
3. the violated company should be taken to task for their violation.
Is Google in violation by not releasing Honeycomb source when Honeycomb products are being released? Yes.
Are licenses therefore being violated? Yes.
Are they being taken to task? Yes (though admittedly it’s only taking the form of media scrutiny so far rather than litigation)
Is Apple in violation by not providing LGPL source material for iOS? Yes.
Are licenses therefore being violated? Yes.
Are they being taken to task? Not really, at least nowhere near what Google has experienced.
There’s no need to debate which of the two is right and which is wrong: they’re both wrong, and to roughly the same reasons and degree. What IS debatable is whether or not Apple is being treated with the same scrutiny.
Actually I believe that Google didn’t violate any licenses.
They kept their own code back, which is perfectly legitimate, while still releasing the kernel modifications as required.
Hmmm… that may be, it’s been a while since I last read up on it and I might be forgetting details. If you’re right, then we’re seeing Google being bashed for a far less serious offense while Apple is getting off relatively scot-free.
It’s correct. The GPL code (Linux kernel) for Android is available, the BSD-licensed code isn’t – which is perfectly acceptable.
Thanks sparkyERTW for your post. I understand more about this.
I think that on this kind of cases there are always two questions that need to be asked.
1) Is it breaking the legal rules of an OSS license?
or
2) Is it legal but it is a shift from a behavior that the vendor used to have. ?
Question 1 is almost easy to find an answer.
On Question 2 what may happen is that the author of a software that had developed 100% of the code release it under a OSS license and for the next release he change it and decide not to open it (the new release). In that case (if he is the author of all the code) it is legal, but it is change of behavior that people sometime doesn’t like.
But on this case both are breaking the rules so it is…
!!! SOURCE CODE OR LAWSUIT !!!
This is Apple we’re talking about here. They’re cool!
Cool to follow the license? But court might warm them up
I see Apple moving away from open source altogether. Evil empire #2 (#1 being MS) is going to be even more evil
I just saw this update on Slashdot.
“Update: 05/09 21:21 GMT by S : Reader Shin-LaC points out that Apple has now released the relevant source code.”
http://lists.apple.com/archives/darwin-dev/2011/May/msg00016.html
ouch… I didn’t notice this posts on OSNews
http://www.osnews.com/comments/24717
Apple Releases iOS 4.3 WebKit Source, Still Not LGPL Compliant…reading…