The Ethics of Selling GPLed Software For the iPhone
SeanCier writes "We're a small (two-person) iPhone app developer whose first game has recently been released in the App store. In the process, we've inadvertently stepped in it, bringing up a question of the GPL and free software ethics that I'm hoping the Slashdot community can help us clear up, one way or the other. XPilot, a unique and groundbreaking UNIX-based game from the early/mid nineties, was a classic in its day, but was forgotten and has been dead for years, both in terms of use and development. My college roommate and I were addicted to it at the time, even running game servers and publishing custom maps. As it's fully open source (GPLv2), and the iPhone has well over twice the graphics power of the SGI workstations we'd used in college, we decided it was a moral imperative to port it to our cellphones. In the process, we hoped, we could breathe life back into this forgotten classic (not to mention turning a years-old joke into reality). We did so, and the result was more playable than we'd hoped, despite the physical limitations of the phone. We priced it at $2.99 on the App store (we don't expect it to become the Next Big Thing, but hoped to recoup our costs — such as server charges and Apple's annual $99 developer fee), released the source on our web page, then enthusiastically tracked down every member of the original community we could find to let them know of the hoped-for renaissance. Which is where things got muddy. After it hit the App store, one of the original developers of XPilot told us he feels adamantly that we're betraying the spirit of the GPL by charging for it."
Read on for the rest of Sean's question.
"That left us in a terrible spot. We'd thought we were contributing to the community and the legacy of this game by reviving it, not stealing from them by charging for it — and we didn't think $2.99 was unreasonable (and, again, the source is available for free from our page). It never occurred to us that one of the original creators would feel that we were betraying their contribution. We've discussed the philosophical fine points of free-as-in-speech vs. free-as-in-beer with him, and have suggested a number of remedies — such as reducing the price (it's now $1.99), profit-sharing with previous contributors, making the game free at some point in the future (once we'd at least recouped our costs), or going 'freemium' (offering a fully-functional free version plus a paid version with enhancements we added ourselves, with both GPLed of course). But in each case, the bottom line is that this developer feels the app should be free-as-in-beer period, and anything less is a sleazy betrayal of anybody that made contributions under that license. Which is a shame, because we deeply respect his work on this game and would love for him to be on board with the port — but at the same time this was months worth of work and we honestly believe we're going about this in a reasonable way.
Obviously, one of us has a non-mainstream understanding of open source ethos, but it's become clear we can't come to a consensus on which of us it is, and whether the 'spirit of the GPL' should allow selling GPLed software (especially when one wasn't the original creator of the software, but a more recent contributor). The only way to determine that, it seems, is to poll the open source community itself.
We're determined to do the right thing by the GPL and the community, and we'd like to hear opinions on this. Remember, we're not talking about whether it's practical to base a business on GPLed software, nor the best business model for doing so, and certainly not whether the source must be distributed for free (obviously it must be), but just whether charging for the binary version of an enhanced/ported version of a GPLed app (while releasing the corresponding source for free) is an ethically defensible thing to do."
Obviously, one of us has a non-mainstream understanding of open source ethos, but it's become clear we can't come to a consensus on which of us it is, and whether the 'spirit of the GPL' should allow selling GPLed software (especially when one wasn't the original creator of the software, but a more recent contributor). The only way to determine that, it seems, is to poll the open source community itself.
We're determined to do the right thing by the GPL and the community, and we'd like to hear opinions on this. Remember, we're not talking about whether it's practical to base a business on GPLed software, nor the best business model for doing so, and certainly not whether the source must be distributed for free (obviously it must be), but just whether charging for the binary version of an enhanced/ported version of a GPLed app (while releasing the corresponding source for free) is an ethically defensible thing to do."
Yes it's fine
This is a retarded issue, there is nothing in the GPL to prohibit charging whatever the fuck you want as as long as the code freely available.
There's no "spirit of the GPL", that is just a made up construct, like saying the Constitution is "living document".
It either violates the terms or it doesn't.
Next.
You're not doing anything wrong. You've not in violation of any licenses. By choosing the GPL, the pissy developer:
1) Already answered the question of whether people can charge for it (the answer: yes)
2) Gave up control of the project; you could just call yours a "fork" and he'd have to shut up anyway
So, in short, go tell him to piss up a rope.
Comment of the year
It's fine to charge for a product that is based on a GPL'd project as long as you are contributing back to GPL'd project. That is what the GPL is about. Nothing says you can't make money. Redhat does it every day and no one complains. And CentOS came along and created a free version of Redhat but it really didn't impact Redhats business model.
This is my sig. There are many like it but this one is mine.
Those people are idiots!!!
http://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney
Does the GPL allow me to charge a fee for downloading the program from my site?
Yes. You can charge any fee you wish for distributing a copy of the program. If you distribute binaries by download, you must provide âoeequivalent accessâ to download the sourceâ"therefore, the fee to download source may not be greater than the fee to download the binary.
You did everything right, and nothing wrong. I am more thinking that the people who are angry are jealous that they did not think of it first.
"You can't make a race horse of a pig"
"No," said Samuel, "but you can make very fast pig"
one of the original developers of XPilot told us he feels adamantly that we're betraying the spirit of the GPL by charging for it
No, you're not.
You're betraying what he feels is the spirit of the GPL. However, the GPL was specifically designed to allow for such charging. If he didn't like the GPL, he and the other "original" developers should have chosen a different license. The fact that he didn't understand what rights he was transferring by choosing the GPL is his own fault.
I appreciate that this developer is put off by your fees. However, he is free to take your efforts (the GPL'd code you've published) and release the application for free.
I think you've gone above and beyond by hearing the guy out and expressing your concerns. However, you're following the rules HE set out.
Why was this posted on Slashdot anyway. They may call programmers rude, but this is clearly a case to RTFM before asking.
If you don't want other people making money from your work, then you shouldn't release anything under the GPL. That's easy...
But is it legal to release any iPhone application under the GPL? Apple puts restrictions on what you can do with the application once you've downloaded it - i.e. you're not allowed to redistribute or modify it. Unless all of the copyright holders of the GPL code give their permission to release it under these more restrictive terms, that be a violation wouldn't it?
If the original developer wants the iPhone app to be free, he can take your source, pay Apple the $99 SDK nuisance fee and list the app for free at the app store. The GPL permits this and such undercutting is the main deterrent to trying to sell GPL'd apps. No scarcity = no leverage to maintain your prices.
Step 1: Port game
Step 2: General controversy over game
Step 3: Profit!
Mod me down with all of your hatred and your journey towards the dark side will be complete!
The source-code seem to be downloadable http://7b5labs.com/xpilotiphone
Did you know that the FSF charges for GPL software if you buy a copy from them? (Yes, you can also get it for nothing. That's not the point.) So don't feel bad about charging. Yes, give the source away too; if someone else decides to put a version built from the same source in the App Store, they can (assuming they get it past Apple's asinine guardianship, of course).
"Little does he know, but there is no 'I' in 'Idiot'!"
I can see where your arguments are coming from and I think your opinion makes sense.
However anyone can download the code from their website and compile it on the iphone simulator (which, together with XCode is a free download from Apple). You could argue that you still need a non-free os to run it which won't make RMS happy, but then again on a PC you more often than not have a non free BIOS that's needed to run the OS. And pretty much any computer has a non-free hardware.
Because of this, and other reasons, in my opinion there's nothing wrong with selling a GPL program on the Itunes store as long as anyone who bought it can get the source code.
IMHO, Ethics isn't the issue here. Someone either misunderstood or doesn't want to accept that GPL'd software can have a price put on it... So long as the source is available for free or less than the cost of the binary (I prefer free of course ^_^).
I checked out the authors site and lo! There was the source code and I even downloaded a copy for good measure.
There really isn't any reason that someone who has put a lot of work and money into building/porting/developing/fixing a GPL application can't charge for the complied binary other than having to listen to those who don't wish to pay and are far too lazy/technically lacking to compile their own from the source.
The only person "in the wrong" here was the one complaining.
I own a copy of XPilot for the iPhone as I couldn't resist the classical goodness. The author put a LOT of work into making it exceptionally polished and playable on a platform that it wasn't intended for. Not to mention (as the author did) the cost of development.
That was $3 gladly spent. As much as I rely on free apps, I don't much mind spending >10 on REALLY good portable device apps and >20 on desktop apps here and there. The thing is, they need to be significantly better than average to be "worth buying" in my mind. This is why I actually donate to authors of apps that are one, two or even three cuts above.
Show them some love people and perhaps fewer developers would charge you for the pleasure of initially using it in the first place!
This signature is lame.
The "UK Government" didn't confiscate anything. It's not clear that any confiscation actually happened. It's not some dimwitted action of central government. If you read the letter in the linked Times article:
'They had encountered businesses which were selling copies of Firefox, and wanted to confirm that this was in violation of our licence agreements before taking action against them.'.
BEFORE. The only mention of confiscation is: "we would like her to return any confiscated CDs".
It was one trading standards officer. There are thousands of them all around the country. It was an honest misapplication of a policy which stops pirated software/DVDs/music being sold at town markets and small stores around the country, and it was confusion that was corrected. No lid was flipped, she just got a bit over-official. The officer in question was just doing her job and experiencing some confusion when encountering a new (to her) business model. The problem was resolved.
The GPL, as many have commented, does not preclude or even discourage charging money for the software. The primary ethical thrust of the GPL is that your users must have unbridled freedom to use, modify, and redistribute the software you have provided to them. You appear to have met that cleanly.
But, as a considerate human being, you've also taken the time to consider the original authors personal wishes. That's a gracious thing to do, but obviously it's now landed you in an awkward position. Candidly, I'm with you; I'm rather biased, and think that folks deserve to receive compensation for their work on Free Software. However, it's up to you to decide how far to go in satisfying their personal wishes. So, it remains an interesting ethical dilemma, but I think it has nothing to do with the GPL.
Of course, if this is all a clever marketing stunt, and you're in cahoots with the original developer to create a fake controversy, then my hat is off to you, sir. :-).
Cheers,
Jeremy
Also looking at the videos from that web-page it seems to me that the developers have contributed significantly to the project, especially in coming up with innovative controls for the game suiting the iphone.
To me the whole thing also seems pretty clear, they are not doing anything wrong at all.
Of course there's a spirit of the licence. You don't think that lawyerspeak is the most important value in life do you? Or that ethics consists of doing the maximum that you can get away with while still squeezing within the letter of the law? In fact, according to its author, the letter of the GPL is less important than its spirit, which is expressed in the preamble:
Now, is this spirit being upheld when you buy the app from the App Store? Do you have freedom to distribute copies of it to other iPhone users? Can you change the software and run your changed version? It's pretty clear that people who buy it from the App Store don't have these freedoms; even if they can get the source code from some web site, that's about as much use to them as the printed copies of source code that used to be supplied with IBM mainframes instead of a real online copy you can rebuild and run. So I think the original author had a point; he and his fellow contributors made the software with the expectation that everyone who gets it can freely share and modify it, but here most users cannot.
On the other hand, there are those who don't think this is what the GPL is about. For example Linus has said it's quite okay to distribute locked-down Linux installations that the user can't modify, despite the language about 'freedom' in the GPLv2 licence. So there is certainly room for interpretation.
-- Ed Avis ed@membled.com
Apple got rid of the NDA when iPhone devs complained that it restricted their ability to discuss development on forums.
http://www.macgeekery.com/column/eloquent_apathy/apple_removes_iphone_sdk_nda
The URL referred to makes this case based on a quote of the GPLv3 "Installation Information" clause,
Even then, I wonder if "incompatible" is not overstating the case. 1) Does conveying here "occu[r] as part of a transaction in which..."? 2) Who exactly is "retain[ing] the ability to install modified object code..."?
Timeo idiotikOS et dona ferentes
Nonsense. It was GPL. It belonged to everyone, to do what they want with it, as long as they abide by the GPL. The only thing wrong that happened here is that some bully and crybaby wanted to control what other people did because of something he did in the past, and, of course, the mistake of trying to appease him.
I'm an American. I love this country and the freedoms that we used to have.
The GPL is quite clear on this. If the original publishers didn't want it to be charged for, they should have created their own license. 15 years ago they didn't cover their bases, and have since abandoned the code? You're fine. If they want a complete free on available, let them release one. After all, it is the GPL. THAT is the spirit of the license, and by my reckoning you have done an admirable job of honoring it. Thank you for your contribution.
Technically speaking, you're not doing anything wrong.
Morally speaking, you are. Apple iPhone is a fenced product in complete control of Apple. There is nothing free about it. Releasing GPL software for iPhone is in direct contradiction of GPL spirit.
Note that this is different from windows. There anybody is free to just pay for the OS and then download any compilers, any code, anything and therefore it is not ideal but OK from the perspective of GPL. iPhone on the other hand is a piece of hardware that is effectively owned by Apple and not the person who bought it.
Apple changed this with I believe 2.2 so that their beta releases were under NDA, but standard releases are not. Previous to this change you are correct, but the situation has changed for the better now. So as long as they aren't currently releasing 3.1 beta specific code I believe they are fine. That's my understanding as an iPhone developer myself.
Well, I'm that disgruntled original developer, and I'll let other developers chime in if they feel like it, though most of the conversations with Sean and Michael (SM) have been with me. I'm incredibly torn:
On the one hand, SM have put some life back into a project that's dear to my heart, and I'm really thrilled about that. They deserve thanks.
On the other hand, SM are trying to unfairly profit from the man-years of development work that went into XPilot, and that just rubs me (and the other developers that I asked) the wrong way.
Why is XPilot not free? "Covering distribution costs" is a joke. They are negligible ($99 per year amortized across all their projects) and I (and I'm sure tons of other people too) is willing to put the game up for free. This wouldn't be very nice to SM, so I was hoping to avoid that.
I even suggested to SM that they make it free after they recouped their distribution costs (which should be about now considering the PR it's getting), but that made them go ballistic.
Is the source is freely available? Well...
1) They haven't checked in any of their source since June (more than a month), though the latest release is from a few days ago.
2) The availability of the source code isn't clearly (or at all) advertised in the game, and until I complained about it, wasn't even advertised on the app store page.
It's pretty clear to me that they did this port wanting to make money from their development time, which is no different from a commercial venture, but quite different from the expectations of every other contributor of XPilot (and other open source projects). I would even say it's against the spirit of the GPL.
There are a number of other issues with selling open source software:
The only thing that might make sense charging for, as far as I can see, is the running of the servers, as that is a per-user cost someone will have to bear.
(I won't even get into the argument that it's against the GPL to even distribute through the app store, but I'll stay away from that since I think that's sad and better dealt with by lawyers and Apple.)
'Remember when TiVo went by the letter of the GPL (v2) but not the apparent spirit? A new section of GPL v3 was born.'
This is actually the most relevant point in the entire discussion. The iPhone app store falls foul of exactly this clause in GPL3, created to address a very similar issue. John Sullivan at the FSF addresses the problem here:
http://www.fsf.org/blogs/community/why-free-software-and-apples-iphone-dont-mix
"Apple's approach runs headlong into an important part of the GPL's copyleft approach -- the principle that anytime someone shares a copy of a GPL-covered program with another person, she also needs to provide that person with the installable, human-readable source code for that program. This ensures that everyone who gets a copy of a program also gets the raw material needed for any study and modification. This freedom is not meaningful if the computer on which the software is meant to run arbitrarily rejects any potentially changed version installed by the user simply because it has not been signed or approved by a "higher" authority. The latest version of the GPL (GPLv3) includes a provision to address the threat posed by this tivoization and put a stop to this method of depriving users of freedom."
So the problem is not that the app is being charged for (this is fine), but that it's on the app store at all. This violates the spirit of the GPL in general (as it makes one of its fundamental freedoms 'not meaningful') and the letter of GPL3. The letter of GPL2 would not be violated (it's a situation the original GPL authors had simply not considered), provided that the app is accompanied by its source code or a written offer to supply it (presumably the source is not included in the app store download, but is the written offer? - it's not enough just to have the source on the personal site of the iPhone version's authors).
The right thing to do, would have been to contact the original designers and ask for their permission in the first place.
They already gave him permission when they released the code under GPL. Personally, I'd be annoyed if people were contacting me to ask if they can do things that I already covered by releasing my code under a free software license. Maybe I'd be OK with it if it was some very tricky edge case, but "charge money for GPL code" is not a tricky edge case.
You can charge whatever you want. RMS was charging people $150 for copies of Emacs, which is far more than the cost of the "physical act" of copying.
Notice the penultimate part, "scripts to control". That would be the Xcode project files, which he's including.
No. If that were the case, there could be no GPL software for OS X or Windows. It's your responsibility to get your build environment set up, and the GPL makes no promises that that will be free or easy.
I do understand why some people are uneasy about this; in the case of the iPhone there's a completely artificial barrier to development, as opposed to the inherent "barriers" of needing access to a computer and compiler and so forth, but as far as I can tell that makes no difference for the GPL.
How to solve most of our problems: 1.Lots of nuclear plants. 2.Cure aging.