Sto per inviare il mio primo progetto a GitHub (un mini interprete lisp giocattolo scritto in C).
Ho notato che la maggior parte dei progetti open source include la loro licenza in ogni file sorgente (in alto). È una necessità per l'open source?
Questa è una vecchia domanda, ma per chiunque altro cerchi la risposta, la maggior parte delle licenze non richiede che la licenza sia inclusa all'interno di ciascun file sorgente, purché la licenza sia inclusa con il codice sorgente. Spesso questo viene fatto usando un file LICENSE.md
o LICENSE.txt
incluso nello stesso repository, cartella o directory del codice.
Di seguito è riportato un riepilogo di alcune licenze open source comuni e i relativi requisiti relativi all'inclusione nei file di origine.
Una delle (molte) ragioni per cui Apache ha rilasciato la versione 2.0 della licenza Apache era:
... to allow the license to be included by reference instead of listed in every file...
La Appendice della licenza sembra specificare che è necessario includere un avviso di licenza nel file stesso, ma il ChooseALicense.com di GitHub afferma che questo requisito è più di una raccomandazione.
La licenza MIT richiede solo il testo della licenza:
be included in all copies or substantial portions of the Software.
Per la licenza GPL, LGPL o AGPL, la Free Software Foundation,
che esegue GNU.org , fa desidera un avviso incluso in ogni file ( così come in un file di accompagnamento COPYING
contenente il testo completo della licenza, o COPYING LESSER
se si utilizza la LGPL).
Ecco come si dice di includere la licenza nei file sorgente:
This involves adding two elements to each source file of your program: a copyright notice (such as “Copyright 1999 Terry Jones”), and a statement of copying permission, saying that the program is distributed under the terms of the GNU General Public License (or the Lesser GPL, or the Affero GPL).
Nota che non sono un avvocato e questa risposta non costituisce nemmeno lontanamente alcun tipo di consulenza legale.
Leggi altre domande sui tag open-source licensing