Open mhaas opened 12 years ago
Hi Michael..
If I am in breech of the GPL then of course I shall remove the admob library dependency immediately.
When reading the license though there is a section on the "linking exception" http://www.gnu.org/licenses/gpl-faq.html#FSWithNFLibs
I fully realise that the game is a derivative work of Andreas.. however the code that contains the admob stuff is part of the android windowing setup which is in no way derived from any of Andreas work thus am I allowed to apply the linking exception on the code that I wrote? (which is what I initially presumed from reading the license).
If the above is not the case then I will be happy to comply with the license.
I also have a question...
I recently added copyright notices to all the files. In them I stated myself as the copyright holder and stated it was derived from Andreas work... (As the code was not directly copied I based the java code on what was there in C etc.. etc.. and taking creative license etc...) Should I add or change the notice to state that it is Andreas that has the copyright on any code based on the C code? I notice that most of his files do not have a copyright notice on.. if I should do this then what date would i put on the notice?
At what point does the copyright shift... i.e. if there is a module that contains more than 90% new (un-derived) code does the original author maintain copyright even though there is more new code in it now?
I have been considering removing the ads anyway now as I ideally would like to see some contributions to the code from other sources but the above questions are interesting to me in case I wish to do anything like this in the future.
Many thanks
Iain Churcher
I am not much knowledgeable in licensing, but I will try to answer.
1)
When reading the license though there is a section on the "linking exception"
This section is applicable only to LGPL-licensed software or software, that depends on libraries, always present on target system. For example, GPLed software, built under cygwin, can link to Windows proprietary C library, because it is essential part of system just like Windows kernel. Libraries, which are not part of public API, provided by OS, can not be used in compaliance with GPL terms.
If the above is not the case then I will be happy to comply with the license.
At least move current code to separate branch and remove AdMob-related code from the main branch to allow incorporation in the repository. Then if you want to comply with GPL, you have to either get permission of original code's author (if your work is really derivate) to link code with AdMob, remove AdMob entirely or replace it by some free alternative (does any exist?) or, if code is yours, you can just license AdMob branch under something other than GPL, e.g. your own EULA.
2)
Should I add or change the notice to state that it is Andreas that has the copyright on any code based on the C code? I notice that most of his files do not have a copyright notice on.. if I should do this then what date would i put on the notice?
If I understand you correctly, you do not even have to mention Andreas in copyright notices. If license requires you to give credits to other authors, you can do this in README or special AUTHORS file.
3)
At what point does the copyright shift... i.e. if there is a module that contains more than 90% new (un-derived) code does the original author maintain copyright even though there is more new code in it now?
There is no "copyright shift". Once you modify code, you gain ownership under terms of GPL. If you want, you may replace original notices by your own. You can also leave code intact (good thing about free licenses is that they allow you to combine code!) If you leave Apache 2.0 copyright notice in code, which is used in GPL 3-licensed work, receivers of this code will be free to use unmodified source files under terms of Apache license etc.
4) I recommend you using the most recent version of GPL - GPL 3.0 or later. This would allow you linking to Apache-licensed libraries (Apache license is incompatible with previous GPL versions), including Google "support" libraries and most of other open-source Google code.
Hi Alexander
I have started working on a cleaned up project removing adMob on my local repository and I am currently planning to push this to GitHub within the next week.
I may do what you suggested and branch the adMob version off of release 1.1.1 if further updates are required.... Looking at the GPL FAQ section again:
http://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs
This seems to imply that as the original author I may grant an exception to link to non-free libraries...
Quote: "If you want your program to link against a library not covered by the system library exception, you need to provide permission to do that. Below are two example license notices that you can use to do that; one for GPLv3, and the other for GPLv2. In either case, you should put this text in each file to which you are granting this permission."
Or does this not apply as my code was based on Andreas original work (i.e. it wasnt a clean room implementation).
Can you clarify this for any future projects I may undertake..
Again to clarify I will be publishing a branch with the AdMob lib removed soon.
Many thanks for all your help in clearing up these license issues.
Regards
Iain Churcher
As long as your code has common lines with code of the other program, it is definitely derivate work. If programs do not have common lines, matter becomes complicated. IMO, if one code can not be generated from another by simple script, it should be considered independent work. Your code differs significantly from code of original GLTron, but it has some common music and suspiciously similar graphical assets, so I'd rather consider it derivate. If I were you, I'd simply e-mail author of original GLTron and asked his permission to use whatever advertisement library you want.
Hi all..
I have just pushed version 1.1.2 which has now removed all of the AdMob stuff...
I took Alexander's advice and updated the license to GPLv3
Hopefully this now fully compliant and can be included in F-Droid.
Note: I removed from this commit a lot of the auto generated folders and eclipse specific project settings... Please email me if you have any problems creating a build from this.
Regards
Iain Churcher
hi Everyone,
Thanks for the great port to Android, Iain! It works really well on Android.
I implemented a mod of this Android port and would like to put AdMob in it too. I hope this is alright. From what I'm reading in this thread, it seems I need the permission of both Iain Churcher and Andreas Umbach. Can I have your permission, Iain?
I also emailed Andreas and hopefully he says yes.
Hello everyone,
First of all, thank you for your interest in GLtron.
Here's the current situation:
While I've been ignoring GLtron more or less since 2007, I have picked up the game again recently, mostly because I had to councel a student project on the iOS platform, so I figured I had to do a bit of iOS programming myself. One thing led to another, and now I have working builds of the current GLtron source on both OS X and iOS. Both still need a bit of polish before release, but that'll kept done eventually. What's important is that both versions will still be GPL, and still be free.
I'm not very happy with the state of GLtron on the Android platform. There are numerous 3d lightcycle games for Android, and many of them use various amounts of assets or code from the original GLtron. Most of them are closed source, some contain adds, some ask for outrageous permissions *access to contacts? seriously), some are even non free.
About 2-3 years ago (I think) I took down some the most annoyign offenders using DMCA notices to Google Play and the HP App Store, but after a while I stopped bothering because I had other things to do. Also, I think there was at least one Application that was adhering to the GPL, and was free AND ad free.
Looks like that is no longer the case, since apparently Cluverman's port isn't ad free anymore and cursory browing didn't turn up any others that were (is there really that much money to be made?).
Legally, it's unlikely that I'll take any action against ports that honor the GPL and release their source code, even if they are linking against closed source libraries (I'm not 100% sure either how the cited exception applies in this case, since I think it was originally included to allow linking against closed source OS libraries, drivers etc.)
Ofc. I'd prefer if all Andriod ports were free and didn't contain any ads (and credit the original version). If noone makes one, I just might end up releasing one myself.
To Michael: since Chluverman's port is GPL, can't you just rip the adds from his port and put that on F-Droid? Actually, I really should check if you just did that.
On a unrelated note, I own only one Android device, a poor Samsung Tab 2 (7 inch), but the game looks very bad! Ofc. my iPhone 5 is more powerful, but seriously, is performance on android so bad it can't even have proper mipmapping? On the iPhone I have reflections, explosions and everything (except stenciled shadow volumes, still need to port those to OpenGL ES 2.0), and it runs super smooth without a single optimization...
Hi Andreas,
It's good to know that you would be picking up the game again. I have been trying to port gltron to opengl 2 or above but not having any experience in opengl is a lot of problem for me. Would it be possible to create some kind of documentation on the codes, code flow or any thing you think might help? It just might be the help i need to keep myself motivated.
flide
Hi everyone
I started this port as a hobby to see I I could write an android game purely for my own learning. A friend convinced me to publish it to the app store.
Rather than get the c code to run under android I re-wrote the code into my own Java classes which is probably where all the performance issues stem from.
Myself being a newbie to open source wasn't too sure on all the license issues but mhass above pointed out some issues above. Which I hope I had addresses.
The latest branch on here.. github has had all the admob code removed and I believe conforms to the GPL.
However as work priorities took over I have kind of abandoned this and never got around to pushing the latest code to the android market place. The fdroid version simply uses the master branch published here.
Probably a better approach for gltron would be to keep a common c codebase and run that on android.
Like I say this was done purely as a learning exercise and unfortunately work commitments have become such that I don't even have the android SDK installed anymore
Regards
Chluverman
Sorry if I can across a little harsh, it was never my intention to criticize your intentions or your code, and I think you've done a good job of trying to be GPL compliant.
I'm not sure that the performance issues come from Java though (Java being generally very fast, if you keep your classes lean and don't run amok with memory allocation), it's probably more of an OpenGL ES issue.
I agree that a C version with a minimum of Java glue code would be the way to go, to simplify cross platform development. If anyone reading this is interested in becoming the android maintainer of the new and upcoming GLtron version, let me know.
Hey there,
I'm currently trying to add your gltron app to the F-Droid repository at www.f-droid.org. F-Droid is an Android software repository containing only free software, and as such, your app would be a perfect fit!
While integrating your app into our build process, I noticed that you are using the Google Ads SDK. While we absolutely don't mind that you want to be compensated for your hard work on the app, we unfortunately can't ship your app if it contains proprietary code. Additionally, linking the app against the closed source Google Ads library violates the GPL license put forth by original author, Andreas Umbach.
Do you think you could remove the ads or work with us to ship a version without ads?
Kind regards,
Michael