rikyoz / bit7z

A C++ static library offering a clean and simple interface to the 7-zip shared libraries.
https://rikyoz.github.io/bit7z
Mozilla Public License 2.0
623 stars 113 forks source link

Re-licensing under the Mozilla Public License version 2 #86

Closed rikyoz closed 2 years ago

rikyoz commented 2 years ago

Greetings! For a long time, many people asked me for help since they couldn't use bit7z due to its GPLv2 license or explicitly asked about the possibility of a different license model (issues #58 and #84). Eventually, I realized that choosing the GPLv2 was a mistake.

Why

Due to the "viral" nature of this license, and the fact that bit7z is a static library, if someone wants to use it, they can release their project only under a license compatible with the GPLv2. This characteristic prevents bit7z from being used in commercial software or even in non-GPL open-source projects, thus limiting wider adoption of the library. I'm personally not against the commercial usage of this library, provided that any change to it is shared with the community.

License choice

After reviewing many software licenses, I concluded that the one that best fits bit7z's features and user needs is the Mozilla Public License v2. A weak copyleft license like the MPLv2 would allow authors to use the library without modifications and without needing to change their projects' (proprietary or FOSS) licenses. On the other hand, the MPLv2 requires disclosing to the community any modifications to the original library's source code (always under the MPLv2).

How

Being an open-source project, everyone who has contributed to bit7z v4.0 needs to give their permission so that the license change can go forward. This is the checklist of contributors according to git shortlog --summary --numbered --email:

Could you kindly reply, "I hereby agree to publish my contributions to bit7z under the MPLv2 license"? If you have any objection to re-licensing your contributions, please let me know the reasons. I'd be happy to consider alternative licenses as well! Thanks!

When

Once obtained permission from the contributors, I will update the LICENSE file and the license header comments in the source code files; then, I'll start working on the last few details for the release of the bit7z v4.0 beta.

cjtallman commented 2 years ago

Sure thing.

I hereby agree to publish my contributions to bit7z under the MPLv2 license.

csabesz88 commented 2 years ago

I also agree to publish my contributions to bit7z under the MPLv2 license.

Cheers

kenkit commented 2 years ago

I hereby agree to publish my contributions to bit7z under the MPLv2 license

rikyoz commented 2 years ago

Thank you all!