Piccola guida alle licenze II
di Luca Bove (PuntoWeb.Net Srl)
-GNU General Public License (GPL)-
Dal 1984, lo scopo del progetto GNU è stato di sviluppare un ambiente UNIX completo che comprenda la licenza dei free software.
Sebbene una parte del codice utilizzato nel progetto GNU ricada nell'ambito del pubblico dominio, la grande maggioranza ha licenza GPL. GPL è una specifica implementazione del copyleft, gioco di parole che indica il contrario di copyright:
right=destra left=sinistra ma anche right=diritto left=permesso, quindi copia permessa.
Il software copyleft deve essere libero, deve includere il codice sorgente e deve essere modificabile e ridistribuibile senza limitazioni. La GPL proibisce i brevetti proprietari relativi alla modifica del software, proibisce le royalties e richiede che gli stessi termini di libera distribuzione siano allegati quando si ridistribuisce il software o anche derivazioni di esso. Per questo motivo la licenza è anche conosciuta come "licenza virus". Questa licenza non è ristretta solo ai progetti GNU, chiunque può creare del software e rilasciarlo con questa licenza.
Ad esempio il popolare compilatore GNU e gli strumenti associati hanno licenza GPL. Questo significa che tutti coloro che effettuano dei miglioramenti al compilatore GNU devono poi dare il nuovo codice alla comunità. E' importante comunque notare che questo non significa che il software costruito con il compilatore debba essere free.
Quindi e' legale utilizzare uno strumento free software per produrre software proprietario.
-GNU Lesser General Public License (LGPL)-
La LGPL è usata come licenza per il free software in modo che quest'ultimo possa essere incorporato sia nel software free sia in quello proprietario. Si puo' dire che sia il fratellastro più debole della GPL.
Le regole sono sostanzialmente le stesse, tranne una: è eliminato l'obbligo che le proprie estensioni al software siano aperte. In questo modo i componenti LGPL rimangono sempre free software, ma possono essere inclusi in un pacchetto software proprietario.
La GPL è stata progettata per scoraggiare la creazione di software proprietario e incoraggiare il free software. Se volete costruire il vostro codice intorno a una libreria o pacchetto GPL, sarete poi costretti a dare il codice sorgente delle vostre modifiche. Questo non è un problema con un pacchetto LGPL, come la libreria GNU C, che può essere legalmente inclusa in un software proprietario.
Questa licenza viene in genere utilizzata per le librerie, che sono sfruttate nella produzione di software.
Ricapitolando il software GPL non può essere incluso in software proprietario, mentre quello LGPL si. In entrambi i casi si possano comunque utilizzare (ma con la GPL non includere) in prodotti proprietari.
-Open Source-
Questo termine ha creato molta confusione. Sebbene abbiamoiniziato l'articolo con questa parola, non c'é alcuna chiara definizione per "software open source" e nessuna licenza standard. Diverse società usano il termine "open source" in modi completamente diversi.
L'idea è simile a quella del free software (si può generalmente usare, modificare e ridistribuire il software), ma c'é poca enfasi sui diritti del software di essere libero. Questo perché le grandi società mostrano grandi riserve quando si tratta di perdere il controllo del loro software. C'é anche una definizione di Open Source che si può trovare a http://www.opensource.org (la traduzione italiana si trova in http://www.apogeonline.com/openpress/op_definition.html).
Nonostante la proliferazione di diverse licenze che rientrano nella cerchia dell'Open Source (una lista completa si può trovare in http://www.opensource.org/licenses), in genere esse si avvicinano più alla licenza LGPL piuttosto che alla GPL. In altre parole se utilizziamo del software Open Source, lo possiamo in genere includere in codice proprietario.
Riguardo questa classe di licenza c'é stato un ampio dibattito tra i sostenitori del puro Free Software e quelli del più generico Open Source. In questo momento sembra prevalere quest'ultimo.