License Wars MEGA THREAD (now with GPL!)

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
Yes, its theoretical, but important.

SSU is released under GPLv2, if I am not mistaken. How do you guys think about your license in this regard? Do you plan to change it due to this?
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,615
Reaction score
2,335
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
SSU is released under GPLv2, if I am not mistaken. How do you guys think about your license in this regard? Do you plan to change it due to this?

Right now, its a lesser problem on our agenda, but yes, we need to review our license. Actually, we would need to review it from time to time anyway. The first selected license is rarely the best. The GPL does for example not work at all for our assets.

The problem is simple: The GPL is defined by the FSF. The FSF is dogmatic towards their concept of open-source. A free API and free software, that is not also open-source, is dogmatic problem for them, that in their concept can't exist.

The problem is also the same for the Linux kernel and required some strong clarifications because of the GPU drivers.
 
Last edited:

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
Not sure if LIBAV and Orbiter Add-Ons can be compared. If someone creates a vessel add-on for the Orbiter under LGPL and I would like to take that code and transform it to X-Plane add-on. Then, it would require a fundamental rewriting of several sections to make it X-Plane compatible. Could such a work simply be called as a library that it used by X-Plane ? [This is only an example. No intentions to do that]

Does libav require rewriting when attached to a different application ?

LIBAV is a library that receives a data stream from the host, decodes it and gives back another data stream to be drawn to the screen. There're further inputs, as color saturation, contrast and brightness parameters that can be inputted by the host application, or perhaps by controls from a fourth part programmer.

Sound can be chained into a series of plugins to add effects or decode 3D stream data.

Basically, it's exactly what our vessels do: receives a data stream from Orbiter, and issues back another (by using Orbiter callbacks).

No library requires rewriting to be relicensed - it's enough and sufficient that all copyrights holders agree on re-releasing the code using another license - dual licensing is not uncommon.

However, if you are not the sole copyright holder you must write your own version of the intended code in order to do what you please with your codetree.


I am not exactly sure how should I understand the statement but it sounds like an Orbiter add-on under LGPL would need to do it's job regardless whether the Orbiter (Host application) is present or not. If that's true then a library could not depend on host application.

Nope. The (L)GPL definition of LIBRARY is clearly stated in the license: a bucket of bytes that should be statically or dynamically linked into a host application in order to provide functionalities.

Your or mine concept of library does not apply - in order to use (or not) the (L)GPL, you must accept the (L)GPL concept of what is a LIBRARY.

Out of the scope of licensing, you can use your definition of what is a library - it doesn't matter from the license point of view.
 
