mon*_*kut 2 python django licensing
我总是对许可证感到困惑,我正在再次阅读,但我确信有人已经理解了这一点,并且可以更清楚地解释它.
我试图让我的公司使用geodjango,并且作为一个典型的大型企业公司,他们不想开源所得到的项目.因此反对触及任何标有"GPL"的东西.
使用推荐的postgresql查看geodjango堆栈,许可证是:
Django - BSD许可证
Postgresql - BSD许可证
PostGIS - GPL
GEOS - LGPL
PROJ.4 - 麻省理工学院执照
GDAL - MIT/X许可证
psycopg2 - GPL
gpl上的维基百科条目说明如下:
许多最常见的免费软件许可证,例如最初的MIT/X许可证,BSD许可证(目前的3条款形式)和LGPL,都是"GPL兼容的".也就是说,他们的代码可以与GPL下的程序组合而不会发生冲突(新组合将GPL应用于整体).
来自维基百科的GPL条目,"兼容性和多许可":http://en.wikipedia.org/wiki/Gpl
使用带有geodjango的psycopg2/PostGIS组件,是否可以生成项目的GPL许可证?如果是这样,有哪些替代方案?
UPDATE
psycopg2有一个专门解决GPL应用方式的条款,感谢piquadrat.
小智 8
免责声明:以下是我的意见,并非旨在提供法律建议 - 请咨询有执照的律师.
通常,将psycopg2/PostGIS与GeoDjango项目一起使用并不会使其受GPLv2的约束.我将谈论PostGIS,因为其他人已经解决了与psycopg2相关的问题.
与其使用的其他地理空间库不同,GeoDjango不会"链接"到PostGIS.PostgreSQL是与PostGIS库(liblwgeom.so
)链接的,并且公开了多种SQL函数.GeoDjango调用SQL函数并使用它们的输出来完成它的工作.让我们来看看GPLv2的第0项:
本许可证适用于任何程序或其他工作,其中包含版权所有者发出的通知,声明可以根据本通用公共许可证的条款进行分发.以下"计划"是指任何此类计划或工作,"基于计划的工作"是指本程序或版权法下的任何衍生作品:即包含本程序或部分的作品.它,无论是逐字还是修改和/或翻译成另一种语言.
...
本许可不包括复制,分发和修改以外的活动; 它们超出了它的范围.运行本程序的行为不受限制,只有当本程序的内容构成基于本程序的作品(独立于运行本程序时)时,才涵盖本程序的输出.这是否真实取决于该计划的作用.
由于GeoDjango内置刚刚运行的PostGIS(通过调用其公共SQL API函数),和PostGIS的输出为地理空间数据和/或数值(基于PostGIS的不是源代码),很显然,我认为GeoDjango内置(或一个应用程序建立与它)不受GPL保护,因为它不是复制,修改,分发,也不是GPL代码的衍生作品.
注意我一开始就说"一般".如果您要分发包括 psycopg2和PostGIS的GeoDjango应用程序,那么您的代码可能需要遵守GPL.对于Web应用程序,这通常不是问题,因为代码几乎从未像传统的收缩包装软件那样分发给其他人.代码在您的服务器上运行,并且您分发的唯一内容是将程序(例如,HTML)输出给用户(侧栏:这就是为什么我避免使用GPL许可的JavaScript库,如瘟疫).这就是谷歌如何将自己经过严格修改的Linux内核保留给自己,因为他们的修改永远不会让服务器留在谷歌.
底线:如果您实际向最终用户销售/分发GeoDjango应用程序(他们获得了应用程序的副本),那么请不要包含GPL许可的先决条件,以避免触发您的专有代码的许可要求.换句话说,在现场安装这些库,这样就不能认为您使用闭源应用程序"分发"GPL源/目标代码.
归档时间: |
|
查看次数: |
1509 次 |
最近记录: |