Wednesday, October 04, 2006

La GPL ed i Web Services

La GPL impone a chi modifica un codice distribuito con GPL di rilasciare il proprio lavoro ancora con la GPL. Questo è un modo per costruire un'economia in cui chi riceve un vantaggio dal software libero debba poi restituire in qualche modo il *favore*. Questo funziona bene nel caso in cui il software venga distribuito da chi lo ha prodotto all'utente che lo installa e lo utilizza. Ma cosa succede se io prendo un software con licenza GPL, lo adatto, lo modifico, lo faccio girare come un web service e permetto agli utenti di interagire con esso solo attraverso la rete? Succede che di fatto la GPL v2 (che è quella in *vigore* finora) non mi impone di rilasciare le mie modifiche in nessun modo. Quotando la GPL (fonte della traduzione)

Bisogna fare in modo che ogni opera distribuita o pubblicata, che in parte o nella sua totalità derivi dal Programma o da parti di esso, sia concessa nella sua interezza in licenza gratuita ad ogni terza parte, secondo i termini di questa Licenza.

Nel secondo draft della nuova GPL v3 sembra che questo problema verrà affrontato indicando che l'utente ha diritto di scaricare il codice sorgente del servizio quando questo è implementato a partire da software rilasciato sotto GPL. Riporto un estratto dal testo disponibile qui.

if a modified version of the material they cover is a work intended to interact with users through a computer network, that those users be able to obtain copies of the Corresponding Source of the work through the same network session


Sarà sufficiente a garantire le libertà degli utenti nel nuovo scenario delle rich internet applications? Forse no. Tornerò presto su questo argomento