Licensing, Multi-Licensing
Total Page:16
File Type:pdf, Size:1020Kb
Software Licenses, Free and Open Non-Free Software Source Software ● Non-free software is any software that is not free. Péter Jeszenszky – Its use, redistribution or modification is prohibited or Faculty of Informatics, University of Debrecen restricted, or requires permission. [email protected] – It is also called as closed source software or proprietary software. Last modified: May 1, 2021 – Non-free software is the complementary set of free software. 3 Terminology Free Software ● Non-Free Software, Closed-Source Software, Proprietary Software ● The four essential freedoms: ● Free Software – ● Open-Source Software The freedom to run the program for any purpose. ● Free and Open-Source Software (FOSS) – The freedom to study how the program works. ● Commercial Software – The freedom to redistribute copies of the program. ● Freeware, Shareware – ● Software License The freedom to modify the program. ● End-User License Agreement (EULA) ● Access to the source code is a precondition for the ● License Compatibility second and the fourth freedom. ● Copyleft, Copyleft License ● ● Public Domain See: The Free Software Definition ● Dual Licensing, Multi-Licensing https://www.gnu.org/philosophy/free-sw.html.en 2 4 Open Source Software (1) Open Source Software (3) ● The terms “free software” and “open source software” ● Open Source Initiative (OSI) refer to almost the same range of software. However, https://opensource.org/ they represent two different approaches. – A non-profit organization founded 1998 to promote – Definition: The Open Source Definition and support open source software. https://opensource.org/docs/osd – Eric S. Raymond, a leading advocate of the open ● The term “open source” is more suitable for marketing source movement, was its president until 2005. purposes than the “term free” software. – Free is an ambiguous word. One meaning of the word is “at no cost”. ● See, for example, “free speech” vs “free beer”. 5 7 Open Source Software (2) Open Source Software (4) ● The free software movement emphasizes the ● See also: ethical aspects of freedom. – Richard Stallman. Why Open Source misses the ● By contrast, the open source movement point of Free Software. emphasizes the practical advantages of https://www.gnu.org/philosophy/open-source-misse s-the-point.html openness. – Eric S. Raymond. The Cathedral and the Bazaar. ● Despite the ideological differences between the February 18, 2010. two camps, the terms free software and open http://www.catb.org/esr/writings/cathedral-bazaar/ source software practically have the same meaning. 6 8 Alternative Name Freeware, shareware ● Free and Open-Source Software (FOSS) ● Freeware: – The term “freeware” has no clear accepted definition. – A category that includes both free software and – It is commonly used for packages which permit redistribution but not modification open source software. (and their source code is not available). – Freeware is not free software. – Also known as: Free/Libre and Open-Source – See: Categories of Free and Nonfree Software – Freeware Software (FLOSS). https://www.gnu.org/philosophy/categories.html#freeware ● Shareware: ● See also: Richard Stallman. FLOSS and FOSS. – Shareware is software which comes with permission for people to redistribute copies, but says that anyone who continues to use a copy is required to pay a license fee. https://www.gnu.org/philosophy/floss-and-foss.h – Shareware is not free software. tml – See: Categories of Free and Nonfree Software – Shareware https://www.gnu.org/philosophy/categories.html#shareware 9 11 Commercial Software Software License ● Commercial software is software developed by ● A software license is a legal instrument that a business as part of its business. regulates the distribution and use of software. ● Most commercial software is proprietary, but – In the case of proprietary software, the term end- there is commercial free software. user license agreement (EULA) is used. ● See: Categories of Free and Nonfree Software – Commercial software https://www.gnu.org/philosophy/categories.html #commercialSoftware 10 12 License Compatibility FOSS Licenses (2) ● We say that several licenses are compatible if ● The lists of FOSS licenses approved by the FSF there is a way to merge code under those and the OSI include all widely used software various licenses while complying with all of licenses. them. – For example, the NASA Open Source Agreement v1.3 – is an OSI-approved open source license, however, the See: Richard Stallman. License Compatibility and FSF does not consider it to be a free software license. Relicensing. https://www.gnu.org/licenses/license-compatibility.ht ● See: ml – https://opensource.org/licenses/NASA-1.3 – Various Licenses and Comments about Them – NASA Open Source Agreement https://www.gnu.org/licenses/license-list.html#NASA 13 15 FOSS Licenses (1) Permissive Software Licenses (1) ● Numerous FOSS licenses exist. ● Permissive licenses constitute a subset of FOSS – For example, the OSI maintains of list of approved licenses. open source licenses: Licenses & Standards ● These licenses permit almost any use of the code. https://opensource.org/licenses – See: Categories of Free and Nonfree Software – Lax – Another useful source: Various Licenses and Permissive Licensed Software Comments about Them https://www.gnu.org/philosophy/categories.html#LaxPe https://www.gnu.org/licenses/license-list.html rmissiveLicensedSoftware ● Also known as: non-copyleft licenses. – See: Open Source Initiative – Frequently Answered Questions https://opensource.org/faq#permissive 14 16 Permissive Software Licenses (2) Permissive Software Licenses (4) ● Examples: ● Examples of uses: – Apache Maven (license: Apache License 2.0) – Apache License 2.0 https://www.apache.org/licenses/ https://www.apache.org/licenses/LICENSE-2.0 – FreeBSD (license: FreeBSD License) – BSD license: https://www.freebsd.org/copyright/freebsd-license.html – Gradle (license: Apache License 2.0) https://gradle.org/license/ ● 3-Clause BSD License/New BSD License/Modified BSD – HSQLDB (license: 3-clause BSD license) License https://opensource.org/licenses/BSD-3-Clause http://hsqldb.org/web/hsqlLicense.html ● 2-Clause BSD License (Simplified BSD License/FreeBSD – Node.js (license: MIT License) License) https://www.freebsd.org/copyright/freebsd-license.html https://github.com/nodejs/node/blob/master/LICENSE – X11 License (MIT License) – PostgreSQL (license: PostgreSQL License) https://opensource.org/licenses/MIT https://www.postgresql.org/about/licence/ – … 17 19 Permissive Software Licenses (3) Copyleft (1) ● Each license mentioned here permits software ● The term copyleft is a twist on the term distributed under it to be used for closed source copyright. software projects. ● Copyleft is a legal instrument whose goal is the – Including modification of the source code and exact opposite of that of the copyright. incorporating the original or the modified source code into proprietary software. ● The idea was invented by Richard Stallman in 1985. ● Definition: What is Copyleft https://www.gnu.org/copyleft/ 18 20 Copyleft (2) Copyleft Licenses (1) ● Symbol: ● Software licenses using the copyleft – Source: Wikimedia Commons / Public Domain mechanism are called copyleft licenses. https://commons.wikimedia.org/wiki/File:Copyleft.sv – They are also called as viral licenses, pejoratively. g ● Copyleft licenses represent a subset of FOSS licenses that is disjoint with the set of permissive licenses. ● Copyleft licenses are further divided into strong and weak copyleft licenses. 21 23 Copyleft (3) Copyleft Licenses (2) ● The copyleft ensures that the protected work and any ● Strong copyleft license: the copyleft applies with full force, derivative works remain free forever. that excludes the use of the software covered by the license for developing closed source software. – When the copyleft is in effect, then all derivative works – Example: GNU General Public License (GNU GPL) inherit the license of the original work. https://www.gnu.org/licenses/gpl.html ● It was first used in the Emacs General Public ● Weak copyleft license: they permit the limited use of the License. software covered by the license such that derivative works do not fall under the copyleft. – See: https://www.free-soft.org/gpl_history/emacs_gpl.html – Examples: ● Not all free software licenses incorporate the copyleft ● GNU Lesser General Public License (GNU LGPL) mechanism. https://www.gnu.org/licenses/lgpl.html ● Mozilla Public License (MPL) https://www.mozilla.org/MPL/ 22 24 GNU General Public License Using GPL-Covered Software (2) (GNU GPL) ● The latest version is version 3. ● In general, the GPL does not apply to the output of a GPL- https://www.gnu.org/licenses/gpl-3.0.html covered program, unless it include source code of the program. ● Examples of uses: – This means that, for example, a graphical application can be used – GIMP (license: GPLv3) https://www.gimp.org/about/COPYING without any limitations for any purpose, however, the Autoconf program could not be, if it would not fall under an exception. – Linux Kernel (license: GPLv2) https://www.kernel.org/pub/linux/kernel/COPYING – Thus, for example, the GPL may apply to the “output” of a computer – Notepad++ (license: GPLv2) game when a screenshot is taken or a video is captured. https://github.com/notepad-plus-plus/notepad-plus-plus/blob/master/LICENS ● See: Frequently Asked Questions about the GNU Licenses E – – R (license: GPLv2 or GPLv3) https://www.r-project.org/Licenses/ Is there some way that I can GPL the output people