Board index FlightGear Development Aircraft

Aircraft CC and GPL License and non-GPL FGAddon Question

Questions and discussion about creating aircraft. Flight dynamics, 3d models, cockpits, systems, animation, textures.

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Hooray » Sat May 23, 2020 10:16 am

The point was that Thorsten is correct in saying that changing existing GPL'ed Nasal modules to re-license those without reaching out to the corresponding contributors, is a PITA. And that the FSF require that paperwork for a reason (which, too, can be a real PITA, like you say).
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11791
Joined: Tue Mar 25, 2008 8:40 am

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby bugman » Sat May 23, 2020 10:26 am

Clarity is important - some readers might think we can change the licence on FGData to include an 'exception' or switch to say AGPL.

Back to the subject though. The GPL whole in FG is not exactly clear. Is the FGData component a part of the "whole" aircraft, or are we communicating with it? In the later I would call it part of the simulation environment and not part of the "whole".

Regards,
Edward
bugman
Moderator
 
Posts: 1777
Joined: Thu Mar 19, 2015 9:01 am
Version: next

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Icecode GL » Sat May 23, 2020 10:41 am

All of this licensing talk is unfortunately invalidated by the fact that it's highly unlikely that anyone part of the FG project is going to take any formal legal actions against any FG-related project. Legal action takes time and money, and those are only available to companies (and the FSF). Relatively small sized open source projects like FG (we can consider Gnome, Linux and others to be on another league) don't have the power to enforce licensing, so we usually only have to worry about not infringing copyright of larger players (remember the HondaJet thingy?).
Icecode GL
 
Posts: 616
Joined: Thu Aug 12, 2010 12:17 pm
Location: Spain
Callsign: icecode
Version: GIT
OS: Arch Linux

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Hooray » Sat May 23, 2020 10:48 am

right, that is also why it makes sense to have a degree of clarity that isn't subject to interpretation, i.e. avoiding muddy waters - not just by taking the path of least resistance (HondaJet), but also to ensure that the situation with regards to use of GPL'ed Nasal modules by other modules is explicitly covered.

@bugman: the distinction doesn't work, you don't need an "aircraft" (vessel/vehicle) to make use of FlightGear - you could use FlightGear for all sorts of purposes, where it isn't much more than a "platform" and where the aircraft in question may simply be an empty placeholder (think ufo, ogel, santa etc), just to satisfy the run time requirement of having an aircraft that is to be simulated - the fact however is, you can start up FG without the GPL vs. the whole aircraft having much of an impact - say in a distributed multi-instance or dual-pilot multiplayer setup (FSWeekend/LinuxTag). In that scenario, the AGPL does indeed make sense again.

The AGPL doesn't cover the scripting inside fgfs scenario. It will however become relevant when people start running scripts outside the fgfs process space, e.g. via Python or Nasal (the latter has been repeatedly discussed by senior core developers, who've been wanting to move Nasal out of the main loop for years).
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11791
Joined: Tue Mar 25, 2008 8:40 am

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby amue » Sat May 23, 2020 10:53 am

bugman wrote in Sat May 23, 2020 10:26 am:The GPL whole in FG is not exactly clear. Is the FGData component a part of the "whole" aircraft, or are we communicating with it?

I already linked to and quoted the relevant GPL-FAQ part: https://forum.flightgear.org/viewtopic.php?f=4&t=37472#p368097
If the aircraft uses/calls Nasal code in FGData then the GPL describes that as dynamic linking and therefore the aircraft is a 'derivative work' from that FGData Nasal code and therefore subject to the GPL.
amue
 
Posts: 51
Joined: Tue Apr 03, 2018 9:13 am

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby erik » Sat May 23, 2020 11:57 am

Thorsten wrote in Sat May 23, 2020 9:42 am:I don't think that 'we' can decide that - in effect, that'd be a change in the license terms to dual license (you can use it under normal GPL if you want to develop it further, or you can use it - without changing it in any way - from an aircraft) - and that change would have to be signed off by the copyright holders of the code, aka the people who wrote it.

Agreed, but if we value this worthwile then it's time to decide who to contact and start doing so. Otherwise that would be a waste of time. And asking whether they agree that GPL does not get invoked when linked from an Aircraft is easier than asking if it's okay to switch to a completely different license I assume.

A one-liner fix is normally not considered "authorship" anyhow so that might bring the list down.

Update:
There seems to be a number of Nasal scripts which have nothing to do with aircraft development which could be skipped.

I've generated a list of Nasal modules and it's contributors like this:
Code: Select all
cd <fgdata>/Nasal
for n in `find . -name \*.nas`; do echo $n; git shortlog -sne $n; done > /tmp/nasal.lst


Erik
erik
 
Posts: 1592
Joined: Thu Nov 01, 2007 1:41 pm

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Thorsten » Sat May 23, 2020 1:07 pm

And asking whether they agree that GPL does not get invoked when linked from an Aircraft is easier than asking if it's okay to switch to a completely different license I assume.


I admit my sympathy for non-GPL projects comes in degrees - I can fully relate to people wanting to work under a 'no commercial' clause, less so under a 'no derivatives'. The former group I would like to help out, the latter rather not.

