tstack / lnav

Log file navigator
http://lnav.org
BSD 2-Clause "Simplified" License
8.07k stars 324 forks source link

readline license is GPL #673

Open ryanjarvis opened 5 years ago

ryanjarvis commented 5 years ago

lnav has a dependency on readline. If it is linking to readline, that means lnav needs to have a GPL license as well. See here for more information: https://en.wikipedia.org/wiki/GNU_Readline#Choice_of_the_GPL_as_GNU_Readline's_license

That has unfortunately put the brakes on my company adopting this tool in our workflow.

Consider refactoring to utilize libedit, editline, linenoise, etc. -- something with a more friendly licensing scheme.

tstack commented 5 years ago

That has unfortunately put the brakes on my company adopting this tool in our workflow.

Not sure I understand, why would the license affect your workflow? If you're not redistributing lnav, why would it matter?

ryanjarvis commented 5 years ago

Firstly, we did want to install lnav as part of our production machines before sending them out to customers. This would allow our team to simply ssh into the machine and view the logs locally just like they would use tail. Currently, we don't use a log shipper or expose our logs via a url because we have sensitive information contained in our logs that we don't want anyone else to see. If you have ideas on how to use lnav under these conditions, let's talk.

Second, I work for a startup. Frequently, startups have to adhere to certain requirements when seeking any outside capital. And one of these requirements is to certify that there is no GPL'ed code anywhere on production machines, including in our source code or installed separately. Even if lnav were to be installed by a technician during an on-site visit there are procedures that require him to uninstall it after. (This is all coming from our attorney who has worked with many startups in the past)

So right now for us to use lnav we would need to certify that the license for lnav is correct and no GPL code was used in its executable. HTH.

tstack commented 5 years ago

Unfortunately, lnav uses some features of readline that are not yet emulated by libedit. So, it's not just a matter of dropping it in at the moment.

frederikaalund commented 3 years ago

I'm not a lawyer.

It's my understanding that if you ship lnav together with your non-GPL programs then the resulting distro is an aggregate and not a collective work. In practice, this means that even though lnav itself must adhere to the terms of the GPL, your programs do not have to. The GPL FAQ mentions this specific scenario.

See https://softwareengineering.stackexchange.com/a/264775/101058