Last edited:

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
Can I apply the GPL when writing a plug-in for a non-free program? (#GPLPluginsInNF) If the program uses fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the license for the main program makes no requirements for them. So you can use the GPL for a plug-in, and there are no special requirements.
If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means that combination of the GPL-covered plug-in with the non-free main program would violate the GPL. However, you can resolve that legal problem by adding an exception to your plug-in's license, giving permission to link it with the non-free main program.
(emphasis mine)

It appears like a simple exception for Orbiter and its libraries would make the GPL "legal" again. One could argue that the fact that the addon is made for Orbiter - and Orbiter preceding the addon in terms of creation date - would make it clear that this exception is implied, but obviously nitpicking is the lawyers daily bread, so better be safe than sorry.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,615
Reaction score
2,335
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
(emphasis mine)

It appears like a simple exception for Orbiter and its libraries would make the GPL "legal" again. One could argue that the fact that the addon is made for Orbiter - and Orbiter preceding the addon in terms of creation date - would make it clear that this exception is implied, but obviously nitpicking is the lawyers daily bread, so better be safe than sorry.

Yes, but that does not automatically solve the problem for our assets.

Also, Orbiter add-ons are pretty much depending on the Visual C++ compiler and the Microsoft Windows SDK...
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
Which would make that a serious issue. If this opinion of you (and Jarmonik, I guess) is shared by Martin and the forum crew, it would mean that many addons are "illegal" in the sense of the forum rules. This would also mean that they need to be removed or re-licensed.

I'm afraid this can happen.

And I'm pretty sure I'm right about this GPL thing, as I deal with Open Source projects since the first versions of Linux (V 0.99 at that time), and did exactly the same mistakes, and was corrected by people that does Open Source for living.

On the bright side, GPL violations prosecuting is very rare and highly biased by *INTENTION*. FSF and EFF lawyers are not patent trolls, no one will pursue Orbiter for this.

And since Orbiter always had been closed source since the beginning, it' my opinion it can be argued that the original author intended to use LGPL instead and perhaps some compromise can be reached - mainly because our modules links against other modules that are not GPL, and GPL3 imposes serious limitations on GPL code linking against non GPL code (GPL2 has some restrictions, but by far, not so harsh as GPL3) - being the reason I defending that, for the ones that wants to go GNU style, the LGPL is the license to be used.

---- IMPORTANT ------


Double licensing is not uncommon, au contraire, it's commonly used on commercial software that also is open source (and GPL!).

Perhaps we can argue that every Orbiter Hangar hosted addon are double licensed? One license allowing it to be downloaded and used in Orbiter (and nothing more), and another the author think it's best for covering his work rights (and do not denies the other license)?
 
Last edited:

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,790
Reaction score
780
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
Only skimmed through the thread, but...

Why not use Fire And Forget "license": "Here is the code, here are the modules, have fun."?

Anything open-source is de-facto that, and it's not like module in question is something monetizeable or stealable in any case.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,615
Reaction score
2,335
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
Anything open-source is de-facto that, and it's not like module in question is something monetizeable or stealable in any case.

Thats not true - like some Router manufacturers have discovered and how a small today unknown company like SCO experienced.

The main reason behind a GPL is to ensure a give and take economy. Who takes your code can not prevent easily, that you can not take something back from him.

Of course, its theory. Of course obfuscation and executable compression can make it hard to prove.
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
If I remember correctly, the main problem for the GPL is source code being useless if depending on proprietary APIs. That's partially a problem with Orbiter, since its API is freely available, but proprietary and its freedom thus not guaranteed.

Yes, its theoretical, but important.

Your problem is not with Orbiter, since it is the Host Application and you are the plugin - and the GPL states that you can make an exception for this (a nuisance, not a problem).

Your problem is that you also depends of other closed source modules that are not part of Orbiter, so in this case, *YOU* are the linking client, and this can be a problem with GPL3 (and, in a very lesser extension, GPL2).

LGPL doesn't have such limitations, as it was designed exactly by cases like ours.

And again, assuming that you want to keep using GNU style licenses: since you are the copyright holder of your work, you can relicense your codetree to any license that suits you better.

Double licensing is possible and very used commercially.
 
Last edited:

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
I'm afraid this can happen.

So you think Martin and the forum crew are sharing your opinion and GPL software is illegal in the sense of the forum rules?
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,615
Reaction score
2,335
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
Double licensing is possible and very used commercially.

Yes, but still we need to find a real solution for the assets of our add-on (Meshes, textures, sound files, etc).

I would prefer a fully open solution (source files for the add-ons are available and you are allowed to edit them, as long as you publish them under the same license and give credit), but I am aware that not all GFX artists in the team agree to so much freedom and would prefer a tighter control.
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
Why not use Fire And Forget "license": "Here is the code, here are the modules, have fun."?

That would be the best approach, being this the reason I suggested BSD style license.

Anything open-source is de-facto that

Nope. Being able to reading the code is not enough, you must get explicit permission from the copyright holder to do that.

---------- Post added at 08:14 PM ---------- Previous post was at 08:10 PM ----------

(emphasis mine)

It appears like a simple exception for Orbiter and its libraries would make the GPL "legal" again. One could argue that the fact that the addon is made for Orbiter - and Orbiter preceding the addon in terms of creation date - would make it clear that this exception is implied, but obviously nitpicking is the lawyers daily bread, so better be safe than sorry.

Yes and nope. :)

That exception is one *YOU* can make to allow Orbiter to links against your code, but you will still have to deal with YOU linking to another add-ons, not all of them open source (much less GPL). GPL3 is terrible restrictive, GPL2 somewhat less.

LGPL doesn't have any restrictions.

By the less effort law, I would stick with LGPL (if you really want to use GNU Licenses).
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
Yes and nope. :)

That exception is one *YOU* can make to allow Orbiter to links against your code, but you will still have to deal with YOU linking to another add-ons, not all of them open source (much less GPL). GPL3 is terrible restrictive, GPL2 somewhat less.

LGPL doesn't have any restrictions.

By the less effort law, I would stick with LGPL (if you really want to use GNU Licenses).

Huh? The statement on the GNU site is pretty clear. Where did that come from now? Do you have a link?

You did not answer my question, BTW. Did I interpret your statement right for you thinking that GPL addons for Orbiter are illegal in the sense of the forum rules? Let's be clear on that, it is really important.

I ask that because it is the thing that really counts IMHO. If Martin or the forum crew here is not happy with GPL addons, it is clear that we need to do something about it. If they are fine with it - which is what I strongly suspect - all this discussions about the finer details of the GPL are moot, because as you already explained, violations in this regards are very hard to prosecute legally. They are relatively easy to follow in this community, though...

