Thank you so much Ingo. Things are very clear. :-) On Aug 5, 2017 8:58 AM, "Ingo Schwarze" <schwa...@usta.de> wrote:
> Hi Siju, > > Siju George wrote on Sat, Aug 05, 2017 at 06:50:12AM +0530: > > > In a code repository should the licence wording be on every file ? > > Best practice is: > > 1. To have at least one line containing "Copyright (c) ..." > at the top of each file containing copyrightable content. > > 2. Each author (natural person, NOT legal entity like corporations > or foundations) who made copyrightable contributions to the > file of which at least parts are still contained in the > file must be mentioned on such a line. > If an author did transfer their economic rights (which doesn't > really make much sense for ISC or BSD 2-clause licensed code, > but nonetheless, it is occasionally done), you can list the > legal entity that acquired the economic rights, but then it > becomes important to add a line, below the Copyright notice, > reading, for example: > Parts of this file were written by (name of natural person) > for (name of legal entity). > The reason is that the actual authors retain some inalienable > rights, even when working for hire or contract, and the right > to be know of as the author is one of these rights that can > neither be sold nor be given away. > > 3. Each Copyright line must contain one year number, separated > with commas, for each year in which that author made copyrightable > additions to the file that are still present in the file. Ranges > of years separated with dashes are only acceptable if that > author also made such contributions in each of the years between > the endpoints of the range. Usually, only use ranges on lines > that would otherwise become too long. > > Look at /usr/src/usr.bin/mandoc/mdoc_term.c for an example > demonstrating all these rules. > > The full text of the license should follow this Copyright notice > in each file. > > > That said, from a legal standpoint, it is sufficient to have one > license for each Work, so having one Copyright notice for the whole > Work (e.g., program or package) is legally sufficient, too. But > that is not a particularly good idea for several reasons: > > 1. It is less clear and can cause doubt as to which files are > covered by the central Copyright notice and license. > > 2. It is very hard to maintain correctly. Care is already needed > when maintaining the notices in individual files, and maintaining > a central notice correctly is even harder because it is no > longer even clear in which files to look for the contributions > of the various authors. > > 3. In practice, you will probably sooner or later include files > from third parties that are available under free licenses. In > that case, leaving the Copyright notices and licenses in place > in those included files is usually required by the third party > licenses, and those licenses often differs slightly from the > one you are using for your own Work. So you end up with some > files with Copyright notices and licenses and some without, > which exacerbates the problem explained in item 1. > > 4. People maintaining other software will occasionally pick files > from your software and copy them to their own package. If you > failed to add a Copyright notice and license to a file that > gets picked in this way, there is a higher risk that the person > taking the file forgets to copy your Copyright notice and license > into the file before redistributing it. And worse, how is that > person even supposed to figure out who, and during which years, > contributed to that particular file? Basically, that poor soul > will be forced to analyze the complete VCS commit history for > the file and reconstruct the Copyright notice from scratch. > > > Or just in a file named "Licence" in the root folder ? > > Best practice is to do that *in addition*, because with many files, > it can be hard to figure out the full list of Copyright holders and > applicable licenses, and also because you almost certainly want to > state *somewhere* which the preferred license is for new contributions > to the project. > > For an example of such an additional central file demonstrating > many useful features of such a central file, refer to > > http://mandoc.bsd.lv/LICENSE > > > Oh, and very important: Never add any Copyright or license goo to > the displayed text of any manual page or the stdout or stderr output > of any program. Copyright notices and licenses belong into the > source code (of programs and documentation), *NEVER UNDER ANY > CIRCUMSTANCES* into any text displayed to the user. I regard > displaying Copyright notices or licenses to the user as exceedingly > impolite, because you are basically slapping the user into the face > with this sneer: i value your time so little that i encumber the > output i show to you with irrelevant text, with text that i know > for sure you will *not* need each and every time you run the program > or open the documentation. > > Yours, > Ingo >