Open Source Licensing

Copyleft

  • Requires derivative works to include source code under copyleft license
  • Ensures improvements stay open source
  • Can limit commercial adoption in proprietary products
  • Examples:
    • GPL
    • LGPL (Lesser GPL)
    • AGPL (Affero GPL)

GPL (GNU Public License)

  • GPLv2
    • Linux kernel
    • MySQL Community
  • GPLv3
    • GCC (GNU Compiler Collection)
    • GIMP (GNU Image Manipulation Program)
    • VLC

LGPL (Lesser GPL)

  • Weaker copyleft
  • Common for libraries
  • Examples
    • FFmpeg

AGPL (Affero GPL)

  • Strongest copyleft
  • Covers network/SaaS
  • Examples
    • Open EdX

Permissive

  • aka academic licenses
  • allow recipients to use, modify, and distribute software with no obligation to provide source code.
  • Examples
    • BSD
    • MIT
    • Apache

BSD (Berkeley Software Distribution)

  • short and contain 2-4 clauses
  • Examples
    • FreeBSD
    • PostgreSQL
    • libcurl

MIT (Massachusetts Institute of Technology)

  • Similar to BSD but more explicit than BSD
  • Very Popular
  • Examples
    • React
    • Vue.js
    • Express.js

Apache

  • more comprehensive covering lot of stuff
  • Has clauses on patent retaliation
  • Examples
    • Apache Hadoop
    • Apache Kafka
    • Elasticsearch
    • AOSP
    • TensorFlow
    • Kubernetes

Is it legal?

  • It is legal and enforceable
  • community backlash also pressurizes to enforce the license