Feb 19

Sintesi delle licenze Open Source e principali caratteristiche

Tag: Generale, LinuxGiampiero Granatella @ 09:09

In questo post faccio una veloce panoramica delle licenze open source maggiormente utilizzate e sul loro utilizzo


GNU General Public License (GPL versione 2)

Giugno 1991

La licenza GPL afferma che è lecito copiare e distribuire copie del codice sorgente a condizione che venga riprodotta chiaramente su ogni copia una appropriata nota di copyright e di assenza di garanzia; che si mantengano intatti tutti i riferimenti alla Licenza e all’assenza di ogni garanzia; che si dia a ogni altro destinatario del Programma una copia di questa Licenza insieme al Programma. E’ possibile ottenere un pagamento del software prodotto per il trasferimento fisico del software. E’ possibile fare pagare l’assistenza o una copertura assicurativa.

La principale preoccupazione di questa licenza è permettere che il software sotto GPL sia liberamente distribuibile e modificabile. Per raggiungere questo obiettivo vengono messe alcune restrizioni:

· Chi distribuisce software GPL (gratis o secondo un compenso) deve garantire che chi lo riceva possa avere i suoi stessi diritti (avere il codice, poterlo modificare, ridistribuirlo) senza dover rendicontare niente da parte di chi lo ha distribuito

· Deve allegare copia della licenza GPL con il prodotto

Le modifiche al software devono essere rilasciate con una licenza gratuita. Se si fanno delle integrazioni o delle opere derivate, se queste non sono scindibili dal programma originale sotto GPL, il software derivato o integrato deve essere redistribuito sotto licenza GPL.

E’ obbligatorio distribuire con il software prodotto anche il codice sorgente.

Se espressamente scritto ‘o licenza successiva’, i termini la GPL versione 2 in un prodotto possono mutarsi nella versione 3 della GPL.

E’ di prossima uscita la GPL versione 3

Prodotto principale che utilizza tale licenza: kernel linux

GNU Lesser General Public License (LGPL)

Simile alla GPL, ma meno restrittiva usata in particolar modo per le librerie. Questo tipo di licenza permette di usare prodotti LGPL anche in software commerciali (non free) se questi utilizzano tali librerie.

Diverso è il discorso a modifiche alla libreria se, in questo caso il prodotto finale deve essere nuovamente rilasciato in LGPL.

Quindi si scindono i concetti di integrazione del prodotto (il suo uso in un prodotto più grande) dalla modifica.

Per le altre caratteristiche: ridistribuzione, libertà di utilizzo, compensi, ecc… valgono le regole della GPL.

Prodotto principale che utilizza tale licenza: molte librerie di linux e di altro genere (ad esempio java)

Apache Software License

2000

L’apache è una licenza open che meglio identifica il proprietario (chi possiede il copyright) del prodotto, difatti in ogni licenza deve essere riportata la frase:

