Giter Site home page Giter Site logo

Comments (10)

Chluverman avatar Chluverman commented on June 20, 2024

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

from android-gltron.

Alexander-- avatar Alexander-- commented on June 20, 2024

I am not much knowledgeable in licensing, but I will try to answer.

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.

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.

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.

  1. 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.

from android-gltron.

Chluverman avatar Chluverman commented on June 20, 2024

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

from android-gltron.

Alexander-- avatar Alexander-- commented on June 20, 2024

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.

from android-gltron.

Chluverman avatar Chluverman commented on June 20, 2024

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

from android-gltron.

CarlGammaSagan avatar CarlGammaSagan commented on June 20, 2024

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.

from android-gltron.

andi75 avatar andi75 commented on June 20, 2024

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...

  • Andreas

from android-gltron.

flide avatar flide commented on June 20, 2024

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

from android-gltron.

Chluverman avatar Chluverman commented on June 20, 2024

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

from android-gltron.

andi75 avatar andi75 commented on June 20, 2024

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.

from android-gltron.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.