Glossary

General public license

General Public License (GPL)

What Is the General Public License (GPL)?

The General Public License (GPL) is one of the most widely known copyleft open-source licenses. Created by the Free Software Foundation, its purpose is to ensure that software, and any derivative works based on it, remain free and open for everyone to use, modify, and redistribute. The GPL is often summarized as:

“You may use this software freely – but if you distribute modified versions, you must also share your source code under the same GPL license.” This “share-alike” condition is what makes the GPL different from permissive licenses like MIT or Apache.

How the GPL Works (Key Principles)

The GPL is built around four freedoms:

  1. Freedom to run the software for any purpose
  2. Freedom to study and modify the source code
  3. Freedom to redistribute copies
  4. Freedom to distribute modified versions, as long as they remain licensed under GPL

Its main enforcement point is distribution:

ActionGPL Requirement
Use privatelyNo obligation
Modify privatelyNo obligation
Distribute original codeMust retain GPL license
Distribute modified codeMust share source under GPL

So, obligations are triggered when software is distributed, not simply used internally.

Versions of the General Public License (GPL)

There are several versions:

  • GPLv2 — widely used in long-standing open-source projects
  • GPLv3 — adds modern protections such as patent clauses and anti-tivoization rules
  • AGPL — extends sharing obligations to SaaS and hosted software

Each version strengthens user freedoms and clarifies compliance rules.

Why Organizations Care About the GPL

Using GPL-licensed software has business and legal implications:

  • Strong alignment with open-source values
  • Encouragement of community contribution
  • Mandatory sharing of derivative works
  • Possible need to disclose proprietary code when combining GPL components

Because of these obligations, legal review is common before embedding GPL software into commercial products.

GPL vs Permissive Licenses

GPL (Copyleft)MIT/Apache (Permissive)
Requires sharing derivativesFew restrictions
Preserves open-source continuityEncourages commercial use
Philosophy-drivenFlexibility-driven

Both license families have valid use cases, they simply reflect different priorities.

Final Thought

The General Public License (GPL) is more than a legal instrument, it is a philosophy focused on preserving software freedom across generations.

Frequently asked questions

Does GPL require me to publish my code publicly?

Only if you distribute software that includes GPL-licensed components.

Can GPL software be used commercially?

Yes, but redistribution obligations still apply.

What is the difference between GPL and AGPL?

AGPL extends obligations to cloud-hosted and SaaS software.

Is GPL legally enforceable?

Yes, courts worldwide have upheld GPL terms.

Can GPL code be mixed with proprietary code?

Sometimes, but legal advice is strongly recommended.

Why do developers choose the GPL?

To ensure software remains free for future users.