As for your less effort law: I'd rather retract my addons than release them under LGPL. Not that it would really harm anybody, anyway...
 

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,790
Reaction score
780
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
Nope. Being able to reading the code is not enough, you must get explicit permission from the copyright holder to do that.
A "license" and a "permission" is ringing in the air made by these words, and are as binding as that thin air.

You don't want your code stolen? Don't publish it.
You published it? Whoever want to would steal it.

Everything else is ringing in the hopeful's ears.
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
So you think Martin and the forum crew are sharing your opinion and GPL software is illegal in the sense of the forum rules?

I don't have the slightest clue about what they're thinking. :)

I think that perhaps they should be thinking about this.

I would not say the word "illegal" yet - GPL licenses are mainly focused on REdistributing other people work, it in any way limits what the original copyright holder does with his code.

So my proposition that every Orbiter Hangar published addon is already double licensed is not an absurd idea.

What I would advise is to explicitly state that for all new addons: "Every addon published on Orbit Hangar should be licensed in a way that allow Orbiter users to download and use it on Orbiter. You can (and should) double license it on any License of your choice, since it would not in any way restricts or denies the Orbiter Use license. By uploading your addon, you declares acceptance.".

An "Orbiter End User License" could be published, and a checkbox saying "I agree on double-licensing my add-on to OEUL" that must be ckecked to upload will be enough.
 
Last edited:

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
So my proposition that every Orbiter Hangar published addon is already double licensed is not an absurd idea.

What I would advise is to explicitly state that for all new addons: "Every addon published on Orbit Hangar should be licensed in a way that allow Orbiter users to download and use it on Orbiter. You can (and should) double license it on any License of your choice, since it would not in any way restricts or denies the Orbiter Use license. By uploading your addon, you declares acceptance.".

An "Orbiter User End License" could be published, and a checkbox saying "I agree on double-licensing my add-on to OUE" that must be ckecked to upload will be enough.

And what about the many addons NOT released on Orbit Hangar? Should they not release the code until they are ready to release, or should they rather use a very permissive license from the get-go?

The addon that started this discussion is such an example...
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
Huh? The statement on the GNU site is pretty clear. Where did that come from now? Do you have a link?

You are not familiarized with legalese. :)

