I don’t like when companies over generalize. So, when iD CEO Todd Hollenshead made the following remarks, I got a little ticked. Basically, iD is asserting that Quake ports to iPhone must be sanctioned by iD, in order to be released:
“Hollenshead informed us that ZodTTD’s port would be illegal and not sanctioned by the company and, as such, not allowed in the App Store.”
Hold the phone. iD releases the full source of Quake onto the web, under the GPL. A developer then ports to iPhone, and iD calls Apple to halt its release. Apple, appears to oblige.
Now, before you pick up a pitchfork and charge towards iD’s headquarters… there are a few things I’ve discerned are probably going on here. I’m basing these on my understanding of GPL, and a bit of common sense.
I suspect that the developers of these Quake ports are trying to charge for them. An iPhone OS port of Quake takes a lot of time to perfect, and make App Store-polished. That does require the approval and consent of iD to do.
And, that also explains why iD hasn’t been sued yet. If iD were to halt a port of Quake onto a particular device (iPhone), but approve of ports for everything else, that would be a violation of the GPL for which it was originally licensed. In short, iD can’t put the genie back in the bottle. The author of the port would have a case against iD for intimidating Apple into halting the port, and violating the GPL to prevent the port’s release.
So, if it’s free, can developers push it through the App Store? Maybe. In order to be assured legit status, the application probably would have to come without any maps. Those maps could then be downloaded from iD’s source/demo after the application has been installed. This would also allow for the user to install other mods and maps themselves (much like many App Store games offer already). Even though maps may be included with the source, iD could assert that they were just examples for the source code to be used with… that would be a cloudy argument at best though.
And, finally, the argument of the trademark on Quake. You can’t say software if free for use under GPL, and not grant some limited use of the trademark. Might the app have to be sold under a different name? Maybe, I would aruge that it doesn’t. Still, even in the worst light, the port would be allowed to refer to itself as a port of Quake in its description.
Still, the moral of this story is, bad iD. Don’t make broad generalizations about your intellectual property. One, the market will correct any lies of omission. And, two, you’ll be fingered for intentionally leaving it out.
But, in all of this, you can start to see why we at MechaWorks are only working on air tight applications, that are locks to be posted on App Store. We’d like to innovate, but Apple isn’t letting us. Without any assurance that our investment can make it to market, I’m not going to let my company burn money on the project. Especially in this economy…
Do I blame Apple for halting the app’s release? In this case, no, since there appears to be a valid reason. But, this is just goes to show you that you shouldn’t make the investment in a groundbreaking app, if you aren’t willing to let Apple rip the ground out from under you. If a company wants to sue a developer, Apple getting involved just leaves everyone with a bitter taste, consumers included.
I follow your logic on why iD might be able to get Apple to pull the software, but I believe it to be faulty. If everything for Quake was released under the GPL (this should include maps) then there should be no problem releasing the software and maps for sale in the App Store by anyone who wants to take the time to develop the App. Otherwise why can I take a copy of Linux that I burned straight from an ISO file and sell it legally to anyone in the world under the Ubuntu, Fedora, Slackware, Gentoo name, and keep 100% of the money without any legal problems but the same cannot be done with Quake which is released under the exact same license?
I think the problem is with Apple not wanting to stand up for the GPL license. It would make them look more open and then people would start to assume Apple would have some kind of future with their software/OS being full GPL. They have been secretly as bad as Microsoft as far as supporting the GPL and Open Source software. But that last part is just my personal conspiracy theory
Sean, the GPL does indeed permit a third-party to sell the game on the App Store.
However, at the same time, they must also post the modified source code online. The GPL requires any modified source code to be offered free of charge for download, if the code is then used in a commercial product (like, an app on the App Store). I don’t think any Quake-on-iPhone port has done this fully to-date (at least, not any that have been submitted to the App Store).
And, of course, that would defeat the purpose of charging for the game on the App Store. If one of these developers posted the source code (a requirement for GPL compliance), someone like me would offer a free version instantly on the App Store. It would just be a matter of putting the code into Xcode, and hitting the build button.
So, there is a financial interest in developers not offering the source code. Of course, at the same time, Apple does appear to have sound moral ground to block admission to the App Store because of that.
I think it would be very interesting if a developer posted online their source for Quake (on iPhone), and then submitted it to the App Store. If Apple then blocked it, there may be a valid lawsuit against iD for intimidating Apple, and violating the GPL.
However, I think right now those developers are probably trying to convince iD to embrace “their” version of Quake on iPhone, and take a royalty from the sales. I doubt iD is very interested, it wouldn’t be hard for them to port Quake themselves.
There is some (very serious) concern that the Tivoization terms in GPLv3 could block apps in the future from using GPL code on the App Store, but that probably isn’t involved here… Quake was sourced under GPLv2.
I forgot about the source code bit of the GPL. Then yes, I agree Apple would be correct in blocking the app. However I do feel that iD is trying to block the sale on AppStore for reasons other than source code not being published. I guess things will just have to play themselves out with this.
Of course iD has an another motive… they want their copy of Quake to be the only copy on iPhone. I suspect iD is waiting for Apple to be pressured into releasing a formal game controller for iPhone and iPod touch (or, enable Bluetooth HID profiles to allow third-parties to do that).
I’ve played these third-party ports of Quake… they’re not that fun. First-person shooters just do not play (well) on iPhone.
I think you are wrong about that the GPL demands the source be posted free on-line. I was under the impression that under the GPL the developer(s) OR distributors could distribute the compiled app (again under the GPL) but that they had to make the source code available, but could charge a reasonable fee for the process.
For instance, if the source code was delivered by http, a reasonable fee would be nothing – the files are already on line and bandwidth is neglicable. However if the source is not available online, then the company can charge, 5 or 10 pounds for “administration” of doing a checkout of their internal repositories, burning that to a CD and posting the CD to the person who asked for it (I know this has happened in several cases (especially with hardware vendors))
Sorry for commenting so late after the post, but I’m interested in your views on this?
James, you’re right… but I think we’re beating around the bush here. Yes, as an alternative, GPL does permit source code to be distributed by CD for a nominal fee.
But, that’s pointless to this discussion. Okay, so someone takes 100 hours to port Quake to iPhone. They want to charge $10/copy on the App Store.
I then send the developer an email with $5 to have them mail me a CD with the GPL’ed source. When I get the CD, I then take the source code, re-compile it, and submit it to the App Store as a free version. Adding insult to injury, I then post the source code online so that others can perfect it further.
Either way, the App Store developer’s business is completely undermined. They don’t want to offer up the source code by CD as much as they don’t want to offer it up via the web. They know that the moment they hand the source code to anyone, nobody will buy their copy from the App Store.
And, that’s one of the great things about the App Store. All the apps are on an even playing field. There’s no arbitrage possible with a first-strike position. My free upload of Quake would instantly top the charts, and nobody would even see the original, $10/copy version.
Sure. Coming from a mobile background, the app store is an amazing thing because it gives punters an easy and consistent way of installing applications that they have at least *some* credibility in being good, honest and working applications. They have the advantage that they have basically 1 phone, (where as a Nokia store would have to support something like 300 (or just ignore a lot, which is more likely)).
The App Store however, is not the final end of your app deployment lifecycle. I know that once you have an app out there, if it is unfortunate enough to get jailbreaked (sp?) then you have to start searching for it on the share/warez sites and issuing take-down notices. Apple arn’t going to be doing that for you, so if you DO want to protect your hard work, (that you are well within your rights to do so) then there is still work to be done. If Apple can seal up the ability to break apps, then that will certainly have finished the job.
The only reason I raised the query was that I think there are often misunderstandings over Open Source in general, as well as specifics in the GPL. One of the things which I think is a big one is the entire “Being GPL means it’s completely free”. – for a company wanting to do “the right thing” and release a bit of software AS GPL then this could actually be a big cost – in terms of developer time on providing documentation and code etc, but in reality, it dosn’t have to be.
One last point:
On a slightly related topic, you query the rights for a company to release source code as Open Source, but maintain rights over the name – isn’t this the same sort of situation as Mozilla?
Mozilla Firefox (as far as I can tell) is released under two licenses – the binary license and the source code license. The differences are subtle – with the source code, you *could* build an identical browser, it dosnt have any feature limitations, but they don’t want you to call the application you build with the this code “mozilla firefox”.
The reasons are quite interesting (from http://www.mozilla.org/foundation/trademarks/policy.html )
“Mozilla’s trademark policy attempts to balance two competing interests: Mozilla’s need to ensure that its trademarks remain reliable indicators of quality and security; and Mozilla’s desire to permit community members, software distributors and others that Mozilla works with to discuss Mozilla’s products and to accurately describe their affiliation with Mozilla.”
Of course, by having their own license, not the GPL, they are able to define this, but should people who produce code under the GPL worry about the same thing? Basically, If I produce a browser using the Mozilla Source code, and set all the default settings to really silly things so that the performance is bad, then distribute it, I would be giving Mozilla (and Firefox) a bad name. Its the reason in Debian its called Iceweasel – not that iceweasel has silly settings or anything.
It makes me wonder, how many applications I have tested and rejected (and then formed an opinion on the company or group who produced it), on the grounds of them not performing or not working, not because of the original developers, but because of the independent porter / installer / packager / whatever.
I noted that iD could request Apple to not allow any app on the App Store to be called “Quake.” The GPL really doesn’t come into play there… a third-party developer would be infringing on an iD trademark.
However, as I also noted, that can be worked around easily. By calling the game “iQuaker, Powered by Quake Engine”, the trademark is not being infringed on. You can causally reference a trademark in another product’s description. That would also allow the third-party port to appear when people search the App Store for “Quake.”
But, we don’t know what iD said to Apple in full. Neither company is answering that. And, it probably would take a law suit and discovery for that email to be released.
id’s position on third-party Quake ports follows naturally from the terms of the original GPL release. While the source code for the Quake game engine itself was released under the GPL, id retained the copyright for all of the game’s art assets, which include all maps, models, graphics, and sounds originally distributed with the game executable. Nothing is stopping someone from developing a GPL-licensed Quake port and distributing it through the App Store, but such a port could not include any of these art assets without id’s blessing. An app that required the user to supply the requisite data files themselves would *probably* be in the clear. I imagine id could still persuade Apple to deny the application listing in the App Store if they wanted to be nasty, but I doubt they would.
It is important to stress that there is no element of hypocrisy in what id is doing here. Releasing the source code for a commercial game engine as a way of enriching the software community is magnanimous in the extreme – I know of no other developer as successful as id that has done anything remotely like it. Numerous free ports and derivative engines have grown out of the original GPLed codebase and thrived without any of the original art assets being available for unlimited distribution.
The best thing for those who want a decent port of Quake on the iPhone should be to pay the $10 (or whatever id ends up asking) for the upcoming iPhone release of Doom. If it does well, an official Quake port would be a logical next choice for id to focus on. Given the job they did on Wolfenstein 3D, it will probably be a worthwhile purchase regardless of what id chooses to do next.
Anonymous, as the comments have gone further into detail… nobody is saying iD’s GPL position is incorrect, or hypocritical.
What was not clear from iD’s statements, including their statements and apparent requests to Apple, was that Quake-related assets would be barred, even if properly obtained.
For example: An app using the Quake engine that gives the user the option of touching a button that includes the option to offer up Quake WAD files… thus allowing Quake to run using their existing purchased copy.
And nobody is saying iD did a bad job on Wolfenstein… I happily paid for my copy on iPhone, even though I am quite capable of compiling my own from the GPL code.
Our point was that iD should make this stuff clear to Apple and to other developers; simply posting the GPL code and asking perceived violators to remove their code isn’t enough. That’s how animosity builds, and how people turn to the easiest solution (piracy).