问题标签 [gpl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
674 浏览

header - 如何最小化 GPL 版权声明使用的地方数量?

Gnu GPL 页面 提倡在 GPL 项目的每个文件中包含以下标题:

该文件是 Foobar 的一部分。

Foobar 是免费软件:您可以根据自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它,无论是许可证的第 3 版,还是(由您选择)任何更高版本。

Foobar 的分发是希望它有用,但没有任何保证;甚至没有对适销性或特定用途适用性的默示保证。有关详细信息,请参阅 GNU 通用公共许可证。

您应该已经收到了一份 GNU 通用公共许可证的副本以及 Foobar。如果没有,请参阅http://www.gnu.org/licenses/

我觉得这是一个过度杀戮。它不能更短,并以某种方式引用 COPYING 或 LICENSE 文件吗?

0 投票
4 回答
692 浏览

gpl - GPL 例外的有效性

我已签约修改根据 GPL 发布的软件。我所咨询的这家小型研究公司将提交对修改后软件输出的分析,作为对美国国防部 RFP 的回应的一部分。但有一个问题。

源目录包含一个名为“COPYRIGHT”的文件(以及您的标准 GPL.txt),其中包含以下文本:

“本程序是免费软件。特此授权根据自由软件基金会发布的 GNU 通用公共许可证 (GPL) 的条款使用、重新分发和/或修改它,唯一的例外是该软件及其所有部分它可能永远不会用于任何军事目的,无论是研究与否,商​​业或其他。 您可以应用 GPL 的第 2 版,或(根据您的选择)任何更高版本。

此限制显然与 GPL 第 6 条不兼容(......您不得对接收者行使此处授予的权利施加任何进一步的限制......

因此,他们似乎违反了 GPL。

我可以认为他们对我的 GPL 权利的限制无效吗?

0 投票
2 回答
465 浏览

open-source - 更改开源软件以转移捐款

我制作了一些开源软件,在 GPL 下发布,并打算让用户有机会向我发送捐款,如果他们愿意的话。我突然想到,由于开源许可证允许任何人修改软件,因此有人可以更改应用程序显示的“在此处捐款”消息以指向他们自己的网站/PayPal 帐户并开始收集我的捐款。有没有人听说过这种情况,GPL 中有什么禁止它的吗?

0 投票
2 回答
5350 浏览

open-source - 在应用程序中使用 GPL v2 DLL

我正在寻找一个参考,说明如果我的应用程序的源代码链接到其源代码在 GPL v2/3 下发布的二进制文件,我是否需要重新分发它的源代码。

谢谢,伊甸园

0 投票
3 回答
841 浏览

licensing - 是否应该将某些 GPL 代码翻译成其他语言作为 GPL 许可?

是否应该将某些 GPL 代码翻译成其他语言作为 GPL 许可?

例如,我们有 x264 C/C++ H264 编码开源 GPL 库。我们将它从...... C\C++ 翻译成 Java 或 C# 我们应该将我们的代码许可为 GPL 吗?

0 投票
3 回答
554 浏览

plugins - 在 GPL 应用程序上允许非 gpl 插件/模块的正确方法是什么?

我开发了一个开源 CMS,它在 GPLv3 下获得许可,我想打开插件/模块架构,让任何人都可以贡献自己的扩展。但是,我想让贡献者自由选择他们想要的扩展许可证,而不是强迫他们使用主应用程序的许可证。

我的理解是,普通的 GPL 许可证也会迫使他们将扩展作为 GPL 代码发布,但是由于这些是扩展而不是应用程序的核心功能,所以我不清楚 GPL 的立场是什么,或者如果有更合适的开源许可证。

0 投票
6 回答
1182 浏览

open-source - 限制较少的类似 GPL 的许可证

情况:

我想为一个开源项目选择一个许可证。

在考虑过 GPL 与 BSD/MIT 之后,我更喜欢 GPL,因为它保护了软件的开源性。但是,我更喜欢限制较少的东西。

我对不同版本的 GPL 不兼容这一事实感到特别好笑!!

我希望软件保留 FOSS,但我不希望许可问题妨碍将源代码合并到其他 FOSS 项目中。

要求:

  1. FOSS(免费/开源)
  2. 防止合并到闭源软件中
  3. 不会阻止合并到具有其他许可证的开源软件中

有这样的执照吗?

潜在问题:

我知道 #3 和 #2 可能看起来是矛盾的,但我认为有一些方法可以解决它,例如,使用许可字词,以便:

  • 如果您将 FOSS 软件合并到使用类似 gpl* 许可的软件中,您可以重新许可该许可
  • 否则,您不得更改许可证

其中 gpl-like 是任何要求整个项目都处于相同许可证下的 FOSS 许可证。

请注意:

这个问题是关于是否有这样的许可证。这不是试图创造一个。

0 投票
7 回答
707 浏览

gpl - 分发给选定数量的客户时的 GPL 限制?

我有一个小型桌面应用程序,它依赖于 VLC,这是一个在 GPL 下获得许可的应用程序。它不与任何 VLC 库链接,但它创建一个 VLC 子进程并通过标准输入和标准输出流进行通信。我的应用程序将被许多客户使用。它不会成为公开可用的工具。

在这种情况下,GPL 要求我做什么?我是否只需要为这些客户开源我的代码?还是我需要向全世界公开?

编辑
一些人提到,如果我只是调用 GPL 可执行文件而不实际链接 GPL 代码,我很好。但是,在看到这些消息来源后,我对此不太确定:

我会接受可以为我澄清这个问题的答案。

0 投票
5 回答
6076 浏览

windows - 与专有库链接的 GPL 代码是否取决于先创建哪个?

微软创建了他们的 windows 和 MFC DLL 库等。一个开源开发者编写了一个新的 MFC 应用程序并将源代码作为 GPL 发布。该应用程序必须与 MS DLL/库链接才能在 Windows 中运行,但我认为没有人可以争辩说我们现在有权强制微软的 GPL 他们的 DLL。

这是否意味着 GPL 许可证真的取决于首先“创建”哪个? 如果首先创建专有库(例如 Windows DLL),在没有链接的情况下发布,并且任何 GPL 代码,然后一个 GPL 程序与之链接,则 GPL 程序无法将专有库转换为 GPL,尽管专有代码是“链接”与 GPL 代码。

如果是这种情况,像 NVidia 或 RealNetworks 这样的公司可以做以下事情吗?假设他们喜欢将专有的 HDDecoding 媒体解码引擎库保密,但他们也想“利用”开源 GPL 代码来展示他们的硬件。

  1. 他们创建了一个专有库来进行媒体解码并发布一些示例代码。
  2. 有人(开源开发)创建了链接到这个专有库的“插件”,用于 GPL 代码,例如 XBMC、Mplayer 或 VLC。
  3. 他们是否可以争辩说,由于他们首先创建了专有库(就像 MS 首先创建所有 DLL),与其专有代码链接的 GPL 程序不会将它们转换为 GPL 代码。

理论上可以说,创建与 NVidia 专有媒体解码器库链接的 GPL vlc.exe 文件的开源开发人员违反了 GPL 许可。

这是否意味着在 Windows 中运行的所有 GPL 程序,例如 VLC、git、cygwin 等都违反了 GPL 许可证,因为它们肯定需要与专有的 Microsoft Windows 库链接才能运行。

案例2:这有什么问题:

NVidia 可以创建一个隐藏最新图形功能的新硬件抽象库。他们还用这个库创建了一个 FreeBSD 驱动程序,并发布了 BSD 驱动程序的源代码,而不是库源代码。

某人(Linux 开发人员)可以实现与此库链接的 linux 驱动程序,以创建适用于 Linux 的 NVidia 图形驱动程序。但是由于 NVidia 没有这样做,他们可以在启用“Linux 支持”的同时保持库源“隐藏”。

这肯定违反了 GPL 的精神。

这是否意味着在 Windows/Mac/Iphone/PSP3 中运行任何使用 GPL 源创建的 exe 也违反了 GPL 精神?

0 投票
9 回答
9086 浏览

licensing - 你的代码什么时候是“衍生作品”?

我试图弄清楚“衍生作品”的法律后果在哪些情况下会发挥作用。我的代码究竟何时是衍生作品

  • 在 GPL 下发布的 PHP 框架。

由于 PHP 拥有自己的许可证并且您正在使用 PHP 构建该框架,这不是 GPL 无效吗?

  • 商业 Wordpress 主题?

这不是“衍生作品”,因此因为 wordpress 是 GPL 而无效吗?

  • 插入到现有 GPL 框架中的商业类 - 但在该类中不包含对该框架的引用。

是衍生作品吗?

你看,我最初认为所有基于(或为)某事物构建的代码都是衍生代码——但事实并非如此。例如,苹果在他们的操作系统中使用了 Linux 部分——但他们的操作系统不是在 GPL 下发布的。

我们大多数人都为语言或基于这些语言的系统构建了库。那么我们的代码什么时候会成为别人代码的衍生品呢?