FedericoCeratto / nim-libsodium

Nim wrapper for the libsodium library
Mozilla Public License 2.0
46 stars 13 forks source link

License questions #22

Closed iffy closed 4 years ago

iffy commented 4 years ago

Libsodium is licensed with ISC, but I just noticed that this library is licensed with LGPLv3, so I'm trying to figure out what my obligations are.

As I understand it, LGPLv3 requires me to provide the source of nim-libsodium and also either:

  1. If I statically link to this library, provide a way for users to recompile with their own copy of nim-libsodium
  2. If I dynamically link to this library (I don't actually know how that would work), to let users bring their own copy of nim-libsodium and rebuild. Again, since nim-libsodium is compiled into a Nim executable, I don't think this is option is technically possible.

I'm not sure how to comply with the LGPLv3 license in a commercial, closed-source project. Any ideas? Would you be willing to change to ISC to match Libsodium? I'm happy to direct users here to the source and will continue to contribute patches back.

Thanks!

FedericoCeratto commented 4 years ago

Thanks for the question @iffy. Both solutions are possible in Nim (make a build object available to users or link dynamically instead of statically) but I'd be happy to switch to the more popular MPL-2.0 that allows static linking if @alaviss @enthus1ast @TimseineLPs are OK with it.

TimseineLPs commented 4 years ago

I'm ok with it.

alaviss commented 4 years ago

It's an OK from me also.

iffy commented 4 years ago

@enthus1ast ping -- Are you okay re-licensing nim-libsodium as MPL-2.0? I'm getting very close to releasing my software, and the current licensing will hold me back.

enthus1ast commented 4 years ago

@iffy sure i'm ok (just asking why not MIT?)

iffy commented 4 years ago

I'd be fine with MIT, ISC (to match libsodium) or MPL-2.0. @FedericoCeratto suggested MPL-2.0 (and that works for me).

FedericoCeratto commented 4 years ago

The license has been updated.

@enthus1ast MPL 2.0 protects developers and users from patent trolling. It does not address other problems, but it's better than nothing.