Notes from LFC 291, from May 2016. {{http://imgs.xkcd.com/comics/open_source.png }} Source: [[http://xkcd.com/225/|http://xkcd.com/225/]] provided under [[http://creativecommons.org/licenses/by-nc/2.5/|CC BY-NC 2.5.]] ====== Module 2 - Licenses ====== ===== Web resources to assist with choosing a license ===== * opensource.org * choosealicense.com * tldrlegal.com * gnu.org: copyleft licenses And for artistic work: * creativecommons.org ===== Putting licenses in place ===== Separate license file In files, refer to license How to refer (in descending order of preference): * Use standard license header * Use the SPDX-License-Identifier (license-identifier from the SPDX List of Licenses). Makes the header very concise. /* SPDX-License-Identifier: Apache-2.0 */ * Provide the URL to the license definition page * Provide the URL to a neutral/refereed web site with a curated list of licenses, e.g. the Open Source Initiative opensource.org or Software Package Data Exchange websites) Using URLs may be a risk, because websites change over time. ====== Module 3 - Copyrights ====== "[[https://en.wikipedia.org/wiki/Copyright|Copyright]] is a legal right created by the law of a country that grants the creator of an original work exclusive rights for its use and distribution." Copyright extends to how ideas or algorithms are written down. Ideas and algorithms are covered by patent law instead. ===== Legal aspects ===== In all countries in the [[https://en.wikipedia.org/wiki/Berne_Convention|Berne Union]] it is not necessary to apply for copyright. Possible copyright holders * the author * the author's employer (work for hire) * an organisation or individual can be assigned to be copyright holder ===== Copyright notice ===== Although it is not necessary in the Berne Union to add a copyright notice for //claiming// copyright, it is still recommended to indicate the copyright holders in code: e.g. in court it is necessary to establish who the copyright holder is. Having a copyright notice in place is a quick and easy way to ensure this. The indication should have the form: , . The course recommends: - Add a copyright notice to a new file - Update the copyright notice when making a significant update to the file ====== Module 4 - File notices ====== A file notice consists of the license reference (module 2) and a copyright notice (module 3). A file notice * identifies the copyright holder(s) via notices. * identifies the license that the file is governed by. * maybe gives additional information about authorship. * should be clear and machine-detectable. ====== Module 5 - Preconditions for contributions ====== Contributor Agreements are: * Contributor License Agreement (Apache, Google) * Copyright Assignment (GNU toolchain) * A Developer's Certificate of Origin (Linux, OP-TEE)