Skip to main content

Section 5.2 Typical Open Source Licenses

Subsection 5.2.1 MIT License

The MIT license is a short and simple permissive license with conditions only requiring preservation of copyright and license notices. Licensed works, modifications, and larger works may be distributed under different terms and without source code.
The following table summarizes this license:
Table 5.2.1. MIT License Permissions, Conditions, and Limitations
Permissions              Conditions               Limitations             
✓ Commercial use
✓ Distribution
✓ Modification
✓ Private use
⚠ License and
copyright notice
✗ Liability
✗ Warranty
The entire text of the MIT license is quite understandable and brief. Note how short and sweet it is: MIT License
 1 
mit-license.org/
.
Copyright (c) [year] [fullname]

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Examples of open source projects using this license:
  • Babel
     2 
    github.com/babel/babel/blob/master/LICENSE
  • .NET
     3 
    github.com/dotnet/runtime/blob/main/LICENSE.TXT
  • Rails
     4 
    github.com/rails/rails/blob/master/MIT-LICENSE

Subsection 5.2.2 Apache License 2.0

The Apache License 2.0 is a permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. Licensed works, modifications, and larger works may be distributed under different terms and without source code.
The following table summarizes this license:
Table 5.2.2. Apache 2.0 License Permissions, Conditions, and Limitations
Permissions              Conditions               Limitations             
✓ Commercial use
✓ Distribution
✓ Modification
✓ Patent use
✓ Private use
⚠ License and
copyright notice
⚠ State changes
✗ Liability
✗ Trademark use
✗ Warranty
The entire text of the Apache License 2.0 is much longer than that of the MIT license. If interested in the details, see Apache License 2.0
 5 
www.apache.org/licenses/LICENSE-2.0
.
Examples of open source projects using this license:
  • Kubernetes
     6 
    github.com/kubernetes/kubernetes/blob/master/LICENSE
  • pdf.js
     7 
    github.com/mozilla/pdf.js/blob/master/LICENSE
  • Swift
     8 
    github.com/apple/swift/blob/main/LICENSE.txt

Subsection 5.2.3 GNU General Public License v3.0

The GNU General Public License v3.0 is considered a strong copyleft license whose permissions are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.
The following table summarizes these conditions:
Table 5.2.3. GNU General Public License v3.0 License Permissions, Conditions, and Limitations
Permissions              Conditions               Limitations             
✓ Commercial use
✓ Distribution
✓ Modification
✓ Patent use
✓ Private use
⚠ License and
copyright notice
⚠ State changes
✗ Liability
✗ Warranty
The text of the GNU General Public License v3.0 license is even longer than the full text of Apache License 2.0 is available from GNU General Public License v3.0
 9 
www.gnu.org/licenses/gpl-3.0.en.html
.
Examples of open source projects using this license:
  • Ansible
     10 
    github.com/ansible/ansible/blob/devel/COPYING
  • Bash
     11 
    https://git.savannah.gnu.org/cgit/bash.git/tree/COPYING
  • Gimp
     12 
    git.gnome.org/browse/gimp/tree/COPYING

Section Summary.

There are many other licenses all with differing rules in the open source community. For a useful treatment of some more of other open source licenses, see Choose a License
 13 
choosealicense.com/licenses
by GitHub.

Checkpoint 5.2.4.

    Which open source license requires making the complete source code of licensed works and modifications available under the same license?
  • MIT License
  • The MIT License is a permissive license with fewer conditions and does not require making the complete source code available under the same license.
  • Apache License 2.0
  • The Apache License 2.0 is also a permissive license, but it does not require making the complete source code available under the same license.
  • GNU General Public License v3.0
  • Correct! The GNU General Public License v3.0 is conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license.
  • Boost Software License 1.0
  • This is simple permissive license only requiring preservation of copyright and license notices for source (and not binary) distribution
You have attempted of activities on this page.