espressif / ESP8266_NONOS_SDK

ESP8266 nonOS SDK
Other
929 stars 535 forks source link

Relicense to MIT or Apache2.0? #259

Open paravoid opened 5 years ago

paravoid commented 5 years ago

Perhaps contrary to popular belief, the Non-OS SDK is currently licensed under a custom license (the so-called "Espressif MIT"). This is a license based on the MIT license but with an additional term for use on ESPRESSIF SYSTEMS ESP8266 only.

This is a material difference: this is not an OSI-approved license (and is thus not an open source license). It also is not a GPL-compatible license (neither v2 nor v3), as it places "further restrictions" to the terms of the GPL.

Most notably, esptool's ships with both a source and a binary copy of flasher_stub, that has been linked against the SDK, and is supposedely licensed under the GPL; I believe this makes it undistributable.

The RTOS SDK was relicensed last year from Espressif MIT to Apache 2.0 (espressif/ESP8266_RTOS_SDK@19aed2e67ffcc27ba4dca9aad4b4264f62c4bcc2).

Would it be possible to relicense this to an unmodified MIT license, or to the Apache 2.0 like the RTOS SDK, and retire the custom Espressif MIT license? Thanks!

paravoid commented 5 years ago

I guess I should also mention: Apache 2.0 is a GPLv3-compatible license, but would still not be GPLv2-compatible. esptool seems to be licensed under a GPLv2 and I don't see an "or later version" clause anywhere(?), so the esptool/SDK license incompatibility issue will remain. That incompatibility exists today between esptool/ESP-IDF too, as far as I can tell.

One option here would be to also relicense esptool under the GPLv3, and make sure that going forward everything that Espressif releases is under either the Apache 2.0 (when a permissive license is preferrable) or the GPLv3 (when a copyleft license is preferrable).

Another option would be to dual-license (all of!) the SDKs with the Apache 2.0 + MIT license. (Others have experimented in the past with GPLv2 exceptions to the Apache 2.0, but I would not recommend them in this case.)

paravoid commented 4 years ago

The esptool issues have been resolved since.

However, this issue remains... Now that the NonOS SDK is deprecated and under a soft freeze, perhaps it would be a good opportunity to relicense? This would bring parity with the RTOS SDK and IDF, and permanently retire the Espressif MIT license that is not an open source license (and sort of an oddball that everyone is confused about). Thanks for the consideration!