In this post we take a look at some of the frequently asked questions (FAQ) about Linux and the GNU General Public License (GPL). We'll be updating this from time to time as we get more questions.
Q: What's the difference between "free" or "libre" software and open source? Aren't they the same thing?
A: Free software and open source software have a huge overlap, but there are differences worth discussing. The term free software is used to describe software that respects users' freedoms. It's a philosophy and one that many people care about deeply.
Open source originated as a term used to talk about a pragmatic approach to developing software, as well as a definition of what is or isn't an "open source" license. Today it's largely used to describe all software under an open source license without being a deliberate attempt to disown the "free software" philosophy.
Q: What is a Linux distribution, anyway?
A: A distribution is the full collection of software that makes up an operating system, including the Linux kernel, user utilities and applications, installer, documentation, and other components.
The Linux kernel is just part of a full distribution. Alone, it doesn't do much that's interesting to users. But you need an operating system kernel to power all the software we want to use, such as Firefox, GNOME, Kubernetes, the Apache HTTP Server, PostgreSQL and on and on.
Red Hat Enterprise Linux (RHEL), Fedora, CentOS, Debian and Slackware Linux are all examples of popular and long-running Linux distributions.
Q: Is all software in a Linux distribution under the GPL / same license?
A: No. If you look at Linux distributions like Fedora or RHEL, you'll find software under the GPLv2, GPLv3 as well as more permissive licenses like those in the BSD/MIT family, Apache License 2.0, and many others.
Q: How does “open core” apply to things like the GPLv2? What about Linux?
A: Open core generally refers to a business model where the "core" of a product is available under an open source license but other components are not. For example, basic features might be available as an open source project, but enterprise features like high availability or managing multiple nodes might only be available through a proprietary license.
It's easy for companies to apply an "open core" model to projects that have permissive licenses. If a license doesn't require sharing changes when software is distributed, then a company can build off a permissively licensed project and then distribute it under a proprietary license.
It's more difficult to do this if the project is licensed under the GPLv2 or another "copyleft" license that requires changes to be distributed.
Q: In addition to the Linux kernel, are there other examples of successful GPLv2 projects?
A: A number of successful projects use the GPLv2, including Pulp, Git, VLC media player, Audacity, GTK, and any number of others.
Q: GPLv3 was released in 2007 — how does GPLv3 differ from GPLv2?
A: Like GPLv2, GPLv3 is a “strong copyleft” license, under which modified versions, if distributed, must be licensed under the GPL and binaries must be accompanied by corresponding source code. GPLv3 specifically addresses issues such as patents, device lockdown, anti-circumvention law, interpretation of the license in multiple jurisdictions, and license compatibility, and also introduces cure provisions (which can be extended to GPLv2 through use of the GPL Cooperation Commitment).
Q: Is the GPLv2 still being used for new projects?
A: Yes. Even though GPLv3 was released some time ago, some developers and projects prefer GPLv2 and have chosen that license for new projects.
Q: How can I get more information to help me to understand the various provisions of the GPL?
A: The Free Software Foundation (FSF) maintains an extensive list of FAQs that explain the terms of the license and answer questions that the FSF has received over the years about how the license is intended to operate.
About the author
Red Hat is the world’s leading provider of enterprise open source software solutions, using a community-powered approach to deliver reliable and high-performing Linux, hybrid cloud, container, and Kubernetes technologies.