“This product includes software developed by the Apache Software Foundation (http://www.apache.org/).”

Il codice può essere distribuito e/o modificato, nessuna questione sui prodotti derivati o integrati o vincoli su questi prodotti, l’unico vincolo è che non utilizzino il nome apache se non autorizzati.

Sostituita dalla versione 2

Prodotto principale che utilizza tale licenza: apache webserver versioni precedenti alla v.2

Apache license

Versione 2.0 Gennaio 2004

Si può copiare, modificare il software a patto che:

· Ridistribuire con il software la licenza Apache

· Evidenziare le modifiche apportate

Possono essere messi dei vincoli o altre licenze solo sulle modifiche o sulla prodotto integrato, non sul software originario

Prodotto principale che utilizza tale licenza: apache webserver v.2 e successive

BSD License e MIT License

BSD e MIT license sono sostanzialmente identiche.

BSD offre un template su cui scrivere le proprie licenze. La licenza è molto semplice si dà il permesso di ottenere, modificare, integrare il software ottenuto senza mettere limiti sul lavoro fatto siano esse modifiche o integrazioni.

Prodotto principale che utilizza tale licenza: il DBMS postgresql, e i vari sistemi Unix derivanti da BDS (open BSD, free BSD). MacOS X è fatto sulla base di free BSD, esempio di software commerciale su base open source.

Mozilla Public License

Versione 1.1

Molto simile alla BSD, si è liberi di copiare, modificare e integrare il prodotto. Unica differenza se si modifica o si distribuisce il prodotto questo deve essere sotto la Mozilla License. Se sintegra in un prodotto di dimensioni maggiori questo può essere redistribuito.con la licenza che si vuole, l’importante è che la sottoparte venga sempre redistribuita con licenza Mozilla.

Prodotto principale che utilizza tale licenza: browser Mozilla e Firefox

Elenco delle principali licenze e link di riferimento

· Apache Software License http://www.opensource.org/licenses/apachepl.html

· Apple Public Source License http://www.opensource.org/licenses/apsl.html

· Artistic license http://www.opensource.org/licenses/artistic-license.html

· BSD license http://www.opensource.org/licenses/bsd-license.html

· Common Public License http://www.opensource.org/licenses/cpl.html

· Effiel Forums License http://www.opensource.org/licenses/eiffel.html

· GNU General Public License (GPL) http://www.opensource.org/licenses/gpl-license.html

· GNU Library or “Lesser” Public License (LGPL) http://www.opensource.org/licenses/lgpl-license.html

· IBM Public License http://www.opensource.org/licenses/ibmpl.html

· Intel Open Source License http://www.opensource.org/licenses/intel-open-source-license.html

· Jabber Open Source License http://www.opensource.org/licenses/jabberpl.html

· MIT license http://www.opensource.org/licenses/mit-license.html

· MITRE Collaborative Virtual Workspace License (CVW License) http://www.opensource.org/licenses/mitrepl.html

· Motosoto License http://www.opensource.org/licenses/motosoto.html

· Mozilla Public License 1.1 (MPL 1.1) http://www.opensource.org/licenses/mozilla1.1.html

· Nethack License http://www.opensource.org/licenses/nethack.html

· Nokia Open Source License (NOKOS License) Version 1.0a http://www.opensource.org/licenses/nokia.html

· Open Group Test Suite License http://www.opensource.org/licenses/opengroup.html

· Python license (CNRI Python License) http://www.opensource.org/licenses/pythonpl.html

· Python Software Foundation License http://www.opensource.org/licenses/PythonSoftFoundation.html

· Qt Public License (QPL) http://www.opensource.org/licenses/qtpl.html

· Ricoh Source Code Public License http://www.opensource.org/licenses/ricohpl.html Sleepycat License http://www.opensource.org/licenses/ricohpl.html

· Sun Industry Standards Source License (SISSL) http://www.opensource.org/licenses/sisslpl.html

· Sun Public License http://www.opensource.org/licenses/sunpublic.html

· University of Illinois/NCSA Open Source License http://www.opensource.org/licenses/UoI-NCSA.html

· Vovida Software License v. 1.0 http://www.opensource.org/licenses/vovidapl.html

· W3C License http://www.opensource.org/licenses/W3C.html

· X.Net License http://www.opensource.org/licenses/xnet.html

· zlib/libpng license http://www.opensource.org/licenses/zlib-license.html

· Zope Public License http://www.opensource.org/licenses/zpl.html
I problemi delle integrazioni

Vista le caratteristiche delle licenze descritte nel paragrafo precedente si intuisce la difficoltà nell’integrare prodotti open source con licenze diverse. Se infatti, per esempio, integriamo un prodotto in GPL con uno con licenza BSD, con che licenza dobbiamo dare il prodotto finale?

A titolo di esempio elenchiamo tutte le licenze non compatibili con una la licenza GPL (e che quindi non dovrebbero essere integrati con prodotti derivanti da licenze GPL), le incompatibilità sono state segnalate dalla stessa gnu

· XFree86 1.1 License

· Affero General Public License

· Original BSD license

· OpenSSL license

· Academic Free License, version 1.1.

· Academic Free License, version 2.1.

· Apache License, Version 1.0

· Apache License, Version 1.1

· Apache Software License, version 2.0

· Zope Public License version 1

· License of xinetd

· Old OpenLDAP License, Version 2.3

· IBM Public License, Version 1.0

· Common Public License Version 1.0

· Eclipse Public License Version 1.0

· LaTeX Project Public License 1.2

· LaTeX Project Public License 1.3a

· Common Development and Distribution License (CDDL)

· Netizen Open Source License (NOSL), Version 1.0

· Interbase Public License, Version 1.0

· Sun Public License

· Nokia Open Source License

· Netscape Public License (NPL)

· Jabber Open Source License, Version 1.0

· Sun Industry Standards Source License 1.0

· Q Public License (QPL), Version 1.0

· PHP License, Version 3.0

· Zend License, Version 2.0

· BSD license.

· Vita Nuova Liberal Source License

· Lucent Public License Version 1.02 (Plan 9 license)

· Apple Public Source License (APSL), version 2

Sono compatibili invece le seguenti licenze :

· GNU General Public License

· GNU Lesser General Public License,

· License of the run-time units of the GNU Ada compiler

· X11 License

· Expat License.

· Standard ML of New Jersey Copyright License

· Public Domain

· CeCILL version 2

· Cryptix General License

· License of ZLib

· License of the iMatix Standard Function Library

· Berkeley Database License (aka the Sleepycat Software Product License)

· OpenLDAP License, Version 2.7

· License of Python 1.6a2 and earlier versions

· License of Python 2.0.1, 2.1.1, and newer versions

· License of Perl

· Clarified Artistic License

· Zope Public License version 2.0

· Intel Open Source License (as published by OSI)

· License of Netscape Javascript

· eCos license version 2.0

· Eiffel Forum License, version 2

· License of Vim, Version 6.1 or later

· Boost Software License

· EU DataGrid Software License

· The license of Ruby