Skip to content

Latest commit

 

History

History
55 lines (44 loc) · 2.67 KB

GPL.md

File metadata and controls

55 lines (44 loc) · 2.67 KB
marp
true

GPL

GNU Public License


GPL Background

  • Born in 1989
  • Written by Richard Stallman (need I say more?)
  • Currently on its 3rd major revision
  • Spawned a collection of licenses like AGPL (Affero), LGPL (Lesser/library), and GFDL (free documentation)
  • License text has been vetted by lawyers
  • Courts around the world have upheld the license provisions
  • Strongly opinionated and controversial, though popular license choice

GPL Ideology

  • The GPL is strongly opinionated that all software should be free, and all derivatives of free software need to remain that way
  • GPL is sometimes known as a "viral" license, as more often than not, things built with GPL code need to be placed under the GPL as well
  • Mixing GPL code with other licenses is challenging, as the GPL does not allow you to place additional restrictions on a recipient
  • What constitutes a "derivative work" is an ongoing dispute
  • With version 3 and the advent of DRM and code-signing, the GPL reinforces that not just the code, but the means of building it to a working product must be open

Upgrades

  • By default, the GPL allows use of licensed work under the terms of "this or any later version"
  • Authors may omit this clause, as the Linux kernel notably does
  • While some GPL changes are language and technical refinements, things like the DRM clauses of v3 are seen as excessive and deal-breakers
  • If you allow usage of later versions, you've placed a good bit of control in the hands of the Free Software Foundation

Variants

  • Lesser GPL
    • Name is a reminder that your freedoms are not fully protected
    • Frequently used for open-source libraries, to allow them to be used unmodified in other (proprietary) applications
  • Affero GPL
    • Designed to close the gap where modified GPL code is being used to provide a network/web service, but code would not otherwise be required to be published, as the binary is never shipped by the author
  • Free Documentation License (GFDL)
    • Similar to Creative Commons, in allowing redistribution of documents, while preserving openness of derivates and attribution for the authors

Summary

  • The GPL is a highly opinionated license that places the freedom of modifying and redistributing code above most other considerations
  • It is a very popular license, and its usage has heavily impacted the trajectory of the open-source movement
  • You MUST fully understand the terms and conditions of the GPL before using it on your own code, or incorporating GPL code into your projects
  • Corporate legal departments frequently ban the use of GPL code, because of the obligations it places on the company