saker.build icon indicating copy to clipboard operation
saker.build copied to clipboard

AL2.0 and/or MIT

Open sirinath opened this issue 5 years ago • 4 comments

Is there a chance to change the license of Saker and related projects to use a permissive license like AL2.0 and/or MIT.

sirinath avatar Jan 05 '21 13:01 sirinath

There are currently no plans to change the licensing of the project(s).

The goal of the current licensing scheme is to allow developers to use the saker.build system for building their software projects. This can be done with the current licenses, and without the need to apply a specific license to the project that you're building.

Although the projects are licensed under GPL-3.0-only, using it for building projects doesn't apply any restrictions on the built projects themselves. (Be it commercial or non-commercial)

The current licensing scheme also allows creating extensions for saker.build and related projects, as the API JARs that can be used for compilation are usually licensed under LGPL-3.0-only. Therefore you can create and distribute plugins/extensions for saker.build without the need of using GPL licensing for them.

These are the use cases that are crucial to this project and the current licensing enables it while keeping it open.

If you have a special use case that doesn't fall under any of the above, feel free to discuss it further here, or by sending a mail to [email protected].

Sipkab avatar Jan 05 '21 16:01 Sipkab

What are these LGPL jars that were mentioned? From my preliminary search every component (or at least their source code - which would mean that the compiled part is also affected) of saskerbuild is licensed under the GPL 3.0. It would be nice to know what can be used and what cannot be used as I want to prevent any contamination license-wise. Not knowing what could get my project infected as of now is a dealbreaker for me

Geolykt avatar Aug 30 '22 17:08 Geolykt

Each released version of a package can contain multiple bundles. (A bundle is a JAR file.) Each bundle can be licensed differently, and when you use a given bundle, you need to comply with the license of that specific bundle.

Let's look at an example, the 0.8.17 release version of saker.build: https://nest.saker.build/package/saker.build?version=v0.8.17&tab=bundles

The saker.build-v0.8.17 bundle is released with the GPL-3.0-only license. When you use this bundle, you need to comply with GPL 3.0. So generally if you compile your software with this JAR in the classpath, or distribute it, you need to comply with GPL 3.0.

The saker.build-api-v0.8.17 bundle is also available, which is licensed under LGPL-3.0-only. This bundle contains the API classes of saker.build-v0.8.17. If you use this bundle during compilation, there's no requirement for your software to be licensed under GPL, LGPL, or whatever.
Note that the saker.build-api bundles don't contain the saker.build runtime, and they are to be only used for compilation.

This licensing scheme allows extensions to be built without the GPL license infecting the source code of such extensions. It also requires that software distributions that include the saker.build runtime to be licensed under the GPL license, keeping the source code open.
You can also use saker.build to build your project without having GPL infecting your codebase, presuming you're not redistributing or compiling against GPL licensed code.

Each bundle should include a META-INF/LICENSE file that specifies the license of each bundle. This license information should also match the info on the bundle pages of https://nest.saker.build/. (Like on the above example page) If you see a difference, feel free to report it.

(Edit: If you're wondering, as a copyright holder, it is possible for us to distribute bundles under LGPL, even if the code that it is being built from is licensed under GPL.)

Sipkab avatar Aug 30 '22 18:08 Sipkab

Furthermore, if your use-case requires different licensing, and the current scheme doesn't allow that, I'm happy to discuss different licensing options, most likely without the expectation of any kind of compensation.

Sipkab avatar Aug 30 '22 18:08 Sipkab