GNU Public License (GPL)

Parlare del Software Libero significa per forza di cose parlare della sua licenza-simbolo, ossia la GNU Public License e di ciò che ha rappresentato e continua a rappresentare in quel mondo.

La GPL non è solamente un lungo documento scritto in legalese che riporta un elenco di cose che si possono e non possono fare con un determinato software, ma incarna totalmente gli obiettivi del suo autore originario, Richard Stallman, fondatore del Free Software Foundation (FSF) e del progetto GNU nel cui alveo è nata questa licenza. La GPL è la licenza simbolo del cosiddetto copyleft:

Copyleft individua un modello di gestione dei diritti d’autore basato su un sistema di licenze attraverso le quali l’autore (in quanto detentore originario dei diritti sull’opera) indica ai fruitori dell’opera che essa può essere utilizzata, diffusa e spesso anche modificata liberamente, pur nel rispetto di alcune condizioni essenziali.

Il concetto chiave è la libertà, un tipo di libertà probabilmente ignota agli utenti di quel software. Questi ultimi, di solito tendono a preoccuparsi solamente del costo di un programma e degli eventuali dati personali trattati da essi. La GPL si spinge avanti, nel senso che il software rilasciato sotto quei termini non possa mai essere soggetto ad alcuna restrizione particolare.

Questo implica che l’utente debba anche disporre dei sorgenti di quel software, cosicché possa modificarlo a piacere ed eventualmente ridistribuirlo a sua volta, negli stessi termini con cui ne ha avuto accesso.

Emergono quindi le due paroline magiche che rendono la GPL tanto speciale e spesso invisa a molte aziende che producono software proprietario: la licenza GPL è sostanzialmente permanente e virale.

La prima parola si riferisce all’aspetto distributivo del software: se viene rilasciato come GPL, quel software lo sarà a vita. In altre parole nessuno può prendere del codice GPL, modificarlo e ridistribuirlo cambiandone la licenza, magari rendendolo proprietario. Se è GPL, lo sarà per sempre.

Ad esempio, se anche un giorno l’autore di un software GPL decidesse liberamente di abbandonarla in favore di un’altra, non potrebbe farlo retroattivamente nel senso che qualcuno potrebbe legittimamente recuperare l’ultima versione rilasciata come GPL e proseguirne lo sviluppo: ciò è avvenuto e viene abbastanza spesso, ma in qualche modo le libertà concesse dalla GPL sussistono indisturbate.

L’altra parola è relativa alla possibilità di espansione ed integrazione del codice GPL nel proprio: le opere derivate da codice GPL devono essere anch’esse rilasciate con la stessa licenza. La viralità sta proprio in questo: se del codice viene “infettato” dalla GPL, lo diverrà anch’esso.

Detto così la GPL sembrerebbe una licenza in qualche modo autoarchica, nel senso che apparentemente si potrebbe mischiare codice GPL solo con altro codice GPL. In realtà non è così: la Free Software Foundation da tempo fornisce un elenco di licenze compatibili, spiegando chiaramente cosa significhi concretamente ciò. Dal sito di GNU:

Che significa dire che una licenza è “compatibile con la GPL”?

Significa che l’altra licenza e la GNU GPL sono compatibili; ovvero, è possibile combinare il codice rilasciato sotto le condizioni dell’altra licenza con il codice protetto dalla GPL per realizzare un programma più grande. La GPL permette una tale combinazione, a patto che il programma risultante sia rilasciato sotto la GNU GPL. L’altra licenza è compatibile con la GPL se permette la stessa cosa.

Le versioni

Nel tempo di sono succedute varie revisioni di questa licenza, ma la versione 2.0rappresenta quella per antonomasia, il punto di svolta nella sua “carriera”. Rilasciata nel 1991, fu adottata dal kernel Linux ed il resto è storia.

Contemporaneamente a questa versione, venne rilasciata una versione “alleggerita” dal punto di vista dei requisiti, chiamata LGPL. Originariamente pensata per il rilascio di librerie software (la “L” stava per “Library”, in seguito per “Lesser”), tale licenza permette di utilizzare il software ma senza obbligare al rilascio con la medesima licenza.

L’ultima versione, la 3.0 del 2007, aggiunge nuove regole e ne esplicita altre, al fine di renderla più facilmente adattabile alle varie legislazioni internazionali nonché evitare fenomeni come la cosiddetta tivoization.

Software Libero e Software Open Source

La GPL è al tempo stesso l’araldo del Free Software e contemporaneamente Open Source. Questi due mondi, spesso raccolti nell’acronimo FOSS (Free and Open Source Software) non coincidono esattamente.

Il Free Software contiene e propugna un valore di libertà che si spinge all’ideologia: il software gratis è solo un effetto pratico e collaterale della libertà garantita all’utente.

Il mondo Open Source pare invece orientato soprattutto ad aspetti più pragmantici quali condivisione, collaborazione tramite accesso ai sorgenti del software, senza gli aspetti più filosofici della questione.

Nonostante queste differenze la GPL, con la sua doppia natura, rappresenta anche un collante importante.