From Gnu site:
You have a GPL'ed program that I'd like to link with my code to build a proprietary program. Does the fact that I link with your program mean I have to GPL my program? (#LinkingWithGPL)
Not exactly. It means you must release your program under a license compatible with the GPL (more precisely, compatible with one or more GPL versions accepted by all the rest of the code in the combination that you link). The combination itself is then available under those GPL versions.

Also from the same site:
Does distributing a nonfree driver meant to link with the kernel Linux violate the GPL? (#NonfreeDriverKernelLinux)
Linux (the kernel in the GNU/Linux operating system) is distributed under GNU GPL version 2. Does distributing a nonfree driver meant to link with Linux violate the GPL?

Yes, this is a violation, because effectively this makes a larger combined work. The fact that the user is expected to put the pieces together does not really change anything.

Each contributor to Linux who holds copyright on a substantial part of the code can enforce the GPL and we encourage each of them to take action against those distributing nonfree Linux-drivers.

And also:
How can I allow linking of proprietary modules with my GPL-covered library under a controlled interface only? (#LinkingOverControlledInterface)
Add this text to the license notice of each file in the package, at the end of the text that says the file is distributed under the GNU GPL:

Linking ABC statically or dynamically with other modules is making a combined work based on ABC. Thus, the terms and conditions of the GNU General Public License cover the whole combination.

As a special exception, the copyright holders of ABC give you permission to combine ABC program with free software programs or libraries that are released under the GNU LGPL and with independent modules that communicate with ABC solely through the ABCDEF interface. You may copy and distribute such a system following the terms of the GNU GPL for ABC and the licenses of the other code concerned, provided that you include the source code of that other code when and as the GNU GPL requires distribution of source code and provided that you do not modify the ABCDEF interface.

Note that people who make modified versions of ABC are not obligated to grant this special exception for their modified versions; it is their choice whether to do so. The GNU General Public License gives permission to release a modified version without this exception; this exception also makes it possible to release a modified version which carries forward this exception. If you modify the ABCDEF interface, this exception does not apply to your modified version of ABC, and you must remove this exception when you distribute your modified version.

This exception is an additional permission under section 7 of the GNU General Public License, version 3 (“GPLv3”)

This exception enables linking with differently licensed modules over the specified interface (“ABCDEF”), while ensuring that users would still receive source code as they normally would under the GPL.

Only the copyright holders for the program can legally authorize this exception. If you wrote the whole program yourself, then assuming your employer or school does not claim the copyright, you are the copyright holder—so you can authorize the exception. But if you want to use parts of other GPL-covered programs by other authors in your code, you cannot authorize the exception for them. You have to get the approval of the copyright holders of those programs.

What we must have in mind is that the GPL impose conditions to DISTRIBUTING GPL code. You can download, modify and use any GPL code in the way you want, absolutely no restrictions on that.

But if you intent to redistribute it, you must comply with GPL restrictions. Point.


You did not answer my question, BTW. Did I interpret your statement right for you thinking that GPL addons for Orbiter are illegal in the sense of the forum rules? Let's be clear on that, it is really important.

I think that we have a big misunderstanding here. :)

I'm just the messenger, I am not the one that would, by any sense, sue anyone of you guys. ;)

If you need to demand an answer, hire an attorney. All I have to give is my (very grounded) opinions.


I ask that because it is the thing that really counts IMHO. If Martin or the forum crew here is not happy with GPL addons, it is clear that we need to do something about it. If they are fine with it - which is what I strongly suspect - all this discussions about the finer details of the GPL are moot, because as you already explained, violations in this regards are very hard to prosecute legally. They are relatively easy to follow in this community, though...

First: Orbiter is not liable to anything. The addons developer are. Point.

Second: GPL is not a problem to Orbiter neither Hangar. It's a problem to the addon developer.

Third: If, and only if, anyone complains, then Hangar must takedown the addon. But please note that this can happens TO ANY ADDON NO MATTER THE LICENSE. GPL is not the problem here either; if you don't want to be liable for hosting copyrighted material, don't host anything. ;)

Fourth: I'm just the messenger!!! Honest! :lol:


As for your less effort law: I'd rather retract my addons than release them under LGPL. Not that it would really harm anybody, anyway...

It's your right, and nobody can do anything about it - we can just be sorry for that.

What would be a problem if LGPL was the only option. There're BSD Style, MIT, Common Creation, Moziila's, Eclipse's, etc. We are plenty of options, I don't see a need to such harsh statements.

---------- Post added at 08:50 PM ---------- Previous post was at 08:46 PM ----------

And what about the many addons NOT released on Orbit Hangar? Should they not release the code until they are ready to release, or should they rather use a very permissive license from the get-go?

The addon that started this discussion is such an example...

It's not a problem to Orbiter neither Hangar (or Forum).

It's a problem to be dealt between the add-on developer and the guys that receives a copy from the addon.
 
Last edited:

meson800

Addon Developer
Addon Developer
Donator
Joined
Aug 6, 2011
Messages
405
Reaction score
2
Points
18
You did not answer my question, BTW. Did I interpret your statement right for you thinking that GPL addons for Orbiter are illegal in the sense of the forum rules? Let's be clear on that, it is really important.
:2cents:
Jedidia and I had this discussion on licensing StackEditor. We eventually just decided simply on MIT.

In my reading of the GPL FAQ:
If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means that combination of the GPL-covered plug-in with the non-free main program would violate the GPL. However, you can resolve that legal problem by adding an exception to your plug-in's license, giving permission to link it with the non-free main program.

it's pretty clear that it is a GPL violation. Again, this is just my opinion. (It's also my opinion that their decision that loading a DLL suddenly makes the combo "one program" is stupid. For example, as far as I can tell, if Orbiter just wrapped the API with pipes, then addons/Orbiter wouldn't be "one program", even though honestly nothing has changed)

If Martin or the forum crew here is not happy with GPL addons, it is clear that we need to do something about it. If they are fine with it - which is what I strongly suspect - all this discussions about the finer details of the GPL are moot, because as you already explained, violations in this regards are very hard to prosecute legally. They are relatively easy to follow in this community, though...
And that's the thing. I am fine with it.

With the GPL violation, however, the only person that could sue/remove the addon would be the addon developer themselves. It is very very unlikely that an addon developer would make an addon under GPL, release it, then demand that OH take it down...

The solution seems to simply add an Orbiter exception. Unfortunately, many addons on OH don't have that exception. From a quick search, the following are licensed under GPL and don't have exceptions:
  • Launch MFD
  • HUDDrawer
  • CMGv1.0
  • SideMountHLV

Not that it matters anyway, because again only the addon developer could take an action against the plugin. I don't think the addon dev could demand Orbiter be taken down because of the addon's violation.

As for your less effort law: I'd rather retract my addons than release them under LGPL. Not that it would really harm anybody, anyway...
I would be sad to see them go :(
 
Last edited:
Top