diff options
Diffstat (limited to 'docs/licensing.en.md')
-rw-r--r-- | docs/licensing.en.md | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/docs/licensing.en.md b/docs/licensing.en.md new file mode 100644 index 0000000..1e8905c --- /dev/null +++ b/docs/licensing.en.md @@ -0,0 +1,65 @@ +--- +title: Licensing in libcarrot +--- +libcarrot is thought to having a common core under free license, and allowing +proprietary extensions to it, so for each file, there are currently +two licensing modes: + +- `free`: the files under this mode are subject to the libcarrot free + software license; +- `proprietary`: all rights on the files are reserved by the owners. + +The upstream will only accept contributions under the libcarrot free +software license, any proprietary extension should be free'd before +being proposed (and merged). + +The libcarrot free software license currently is the CeCILL-C license, +created by french people and compliant with french law. + +# Copyright files +The copyright and license details are given by the `copyright.yml` files. +These files are machine-readable, and used to generate the top comments of +the source files, and generated text files (headers, ...) — see +[Contributing](contributing) for more information about that. +Each one of them defines a set of rules for the files at the same level +and beneath, using wildcard patterns (e.g. `folder/**/*.ext`). + +The copyright file shall contain one rule per division ("document"). +Each division shall define the following properties: + +- `files`: the wildcard pattern(s) from the current directory of the + group of files. If you only define one, you shall use a string, otherwise, + please use a list of strings. +- `copyright`: the people this file belong to, usually the original author + and the contributors who don't give their rights to the original author. +- `license`: the licensing mode, either `free` or `proprietary` (this matter + is discussed in this document's introduction). + +A `copyright` entry consists of the copyright starting year, ending year, +owner and owner e-mail address. It is defined as a list of either four +elements, as `[<start year>, <end year>, <name>, <mail>]` or, if the ending +year is the same than the starting year, of three elements, as +`[<start and end year>, <name>, <mail>]`. The e-mail address is mandatory. + +An example `copyright.yml` file is the following: + + %YAML 1.2 + --- + files: '*' + copyright: + - [2017, John "Smithy" Smith, john@smith.ee] + - [2017, 2018, Robert Dupont, robert.dupont@wanadoo.fr] + license: free + --- + files: 'src/incredible/*' + copyright: + - [2018, Mahatma Gandhi, mahatma@gandi.net] + license: proprietary + --- + files: 'src/**/parser.c' + copyright: + - [2018, Lephenixnoir, lephe@planet-casio.com] + license: free + +Notice that when trying to guess which rule applies to which file, the +most precise rule is taken. |