GPL,LGPL许可

时间:2011-01-04 12:34:44

标签: gpl lgpl

我的应用程序使用2个库(未修改)。第一个是GPL,第二个是LGPL。这意味着我的应用程序需要在GPL和LGPL下发布,因为这两个库将随我的应用程序一起发布。没关系。现在,应用程序公开了插件基础结构,因此任何人都可以为它编写插件。插件将无法直接与文本开头提到的那两个库进行通信,因为他们不知道应用程序背后的内容。插件不随应用程序一起提供。用户将能够从应用程序的开放/公共插件列表中选择要安装的插件。

问题:

  1. 插件是否也需要在GPL下发布?
  2. 有没有办法在封闭的源代码许可下发布一些插件?哪一个?
  3. 什么是阻止公司编写客户端(应用程序)方面免费且在没有商业许可证的情况下在服务器端免费的插件的最佳许可方法? (插件调用为服务使用收费的Web服务)。在这种情况下,我希望公司支付一些费用,一方面这是商业用途。例如,某人有一个Web服务,可以在各种格式之间转换图像。有人写了需要用户帐户信息(登录)的插件。插件连接到他的Web服务,进行身份验证,转换图像并向用户帐户收取一定的费用。在此示例中,插件可以免费安装和使用。用户的选择是否完全使用它。
  4. 这样的事情可能吗?

    感谢。

2 个答案:

答案 0 :(得分:4)

你做了一些毫无根据的假设。

例如,您假设您的应用必须获得LPGL许可,因为其中一个库是。那是不真实的。如果您的应用程序获得GPL许可,则可以使用LPGL库。这是合乎逻辑的,因为GPL许可证实际上是LGPL的超集。

GPL也不是病毒式的。 GPL库的版权所有者不能要求您将GPL强加于第三方插件。 (他可以要求你按照这些条款分发你自己的插件.GPL没有。包装为插件但功能类似于强制库的库是一个灰色区域。)

所以,Q1:No。Q2:是的,保持这些插件可选,界面定义明确。 Q3。你不能,真的。许多国家/地区在版权法中都有例外,当版权法用于限制互操作性时,会限制版权法的范围。由于所描述的插件恰好存在于您的程序与其Web服务之间的互操作性,因此版权法将受到限制。其次,这适用于全球,GPL许可证禁止您对您的计划施加限制。因此它不能拒绝这样的商业插件。

答案 1 :(得分:1)

  1. 热烈的辩论。具体来说,如果程序提供的API用于转发呼叫,则插件基本上在逻辑上依赖于所述库,因此被一些人认为受GPL约束。至少必须合理地确定所述插件可以“自己”/“独立地”运行并且不依赖于代码 - 从法律角度而不是技术角度。难以制定,IANAL等,最佳做法不是留在灰色地带;更好的发布代码:比律师便宜,让用户也开心。

  2. 如果所说的插件合理地独立于所使用的库(参见第1点),您可以选择您喜欢的任何许可证。

  3. 您无法逼真地阻止某人为您的程序编写与非免费服务接口的插件。您可以阻止用户通过使用数字签名等技术措施来使用此类插件,但这也可能会对freebeer服务和freefreedom代码作者的作者产生影响。