Magisk-Modules-Alt-Repo / chroot-distro

install linux distributions on android
GNU General Public License v3.0
87 stars 7 forks source link

Code license #12

Closed jjkola closed 2 months ago

jjkola commented 2 months ago

I just realized that code does not have any license mentioned. What is the license? MIT? GPL? Something else?

YasserNull commented 2 months ago

License what?

jjkola commented 2 months ago

License for the source code. In other words, what are the terms for usage/modification/sharing of the code. I would assume that since you have released the source code to public, that the code can be expected to be under open source license (altough this is not always the case).

Please note, that license and copyright are two different things. Even if you license the code under certain terms you still retain the copyright. There are some licenses in which you relinquish your copyrights but many countries have laws where copyrights still remain with the author regardless of license terms. So, those licenses are more of author saying do what ever you want with my stuff, I don't care.

About open source licenses, there is basically two kinds of licences, permissive licenses and copyleft licenses. Copyleft licenses require that all the modifications are done under same license and in certain cases may even affect other source codes. Permissive licenses on the other hand are permissive of what can be done and the range of permissions vary quite much, some even allowing to chance the license.

One more thing, there is no obligation to license all the stuff under same license. You can for example license the source code with some license and artistic stuff (for example images, prose) with some other license (Creative Commons is commonly used).

About my contributions, I'm okay with whatever license you choose unless it is some weird/obscure one. So, for example, I'm okay with GPL, MIT, PD (Public Domain). If you want to license under your own terms then I would like to see the terms before you start to use it so that I can decide whether I want to license my own modifications under same terms.

YasserNull commented 2 months ago

There is no license, you can modify it, share it, or sell it, but only then by changing the name and rights.

jjkola commented 2 months ago

That can already be used as a license. There is a few things to clarify. What do you mean by "only then by changing the name and rights"? Copyright can't be taken but it can be transferred. And also, does that "only then ..." apply to all of them, or only to selling?

YasserNull commented 2 months ago

In fact, I did not know the previous license, but after I searched, I found a suitable MIT license.

jjkola commented 2 months ago

To me, your terms does not sound like MIT license, or more specifically the last part is not part of MIT license. I would like to suggest using standard licenses. If a situation occurs that there is two or more competing versions (forks) of the software then in that situation it should be dealt outside of the license.

If you want to prevent someone from using your code commercially without your consent then you can dual license the code. This means that you specify open source license for open source usage and then specify the license to be used if somebody wants to use your code commercially. This is seldomly useful for hobby projects but is seen more often when a company open sources their own software.

Also, there is license proliferation which is a problem if the code base starts to get larger, and especially if you want to use third party code and / or library.

jjkola commented 2 months ago

And, to be clear, when I mentioned in #11 that I may start maintaining the chroot-distro, it was under assumption that you have stopped maintaining it (for what ever reason) as there was no reaction from you for many months. I have no interest creating a competing fork of it.

Also, when I suggested using my version instead of the official version it was purely to help people using it until the official version has all the needed fixes in.

YasserNull commented 2 months ago

... You can make changes yourself because I added you.

jjkola commented 2 months ago

Thanks, but before that I want to be sure we are on the same page. Since you already found MIT license favorable, do we go with it, or do you want a different one?

YasserNull commented 2 months ago

Do you have any suggestion for licensing?

jjkola commented 2 months ago

Sorry, have been busy today. I'll try to provide a few alternatives tomorrow.

YasserNull commented 2 months ago

Don't worry

jjkola commented 2 months ago

So, I think there is three main choices and one based on popularity with alt-repos:

  1. MIT license (permissive license)
  2. GPL v3 license (copyleft license)
  3. BSD 3 clause license (permissive license)
  4. AGPL v3 license (copyleft license, seems to be pretty popular)

If you want to go with simple and permissive license, then you can choose MIT license. If you want to ensure that the source code always remains open source, then choose GPL v3 (note however that as it is copyleft license it may affect other projects use of this project). BSD 3 clause is similar in MIT license being simple and permissive but it requires users of the code to notify end users that the project is being used (but they can't use maintainers/contributors names for promotion/endorsement without said persons explicit permission). AGPL v3 is mostly same as GPL v3 but with provisions for SaaS ie. if you use the code in your back-end then you need to open source the back-end application.

YasserNull commented 2 months ago

GPL V3