实用程序库的最佳许可许可证?


12

我有一个小型实用程序库,其中包含用Java编写的有用内容,我计划发布开放源代码。我一直在摇摆不定要使用什么许可证。我非常喜欢BSD许可证,该许可证简短易懂,但是我不需要/不需要有关在其产品文档中包含免责声明的条款。考虑将其删除。

那么,MIT许可证会更适合我吗?它没有BSD那样的背书禁止条款,这是我对BSD的认可。另外,麻省理工学院关于在软件的大部分内容上保留版权声明的条款是否仅引用源代码,而不是二进制形式或它们产生的任何文档?

通过调查有关该主题的其他SO问题,我看到一些人推荐Apache许可证。尽管进行了快速扫描,它实际上可以很好地满足了我的大部分要求,尽管即使这么多的法务人员也会使我的头部受伤(尤其是在凌晨2:30,我应该在床上而不是躺在床上休息)。

基本上我想要的是:

  • 容易明白,
  • 说您可以随意使用该代码,但在源代码上保留我的版权和许可声明,
  • 您无需将我的名字或我的产品或版权声明等放在您制作的任何文档,手册等中,
  • 请勿尝试将我或我的产品用作您产品的卖点(无论如何,我的认可绝对不重要!)
  • 并以合理的方式遮盖我的屁股 :-)

编辑:哇,30分钟,已经有一些不错的答复!作为回应:

如果可以,我不希望“混搭”并产生另一个开源许可证。使用标准许可证使我们所有人都更容易。

对屁股的评论有点面颊。提及的所有许可均包含的保修免责声明实际上就是我在说的全部。

编辑:阅读MIT许可证上Wikipedia页面后,我发现ncurses使用的是经过FSF批准的修改版,其中添加了非认可段落。我认为这对他们足够好,对我也足够。

我当时正在考虑使用Apache许可证,但是我不想介绍GPLv2的兼容性问题


我更改了答案以适应您的答案-这是一个非常相关的问题。

其他大多数许可证之所以成立,是因为它们不喜欢GPL。我知道为什么您不希望对实用程序库进行GPL编程,但是您是否考虑过LGPL,它最初是为实用程序库设计的?
John R. Strohm

Answers:


7

升压许可看起来像你想要的东西,不是吗?

Boost软件许可-版本1.0-2003年8月17日

特此免费授予任何获得本许可(“软件”)涵盖的软件和随附文档副本的任何人或组织,以使用,复制,显示,分发,执行和传输本软件的许可,以及准备软件的衍生作品,并允许提供软件的第三方这样做,但必须遵守以下条件:

本软件和本完整声明中的版权声明,包括上述许可授予,本限制和以下免责声明,必须全部或部分包含在本软件的所有副本中,以及本软件的所有衍生作品中,除非有此类声明。复制或衍生作品仅采用源语言处理器生成的机器可执行目标代码的形式。

该软件按“原样”提供,不提供任何形式的明示或暗示的保证,包括但不限于对适销性,特定目的的适用性,标题和所有权的担保。在任何情况下,无论是由于合同,侵权或其他原因引起的,与软件有关,与软件或软件的使用或其他方式有关的损害或其他责任,版权所有者或分发本软件的任何人均不承担任何责任。


它读起来就像是由律师重写的MIT许可证版本。:-)
Evan

而已 ;-)。该链接解释了理由和历史: boost.org/users/license.html就 我个人而言,我必须说我喜欢它。

6
  • 麻省理工学院关于在软件的重要部分上保留版权声明的条款是否仅参考源代码,而不是二进制形式或它们产生的任何文档?

我对许可的解释是,您只需要在软件上拥有版权声明(在第一句话中定义为许可)。这只会引用源代码和文档-二进制形式将不包含许可证,无论如何编译器都会丢弃所有注释。更不用说它不是人类可读的。

随时将此条款添加到MIT许可证中(您可以混合使用):

未经明确的事先书面许可,不得使用的名称或其贡献者的名字来认可或促销从该软件衍生的产品。

Apache许可证更具责任感,但对于程序员而言,所有“合法人士”都可能会吓them他们远离使用它。我认为(这不是法律建议),修改MIT许可证以包含禁止签注是最好的方法。最容易理解的是,保修豁免将涵盖您提出的任何直接或间接索赔。

编辑到作者的编辑: 如果您不想混合使用许可证,请使用Apache许可证。它可以完成您想要的所有事情,以及更多功能(包括一些不错的专利条款)。您的代码的许可证块很简单,因为它会链接到网站并且有据可查。


添加“未经事先书面许可,不得使用的名称或贡献者的名称来认可或促销从该软件衍生的产品。” 可能会使其与GPLv2不兼容,因为这是附加要求,GPlv2不允许这样做。
约翰内斯

5

我将Apache许可证用于我的项目。在开源Java世界中,这似乎是默认的许可证选择(主要是由于Jakarta项目的早期工作)。如果所有库都具有相同的许可证,那么将不同的库合并到一个项目中就比较麻烦。


1

您可以随时在MIT许可证中添加禁止条款。我看到许可证的某些版本在现有条款之后立即包含了该许可证。至于版权声明,MIT许可证将“软件”定义为“该软件和相关文档文件”。那肯定包括文档,我认为它也包括程序的二进制形式。


1

自己写。或查看CC许可:维基百科

而且甚至不要考虑“掩盖”你的屁股。如果您被起诉,是因为有人想怪您,那么最大的障碍就是为法律上的不便提供资金。请勿从任何角度遮盖。

除非您是Novell;)


是的,好吧,我确实故意离开了“合理的方式”……
埃文(Evan)2009年

有写你自己的问题是)它可能不是法律上正确和b)人必须认真阅读了整个事情,了解自己的权利和大多数人宁愿只使用他们已经知道的许可证
雷恩Henrichs

1

我使用zlib / libpng许可证。我认为它具有您想要的属性。它简短而简单,它明确指出了归属,但不是必须的,它不允许从源代码中删除版权声明,并且具有最小限度的语言免责声明。

关于拒绝认可并没有特别说明,但是在IANAL期间,我觉得这没什么大不了的。

  • 这是极不可能的。
  • 如果我的代码最终成为卖点,那我可能会很受宠若惊。
  • 如果我不赞成使用我的代码,那么我认为还有其他途径可以求助。如果有人试图通过广告宣传“ jamesdlin为此产品编写代码”来销售他们的产品,那么从技术上和客观上都是正确的,并且如果这实际上可以帮助他们销售副本,那就可以了。如果他们声称“ jamesdlin推荐此产品”,那就是诽谤。此外,在任何情况下,如果我的名字值得银行认可,那么我可能会有足够的追随者,无论如何我都会很容易质疑任何错误的背书。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.