Spritetm / libesphttpd

NOTE: THIS CODE IS UNMAINTAINED. Please take a look at https://github.com/chmorgan/libesphttpd instead.
125 stars 109 forks source link

Thoughts on relicencing to gplv3? #43

Open chmorgan opened 7 years ago

chmorgan commented 7 years ago

It would ensure that for commercial or other use that changes are received back, and its required for inclusion in the esp-idf.

I'm asking because I'm making some improvements and I like to know that people can use my improvements but that any other improvements will be shared back for all of us to use.

Spritetm commented 7 years ago

and its required for inclusion in the esp-idf.

Erm, where do you get that from?

Spritetm commented 7 years ago

Actually, making this thing GPLv3 would make it impossible to distribute devices with esp-httpd in it at all. As far as I understand it, if you license something under GPLv3 and distribute the binaries (for example, inside a device), then you need to also offer sources for all libraries and objects linked into that application. Needless to say, without being able to offer the sources for the WiFi drivers in esp-idf, essentially anyone who includes GPL-licensed code in their firmware, that firmware is not distributable in any binary form when it also uses BT or WiFi. Needless to say, that would very much limit the use of an embedded webserver.

Spritetm commented 7 years ago

Besides that, I very much like the beer-ware license. I already got a few beers out of it :P

chmorgan commented 7 years ago

You know, I was thinking about another project entirely that required gplv3!

Is there another share-alike license that you'd be open to? Libesphttpd is so great that I'm sure people are using it and it seems fair, to me, to ask that they give improvements back in exchange for leveraging the great prior work that was done. I totally get the beer ware license. I'm a long time oss developer and I'm always trying to make sure my contributions are shared but ensuring that others share likewise. I've got some great improvements coming, in addition to the open PR, and wanted to see if we could get alignment on a license that would ensure improvements stayed in the public space for others to use.

chmorgan commented 7 years ago

How about the mpl v2 with a mention of the beer license?

I use mpl v2 for my go projects because they are compiled in and not libraries, so a similar situation to embedded use, and it requires changes be made public.

chmorgan commented 7 years ago

@Spritetm any consideration of the mplv2? It would let people use the software for any purpose but would ensure that the community received back the changes and improvements. This is important to me as it ensures that OSS can be widely and easily used and is somewhat copy-left for future users.

Spritetm commented 7 years ago

Yeah, I gave it some thought and decided against it. I think libesphttpd is pretty much a mature product, and I don't think there will be any breathtakingly big things that anyone who uses this commercially can send back to the project. Even if that's the case, I feel like enough people are actually contributing, even when using this commercially. Add to this the fact that if I were to do this in the right way, I'd have to get the okay from all contributors to this project, plus the fact that I have better things to do than mess about with legalese, and I'm not going to change the license.

In case this actually is show-stopping for you: at least for my contributions to libesphttpd, you hereby have my official permission to fork those and re-license them under MPLv2. Make sure to get that permission from all other contributors before you fork as well, however.

chmorgan commented 7 years ago

I can appreciate that. If you reconsider about the main repo here let me know. I may reach out to some of the other contributors so I can unblock the changes I've got pending.