12

First Google never "forked Java" for Android. Google implemented its own Java for Android, but when doing so copied the API of Oracle JDK. (and also copied a method named rangeCheck of 9 lines of utterly trivial code). You must to be careful when you say "Java". Oracle has licensed OpenJDK under GPLv2 with the classpath extension. This is an open source ...


7

Yes, this is possible, and Deluge's approach appears to be roughly in line with the FSF's recommendations. The GPL FAQ has this to say on exceptions for GPL-incompatible libraries: What legal issues come up if I use GPL-incompatible libraries with GPL software? If you want your program to link against a library not covered by the system library ...


7

No you cannot preserve exceptions in GPL 3, so yes the same situation as your GPL + MIT analogy applies. Someone can redistribute their derivative under GPL 3 only, which means that you cannot incorporate their changes and continue to provide your exception. GPL 3 allows additional terms under section 7; these additions are treated as part of the license: ...


7

The LGPL and GPL + the Classpath exception share the property that if you link code under these terms into your program, the resulting derivative work does not have to be made available as free software. Instead you can copy and distribute the resulting binary executable under terms of your choice. This means that the source code does not have to be ...


6

Ah, but OpenJDK is not under the GPL. It is under the GPL with the Classpath Exception. You can read more about the class path exception here. Here's the bulk of the exception: As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license ...


6

This is probably not in compliance with the Debian Free Software Guidelines or the Open Source Definition, both of which prohibit discrimination against persons or groups. However, your case is interesting because even in the most restrictive case, it's still the normal GPL. Your discriminating clause imposes one of two states, and each state by itself would ...


5

To review, the issue here is that Google used the structure of the Java API when implementing their own software. The appeals court found that the structure of an API is eligible for copyright protection, so Google's implementation was considered a derivative work of that API structure. The API structure is part of both Oracle's propietary JDK and Oracle's ...


4

Some of the OpenJDK code is covered by the classpath exception, documented as follows (the second paragraph constitutes the exception): Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. ...


4

The GPL with some linking exception is still just the GPL, but with extra permissions. These extra permissions only apply to a specific module, and they do not extend to other modules that are only licensed under the GPL, without this extra permission. Therefore, you cannot create your own modules with a linking exception as an isolation layer between GPL ...


3

A CLA as a GPL extension may be possible, but provides no particular advantages. This answer will only discuss GPLv3, as it includes an explicit mechanism for additional terms. GPLv3 additional permissions […] are terms that supplement the terms of this License by making exceptions from one or more of its conditions. […] When you convey a copy of a ...


3

That is an exception used for the GPL. The GPL is pretty strict and demands that even linked code is put under the GPL. That also applies to compiler or programming languages released under the GPL. For instance the GCC, the GNU Classpath project and OpenJDK use the GPL as license. Unmodified it would mean, every program developed with these tools would be ...


2

Yes, you can achieve your goal with the GNU GPL, except for prohibiting commercial use. Section 7 of the GNU GPL states that you may add "additional terms" as long as they do not restrict the rights granted by the GNU GPL. In your case, you want to grant an additional exception from the conditions in the GNU GPL or at least clarify your point of view. So ...


2

Regarding your second option, the LGPLv3 is created by using the "Additional Permission" option from the GPLv3. This means that the clauses from the GPLv3 also apply to the LGPLv3 (except where the LGPL says otherwise). So, the option of granting additional permissions (for example, to create derived classes from the generic classes without invoking the ...


1

The AGPL requires source-sharing only when someone interacts with a service that is based on AGPL-licensed code (or, when you physically distribute work that includes AGPL-licensed code). If no end users interact with your test-enabled version of the service that includes AGPL-licensed code, then there is no one to whom you are required to send the source ...


1

It will be more like having two licenses. One that you grant only to a specific group of people.


1

That would not be a Free license - discrimination against (or FOR) persons, groups, or field of work means it is non-free. What you can do - if the code is all yours - is to dual license it. Post it via GPL for whoever to use, and on your website simply state "green eyed redheads can contact us for alternative licensing"


1

What if I don't need the whole library code? Am I allowed to take only parts of the library (only some functions), compile those parts into a separate module and then link my code to that separate module and distribute the resulting executable on my terms? IMHO yes. And you would still need to attribute and redistribute the corresponding source code of this ...


1

You'll have to add a file stating exactly what files are available under which conditions if you provide all. You'll have to ask the company lawyer for exact details. You might want to replace the non-distributable/non-changeable files with some sort of replacement or at least a mockup. It makes little sense to share the software unless there is a way to ...


1

As I understand the GPL, it would be more restrictive than you desire. The situation of 'closed-source linksTo openSourcePlugin linksTo yourLibrary' would, I believe, look like 'linkage' in the eyes of the GPL. If you use LGPL, then you have the opposite problem. Of course, since you own the copyright, you can choose to selectively enforce your rights -- ...


Only top voted, non community-wiki answers of a minimum length are eligible