MIT is the most recommended permissive licence: short and very popular (probably the most used worldwide). OSI states it is supported by a strong community. Basically, you can do whatever you want as long as you include the original copyright and licence notice in any copy of the software/source. Another version MIT-0 does not mention the obligation of including the copyright notice. MIT is one of the permissive licences to be used (authorised) by French administrations.
Apache License, Version 2.0
Apache-2.0 is a permissive licence. For OSI it supported by an important community of developers. You can do what you like with the software, as long as you include the required notices. Compared with the MIT, recipients receive a patent licence from the contributors of the code. Applicable law / competent court are not specified
Mozilla Public License 2.0
MPL is a reciprocal (or copyleft) licence that is interoperable and - to a certain extend - compatible with other licences, even copyleft or proprietary. OSI states it is supported by a strong community. The recipient must make the source code for any of distributed changes available under MPL, but can combine the MPL software with proprietary code, as long as the MPL code is kept in separate files. Version 2.0 is, by default, compatible with LGPL and GPL version 2 or later and with the EUPL (and the reciprocate is true in this last case, since MPL is listed as compatible by the EUPL). You can distribute binaries under a proprietary licence, as long as you make the source available under MPL. Jurisdiction fixed where the defendant maintains its principal place of business. MPL is one of the reciprocal licences to be used (authorised) by French administrations.
European Union Public Licence, Version 1.2 or later (EUPL)
Official Licence of the European Union (EC Decision, part of European law). The licence is interoperable (no restrictions on linking in order to facilitate the integration of multiple components), reciprocal (third parties distributing improvements or derivatives must publish and provide back the modified source code) and compatible: no global relicensing permitted, but the source code could be reused in other projects under GPL/AGPL, EPL, LGPL, MPL, OSL, CeCILL, LiLiQ. EUPL covers SaaS / network distribution. EUPL covers "the Work" (software and ancillary data). Original in 23 EU languages. Replaces EUPL-1.1 for works "Licensed under the EUPL" without specifying licence version, or adding "or later". Applicable law and court: licensor seat in EU (or specific additional agreement), otherwise Belgium. Support from the Joinup.eu community. Free legal support provided.
GNU General Public License v3.0 or later
GPL-3.0 was forged in 2007. It is a copyleft licence. OSI states GPL (without indicating version number) as supported by a strong community (the Free Software Fundation - FSF). You may copy, distribute and modify the software as long as you track changes/dates in source files. Any derivative including (i.e. via compiler) GPL-licensed code must also be made available under the GPL-3.0 along with build & install instructions. Adding "or later" is recommended by the FSF to cover an hypothetical GPL-4.0, but still means "GPL-3.0 only" for the time being. Therefore licensing under "GPL-2.0 or later" will better improve compatibilities, because the use of the GPL-2.0 is still more important. Compatibility / interoperability are known sources of tension when a project combines the covered code with non-GPL sources from other stakeholders, because according to the FSF linking other software to GPLed works extends the GPL coverage to these other programs.
Use/reproduce
MIT can use/reproduce.
Apache-2.0 can use/reproduce.
MPL-2.0 can use/reproduce.
EUPL-1.2 can use/reproduce.
GPL-3.0-or-later can use/reproduce.
Distribute
MIT can distribute.
Apache-2.0 can distribute.
MPL-2.0 can distribute.
EUPL-1.2 can distribute.
GPL-3.0-or-later can distribute.
Modify/merge
MIT can modify/merge.
Apache-2.0 can modify/merge.
MPL-2.0 can modify/merge.
EUPL-1.2 can modify/merge.
GPL-3.0-or-later can modify/merge.
Sublicense
MIT can sublicense.
Apache-2.0 can sublicense.
MPL-2.0 can sublicense.
EUPL-1.2 can sublicense.
GPL-3.0-or-later can not sublicense.
Commercial use
MIT can commercial use.
Apache-2.0 can commercial use.
MPL-2.0 can commercial use.
EUPL-1.2 can commercial use.
GPL-3.0-or-later can commercial use.
Use patents
MIT can not use patents.
Apache-2.0 can use patents.
MPL-2.0 can use patents.
EUPL-1.2 can use patents.
GPL-3.0-or-later can use patents.
Place warranty
MIT can not place warranty.
Apache-2.0 can place warranty.
MPL-2.0 can place warranty.
EUPL-1.2 can place warranty.
GPL-3.0-or-later can place warranty.
Must
Incl. Copyright
MIT must incl. copyright.
Apache-2.0 must incl. copyright.
MPL-2.0 must incl. copyright.
EUPL-1.2 must incl. copyright.
GPL-3.0-or-later must incl. copyright.
Royalty free
MIT must not royalty free.
Apache-2.0 must not royalty free.
MPL-2.0 must not royalty free.
EUPL-1.2 must royalty free.
GPL-3.0-or-later must not royalty free.
State changes
MIT must not state changes.
Apache-2.0 must state changes.
MPL-2.0 must not state changes.
EUPL-1.2 must state changes.
GPL-3.0-or-later must state changes.
Disclose source
MIT must not disclose source.
Apache-2.0 must not disclose source.
MPL-2.0 must disclose source.
EUPL-1.2 must disclose source.
GPL-3.0-or-later must disclose source.
Copyleft/Share a.
MIT must not copyleft/share a..
Apache-2.0 must not copyleft/share a..
MPL-2.0 must copyleft/share a..
EUPL-1.2 must copyleft/share a..
GPL-3.0-or-later must copyleft/share a..
Lesser copyleft
MIT must not lesser copyleft.
Apache-2.0 must not lesser copyleft.
MPL-2.0 must lesser copyleft.
EUPL-1.2 must not lesser copyleft.
GPL-3.0-or-later must not lesser copyleft.
SaaS/network
MIT must not saas/network .
Apache-2.0 must not saas/network .
MPL-2.0 must not saas/network .
EUPL-1.2 must saas/network .
GPL-3.0-or-later must not saas/network .
Include licence
MIT must include licence.
Apache-2.0 must include licence.
MPL-2.0 must include licence.
EUPL-1.2 must include licence.
GPL-3.0-or-later must include licence.
Rename modifs.
MIT must not rename modifs..
Apache-2.0 must not rename modifs..
MPL-2.0 must not rename modifs..
EUPL-1.2 must not rename modifs..
GPL-3.0-or-later must not rename modifs..
Cannot
Hold liable
MIT cannot hold liable.
Apache-2.0 cannot hold liable.
MPL-2.0 cannot hold liable.
EUPL-1.2 cannot hold liable.
GPL-3.0-or-later cannot hold liable.
Use trademark
MIT cannot not use trademark.
Apache-2.0 cannot use trademark.
MPL-2.0 cannot use trademark.
EUPL-1.2 cannot use trademark.
GPL-3.0-or-later cannot use trademark.
Commerce
MIT cannot not commerce.
Apache-2.0 cannot not commerce.
MPL-2.0 cannot not commerce.
EUPL-1.2 cannot not commerce.
GPL-3.0-or-later cannot not commerce.
Modify
MIT cannot not modify.
Apache-2.0 cannot not modify.
MPL-2.0 cannot not modify.
EUPL-1.2 cannot not modify.
GPL-3.0-or-later cannot not modify.
Ethical clauses
MIT cannot not ethical clauses.
Apache-2.0 cannot not ethical clauses.
MPL-2.0 cannot not ethical clauses.
EUPL-1.2 cannot not ethical clauses.
GPL-3.0-or-later cannot not ethical clauses.
Pub sector only
MIT cannot not pub sector only.
Apache-2.0 cannot not pub sector only.
MPL-2.0 cannot not pub sector only.
EUPL-1.2 cannot not pub sector only.
GPL-3.0-or-later cannot not pub sector only.
Sublicence
MIT cannot not sublicence.
Apache-2.0 cannot not sublicence.
MPL-2.0 cannot not sublicence.
EUPL-1.2 cannot not sublicence.
GPL-3.0-or-later cannot not sublicence.
Compatible
None N/A
MIT is not compatible with none n/a.
Apache-2.0 is not compatible with none n/a.
MPL-2.0 is not compatible with none n/a.
EUPL-1.2 is not compatible with none n/a.
GPL-3.0-or-later is not compatible with none n/a.
Permissive
MIT is compatible with permissive.
Apache-2.0 is compatible with permissive.
MPL-2.0 is not compatible with permissive.
EUPL-1.2 is not compatible with permissive.
GPL-3.0-or-later is not compatible with permissive.
GPL
MIT is compatible with gpl.
Apache-2.0 is compatible with gpl.
MPL-2.0 is compatible with gpl.
EUPL-1.2 is compatible with gpl.
GPL-3.0-or-later is compatible with gpl.
Other copyleft
MIT is compatible with other copyleft.
Apache-2.0 is compatible with other copyleft.
MPL-2.0 is compatible with other copyleft.
EUPL-1.2 is compatible with other copyleft.
GPL-3.0-or-later is not compatible with other copyleft.
Linking freedom
MIT is compatible with linking freedom.
Apache-2.0 is compatible with linking freedom.
MPL-2.0 is compatible with linking freedom.
EUPL-1.2 is compatible with linking freedom.
GPL-3.0-or-later is not compatible with linking freedom.
Multilingual
MIT is not compatible with multilingual.
Apache-2.0 is not compatible with multilingual.
MPL-2.0 is not compatible with multilingual.
EUPL-1.2 is compatible with multilingual.
GPL-3.0-or-later is not compatible with multilingual.