Having said that, if there's a majority behind dual-licensing the Nasal files to make them generally usable, as far as my (small) aircraft-related part may be concerned I won't block a solution.

All of this licensing talk is unfortunately invalidated by the fact that it's highly unlikely that anyone part of the FG project is going to take any formal legal actions against any FG-related project.


I generally try to stay on the right side of the law out of other reasons than fear of it being enforced - and so do other people. Most people would not start to rob stores even if they could get assurances that the police isn't going to get them.

Simply clarifying a legal situation already has quite a lot of effect for that reason.
Thorsten
 
Posts: 11620
Joined: Mon Nov 02, 2009 8:33 am

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Hooray » Sat May 23, 2020 1:40 pm

In that case, it might make sense to have the discussion to move certain Nasal "submodules" (stuff in folders under $FG_ROOT/Nasal) into their own dedicated add-ons, some of which may need be shipped with FlightGear by default, to ensure that what remains in $FG_ROOT/Nasal can indeed be considered to be part of the "core library" that would then be exempted from the requirements of the GPL for people wanting to distribute Nasal modules that inherit/import/customize or otherwise leverage such modules.

Either way, it's going to be important to clarify the current/future situation, especially with regards to existing add-ons - given how this feature has evolved over time, it's likely that more and more contributions are going to be structured in this shape, because it offers so many benefits, while also providing an option for people who don't want too much Nasal code inside the main loop/sim, to easily "opt out" of certain Nasal based features (which, once you think about it, was the original reason for ThorstenB's work on Nasal sub module support in the first place).
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11791
Joined: Tue Mar 25, 2008 8:40 am

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Icecode GL » Sat May 23, 2020 4:07 pm

I generally try to stay on the right side of the law out of other reasons than fear of it being enforced - and so do other people. Most people would not start to rob stores even if they could get assurances that the police isn't going to get them.


I was pointing out that it's kind of pointless to discuss unenforceable (minor) licensing nuances. Robbing a store is clearly a crime, and robbery has been punished since ancient times. I don't think that's comparable to something as delicate/modern/intricate as copyright law, and to my knowledge no one here is a lawyer (I could be wrong of course). As long as we take the "path of least resistance" as Hooray said and stay on the legal safe side, we should be fine, even if that means sacrificing some privileges we could be taking advantage of with some legal knowledge.

Also, as bugman pointed out earlier, relicensing FGData is not viable, so the only people that should be concerned with licensing issues is people who intend to use parts of FGData in one way or another without giving back to the sim (i.e. commit their changes upstream). Those people should be contacting a lawyer if they really want to stay on the "good side" of the law, not the forum, where mostly devs hang out, not experts on copyright law. And even if they didn't care about staying in the good side of the law, we don't have the resources to fight them.
Icecode GL
 
Posts: 616
Joined: Thu Aug 12, 2010 12:17 pm
Location: Spain
Callsign: icecode
Version: GIT
OS: Arch Linux

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Hooray » Sat May 23, 2020 5:03 pm

This debate tends to pop up every 3-5 years apparently, and it got first discussed around 2005 - if this had been resolved once and for all, we wouldn't be having these recurring discussions. In other words, it may seem like a minor thing to you, but it's still worthwhile to get this sorted. It's completely irrelevant if you are a lawyer or not, even if you are specializing in law, or even copyright law, copyright law is a national thing - and you're unlikely to to work for FlightGear either way.

Right now, it's "just" a handful of more or less senior contributors on different sides of the spectrum - but given that this involves even long-term contributors, including core developers, it is indeed worth finding a consensus and establishing a solution -for the simple reason that some time in the future, the other party may not be "just another contributor", but potentially a 3rd party (say a group like fgmembers or a commercial entity like FPS), trying to find a viable community/business model by exploiting such loopholes and grey areas

We may not be in a position to change the past, but had certain issues been resolved back in 2005, this topic wouldn't exist :lol:
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11791
Joined: Tue Mar 25, 2008 8:40 am

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Icecode GL » Sat May 23, 2020 5:13 pm

It's completely irrelevant if you are a lawyer or not, even if you are specializing in law, or even copyright law, copyright law is a national thing - and you're unlikely to to work for FlightGear either way.


This further proves my point. Not reaching a concensus every time this discussion is raised also kind of does as well. :)
Icecode GL
 
Posts: 616
Joined: Thu Aug 12, 2010 12:17 pm
Location: Spain
Callsign: icecode
Version: GIT
OS: Arch Linux

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Thorsten » Sat May 23, 2020 5:25 pm

Any forum or community I've ever participated in has recurring discussions - in fact, every nation has recurring political debates - I fail to see what (except something very basic about the nature of humanity) they should prove in particular :D
Thorsten
 
Posts: 11620
Joined: Mon Nov 02, 2009 8:33 am

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Icecode GL » Sat May 23, 2020 5:41 pm

