大多数软件的许可协议旨在剥夺您共享和修改软件的自由。 相比之下,GNU 通用公共许可证旨在保证您共享和修改自由软件的自由——确保软件对所有用户都是自由的。 本通用公共许可证适用于自由软件基金会的大多数软件以及作者承诺使用它的任何其他程序。(自由软件基金会的某些其他软件则受 GNU 库通用公共许可证的约束。)您也可以将其应用于您的程序。
当我们谈论自由软件时,我们指的是自由,而不是价格。 我们的通用公共许可证旨在确保您拥有分发自由软件副本(如果您愿意,可以为此服务收费)的自由,您收到源代码或可以在需要时获得源代码,您可以更改软件或在新自由程序中使用其片段;并且您知道您可以做这些事情。
为了保护您的权利,我们需要做出限制,禁止任何人剥夺您的这些权利或要求您放弃这些权利。 如果您分发软件副本或修改软件,这些限制将转化为您必须承担的某些责任。
例如,如果您分发此类程序的副本,无论是免费的还是收费的,您都必须将您拥有的所有权利授予接收者。 您必须确保他们也收到或可以获得源代码。 并且您必须向他们展示这些条款,以便他们了解自己的权利。
我们通过两个步骤保护您的权利
为软件授予版权,以及
为您提供此许可证,该许可证授予您复制、分发和/或修改软件的法律许可。
此外,为了保护每位作者和我们自己的权益,我们希望确保每个人都明白,此自由软件不提供任何担保。 如果软件被其他人修改并传递下去,我们希望接收者知道他们拥有的不是原始版本,这样其他人引入的任何问题都不会影响原始作者的声誉。
最后,任何自由程序都不断受到软件专利的威胁。 我们希望避免自由程序的再分发者单独获得专利许可,实际上使程序变为专有的这种危险。 为了防止这种情况,我们已明确规定,任何专利都必须获得许可供所有人免费使用,否则就根本不予许可。
以下是复制、分发和修改的精确条款和条件。