Openly licensed software is open source, i.e. the program code can be freely modified. This feature makes open source software particularly attractive for teaching and learning. By using OS software, not only can license costs be saved, but more independence can be gained and transparency promoted. Many OS programs can also be used free of charge, i.e. no fee has to be paid for the service (not to be equated with license costs), guarantee better data protection and are often in no way inferior to conventional commercial solutions. Since Creative Commons (CC) licenses are not suitable for licensing software, twillo has expanded its license pool to include the three best-known OS licenses in their current versions: GPLv3, MIT and Apache 2.0. What do these licenses have in common and what are their special features? What rights and obligations do they trigger? Which licenses are they compatible with? We have compiled this information for you in the following overview.
Common features of the OS licenses
Allowed:
- free distribution of the (derived) software
- Free modification of the source code
Not permitted:
- Discrimination against persons/groups of persons
- Restrictions with regard to the area of application
- Conditions for the acquisition of rights to the derived software: e.g. transfer only in the software package; use only with certain technologies, etc.
- License fees for the granting of rights to use the software
There are no official translations of the OS licenses. The English license text is authoritative. In the case of multilingual software, the license notice should be in English. Application examples for individual licenses can be found in the OS Initiative’s list of open source licenses.
Special features of OS licenses
GPLv3
- A restrictive OS license
- Strict copyleft: Combinations with the source code of other software must be placed under GPL; the strict copyleft does not apply to other changes to the source code.
- The modified source code must be disclosed if the software is distributed.
- Contains a patent clause according to which patents on further developments — if necessary — are co-licensed, i.e. no license payments may be demanded for patents (cf. MIT).
- All changes to the original software must be listed (documented) in detail.
- The original copyright and copyright notices may not be removed/altered. No conditions deviating from the original copyright notice may be included for derived works.
- Effectiveness of the license (its central clauses) in Germany has been confirmed by several courts.
MIT
- A permissive OS license
- No copyleft: modified parts of the software may be placed under a different (e.g. proprietary) license. Unmodified parts of the software remain under MIT, insofar as they can be used independently.
- The modified source code does not have to be disclosed if the software is distributed.
- No patent regulation. Attention! License payments may be required for patented software distributed under MIT. In this case, the use of the software is no longer free of charge.
- Changes to the original software do not have to be listed.
- Since the MIT license text itself is not copyrighted, anyone is free to modify it for their own purposes and set their own conditions for use. For this reason, there are many versions/modifications of the license. These are practically identical to the original license. A comparison is nevertheless recommended.
- Easy handling short, concise license text
Apache 2.0
- A permissive OS license
- No copyleft: modified parts of the software may be placed under a different (e.g. proprietary) license. Unmodified parts of the software remain under Apache 2.0, insofar as they can be used independently.
- The modified source code does not have to be disclosed if the software is distributed.
- Contains an explicit patent provision: no license payments may be demanded for patented Apache software (cf. MIT).
- All changes to the original software must be listed (documented) in detail.
- The original copyright and copyright notices may not be removed/altered. Conditions deviating from the original copyright notice may be included for derived works.
- Adaptations (= derived works) may only bear the name “Apache” with the written permission of the Apache Fondation.
Rights of the OS licenses
GPLv3
- Duplicate
- Spread
- Edit
- Communication to the public and making available to the public
- (Commercial) distribution of the modified software
MIT
- Duplicate
- Spread
- Edit
- Communication to the public and making available to the public
- (Commercial) distribution of the modified software
- Sublicensing
- Free choice of license for further developments
- Inclusion of own license conditions, copyright notice for the use, reproduction and distribution of the derived work
Apache 2.0
- Duplicate
- Spread
- Edit
- Communication to the public and making available to the public
- (Commercial) distribution of the modified software
- Sublicensing
- Free choice of license for further developments
- Inclusion of own license conditions, copyright notice for the use, reproduction and distribution of the derived work
- Attention! Original instructions must always be retained!
Obligations of the OS licenses
GPLv3
- Applies both to the use of the original software and to your own further developments:
- Enclose the original license text (in paper form/as a text file)
- Attach a suitable copyright notice (e.g. ©2021 (name of copyright holder). Existing copyright notices may not be removed.
- Attach a disclaimer notice. Existing notices may not be removed.
- Information on what was processed and when
- Combinations with the source code of other software under GPLv3
- The entire source code, including proprietary parts, must be disclosed:
- publish or
- on a data carrier or
- make available for download from the same website (for online distribution)
MIT
- Applies to the use of the original software, but not to further developments:
- Include the original copyright notice, the original license notice and the disclaimer of warranties and liability in all copies or substantial portions of the Software
Apache 2.0
- Applies both to the use of the original software and to your own further developments:
- Attach license terms — as a copy or link
- For modified files, indicate in a conspicuous place that they have been modified
- Original copyright, patent, trademark and copyright notices may not be removed.
- If the original software contains a “NOTICE” text file, the copyright notices from the file must be reproduced exactly as indicated
GPLv3/MIT/Apache 2.0 compatibility with each other
GPLv3/Apache 2.0: Source code under Apache 2.0 can be used in a GPLv3 project because Apache 2.0 contains fewer conditions than GPLv3. There is no compatibility the other way round or with other versions (e.g. GPLv2). Apache 2.0 contains a provision according to which patent rights may be revoked under certain conditions. This contradicts GPLv2.
GPLv3/MIT: Due to the few restrictions, MIT source code can be used in GPLv3 projects without any problems. The reverse is not possible.
Apache 2.0/MIT: compatible
GPLv3 compatible also with:
- BSD License without advertising clause,
- Affero General Public License, Version 3 (see Section 13 of GPLv3)
- Lesser General Public License, Versions 2, 2.1 and 3 (LGPL)
- CeCILL (CONTRAT DE LICENCE DE LOGICIEL LIBRE CeCILL)
- Artistic License 2.0
- Zope Public License, Version 2.0 and 2.1