Recurring discussions happen because people don't agree with each other. If we are discussing a political issue, then the continuous debate is necessary, justified and useful because the final decision will potentially affect millions of citizens. Whatever comes out of this particular discussion won't matter too much because again a) we can't enforce it b) contributors who don't want to license their work outside of fgdata as GPL won't license it as such just because we say so here c) fgdata is GPL and nothing will change that. Note that I'm just thinking out loud here, feel free to keep discussing this, of course. I'm just trying to save you guys some time. :)
Icecode GL
 
Posts: 616
Joined: Thu Aug 12, 2010 12:17 pm
Location: Spain
Callsign: icecode
Version: GIT
OS: Arch Linux

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby bugman » Sat May 23, 2020 6:45 pm

amue wrote in Sat May 23, 2020 10:53 am:I already linked to and quoted the relevant GPL-FAQ part: https://forum.flightgear.org/viewtopic.php?f=4&t=37472#p368097
If the aircraft uses/calls Nasal code in FGData then the GPL describes that as dynamic linking and therefore the aircraft is a 'derivative work' from that FGData Nasal code and therefore subject to the GPL.


I'm well aware of that. But how FlightGear and Nasal does this is different to how the Java Native Interface does it. Can you prove, using technical detail, that FlightGear+Nasal+FGData is homologous to this JNI situation, rather than analogous? Note that acronyms such as JIT are not technical. If not, I would say that this is analogous and the FSF legal opinion in that link does not apply to FlightGear.

Secondly I also do not fully believe the FSF opinion here. They say that if you use a Perl GPL module in a Perl script, you must release your script as GPL. For the record:

The Free Software Foundation wrote in https://www.gnu.org/licenses/old-licens ... reterIsGPL:
If a programming language interpreter is released under the GPL, does that mean programs written to be interpreted by it must be under GPL-compatible licenses?

When the interpreter just interprets a language, the answer is no. The interpreted program, to the interpreter, is just data; a free software license like the GPL, based on copyright law, cannot limit what data you use the interpreter on. You can run it on any data (interpreted program), any way you like, and there are no requirements about licensing that data to anyone.

However, when the interpreter is extended to provide “bindings” to other facilities (often, but not necessarily, libraries), the interpreted program is effectively linked to the facilities it uses through these bindings. So if these facilities are released under the GPL, the interpreted program that uses them must be released in a GPL-compatible way. The JNI or Java Native Interface is an example of such a binding mechanism; libraries that are accessed in this way are linked dynamically with the Java programs that call them. These libraries are also linked with the interpreter. If the interpreter is linked statically with these libraries, or if it is designed to link dynamically with these specific libraries, then it too needs to be released in a GPL-compatible way.

Another similar and very common case is to provide libraries with the interpreter which are themselves interpreted. For instance, Perl comes with many Perl modules, and a Java implementation comes with many Java classes. These libraries and the programs that call them are always dynamically linked together.

A consequence is that if you choose to use GPL'd Perl modules or Java classes in your program, you must release the program in a GPL-compatible way, regardless of the license used in the Perl or Java interpreter that the combined Perl or Java program will run on.


I actually don't think so. Neither does the creator of the Perl language himself:

Larry Wall wrote in https://dev.perl.org/licenses/:
For those of you that choose to use the GNU General Public License, my interpretation of the GNU General Public License is that no Perl script falls under the terms of the GPL unless you explicitly put said script under the terms of the GPL yourself.

Furthermore, any object code linked with perl does not automatically fall under the terms of the GPL, provided such object code only adds definitions of subroutines and variables, and does not otherwise impair the resulting interpreter from executing any standard Perl script. I consider linking in C subroutines in this manner to be the moral equivalent of defining subroutines in the Perl language itself. You may sell such an object file as proprietary provided that you provide or offer to provide the Perl source, as specified by the GNU General Public License. (This is merely an alternate way of specifying input to the program.) You may also sell a binary produced by the dumping of a running Perl script that belongs to you, provided that you provide or offer to provide the Perl source as specified by the GPL. (The fact that a Perl interpreter and your code are in the same binary file is, in this case, a form of mere aggregation.)

This is my interpretation of the GPL. If you still have concerns or difficulties understanding my intent, feel free to contact me. Of course, the Artistic License spells all this out for your protection, so you may prefer to use that.
-- Larry Wall


The FSF opinion, which is likely to be biased ;), is only their opinion. It is not a definitive legal ruling under copyright law in country X.

Regards,
Edward
bugman
Moderator
 
Posts: 1777
Joined: Thu Mar 19, 2015 9:01 am
Version: next

Re: Aircraft CC and GPL License and non-GPL FGAddon Question

Postby Hooray » Sat May 23, 2020 6:51 pm

bugman wrote:The FSF opinion, which is likely to be biased ;), is only their opinion. It is not a definitive legal ruling under copyright law in country X.


Ok, that's really unexpected and pretty amusing, i.e. this coming from your mouth - given that you have a long-standing history of quoting the FSF to make your postings sound more authoritative, and indeed have even pointed out previously that you are a FSF member (presumably for the same reason ?).

Kudos, that made my day :lol:
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 11791
Joined: Tue Mar 25, 2008 8:40 am

PreviousNext

Return to Aircraft

Who is online

Users browsing this forum: No registered users and 3 guests