
Abbiamo visto cosa vuol dire software libero.
Adesso analizziamo le licenze più comuni.
La principale licenza utilizzata per il software libero è senz’altro la GNU General Public License (GPL), creata da Richard Stallman per il sistema GNU. Sotto questa licenza (o sue derivate) viene distribuita la gran parte dei programmi che costituiscono un tipico sistema GNU/Linux: tutto il software GNU, ovviamente, ma anche il kernel Linux, gli ambienti desktop GNOME, KDE e XFCE (ed anche altri), applicazioni come GIMP, OpenOffice.org (sotto una derivata chiamata LGPL), Firefox (che usa anche la licenza Mozilla), VLC e tanti altri.
Il principio su cui si basa la GPL è chiamato copyleft: ovvero parte dal copyright, ma lo ribalta (left=sinistra, ma anche “lasciato, concesso”; right=destra, ma anche “diritto”). Invece di detenere tutti i diritti in capo all’autore (”all rights reserved” = tutti i diritti riservati) la licenza GPL concede la maggioranza dei diritti all’utilizzatore. Per questo, in italiano, viene spesso tradotto come “permesso d’autore”.
Questo è chiaro sia dal preambolo della licenza:
Le licenze della maggior parte dei programmi hanno lo scopo di togliere all’utente la libertà di condividere e modificare il programma stesso. Viceversa, la Licenza Pubblica Generica GNU è intesa a garantire la libertà di condividere e modificare il software libero, al fine di assicurare che i programmi siano liberi per tutti i loro utenti.
Ma entriamo nel dettaglio: cosa significa precisamente che una licenza è “copyleft”? Significa che essa garantisce tutte le 4 libertà del software libero, ma impone una restrizione: se modifichi il programma e lo distribuisci, devi farlo sempre sotto la stessa licenza.
Il motivo è presto detto: se non ci fosse questa restrizione, qualcuno potrebbe prendere il programma, modificarlo (magari in modo banale, cambiando qualcosa di insignificante), e poi ridistribuirlo come programma proprietario. In questo modo si interromperebbe la catena che è il vero successo della GPL: io creo un programma, qualcuno lo migliora e tutti (me compreso) possono godere di tali migliorie.
Viceversa chi chiude il programma sarebbe l’unico ad avvantaggiarsi delle migliorie. Neppure l’autore originario potrebbe farlo.
Capisco, ma chi sarebbe così fesso da farsi fregare così?
In realtà non si tratta di “fessagine”. La licenza BSD, sotto la quale sono distribuiti molti software (tra cui i sistemi BSD come FreeBSD, NetBSD e OpenBSD) è proprio una licenza senza copyleft.
Chiunque può prendere un programma sotto tale licenza, chiuderlo e farne una versione proprietaria. In effetti Mac OS X è in parte una versione proprietaria di BSD.
Il motivo per cui esiste la licenza BSD è però pratico: il software sotto licenze così permissive poteva accedere ai finanziamenti del governo statunitense che intendeva in tal modo favorire i produttori di software, che potevano usare senza nessuna restrizione i programmi scritti nelle università. Così le università americane come Berkeley, MIT e altre usano licenze di questo tipo.
In effetti, alcuni pezzi di BSD si trovano in tutti i sistemi operativi moderni, Windows compreso. Il più importante di essi è BIND (Berkeley Internet Name Domain), il software che traduce gli indirizzi web come “www.google.it” in numeri (il cosiddetto indirizzo IP).
Un altro importante software sotto una licenza simile alla BSD (la licenza MIT/X11) è X Window System, cioè il sistema grafico dei s.o. Unix (GNU/Linux compreso, ma non Mac OS X). Xorg (che è una versione di X) è anch’esso sotto questa licenza.
In sintesi, le licenze libere si distinguono in due grandi famiglie: le licenze copyleft (come la GPL) e le licenze permissive (come BSD e MIT).











Ottima spiegazione!
Se devo essere sincero.. non ci avevo mai capito una mazza sulla questione licenze… era così facile però!
Interessante, sarebbe molto bello/utile avere una tabella con le varie licenze in cui si mettessero in risalto le differenze e le restrizioni o permissioni che queste danno.
Conplimenti per la spiegazione! Il tuo blog lo trovo interessantissimo!
Quoto il commento di http://www.itcsp.it: che ne dici di fare una griglia dove evidenziare le differenze delle più diffuse licenze del sw libero? Come ad esempio (oltre a quelle menzionate nell’articolo) la LGPL, Apache, e Mozilla. Insomma un articolo che rende facile la scelta di una licenza che più si addice al proprio programma.
Ciao! Complimenti perché ogni volta produci articoli di alta qualità secondo me!
Visto che l’interesse pongo una domanda: che licenza hanno le notizie che troviamo sui blog o sui giornali on-line, spesso non è specificata, esiste un default? Molte volte invece noto che hanno una CreativeCommons (mi pare) cosa prevede questa? In particolare posso prendere un articolo modificarlo e metterlo nel mio blog? Devo citare la fonte o l’autore?
Grazie
Questo dipende da quale licenza usa. Ci sono varie licenze Creative Commons. E’ facile capurle perché se clicchi sul link che l’autore mette alla licenza, escono delle icone esplicative su ciò che puoi fare o no.
Ad esempio clicca su “copyright” in alto sul mio blog, lì c’è un link alla licenza CC che uso.
@www.itcsp.it
l’autore e la fonte in italia vanno citati sempre, questo perché il public domain non è possibile data la legislazione vigente che prevede che i diritti morali (tra cui la paternità di un opera) siano inalienabili.
Ovvio che è presumile che se qualcuno rilascia il suo lavoro sotto public domain (o sotto una creative commons che non preveda il “by”, ovvero attribution) anche in italia (dove quella licenza sarebbe nulla) non avrebbe nulla da obiettare a una non attribuzione.
e poi dicono che i bravi insegnanti sono irreperibili, non so se insegni ma spieghi davvero molto bene, complimenti
Le migliori licenze sono le BSD e la MIT (la mia preferita). Tipicamente in stile universitario!
Io non rilascerei mai un sw sotto BSD o MIT o licenza Apache
Interessante! Bella guida come sempre!
Critica: dici sempre che quando si usano parole inglesi nel contesto italiano non bisogna mettere la “s” in fondo anche se sono plurali. Prova un po’ a rileggerti il titolo dell’articolo…
ottimo articolo! come sempre
@simpe: hai ragione.
che significa “Viceversa chi CHIUDE il programma sarebbe l’unico ad avvantaggiarsi delle migliorie”
che significa chiudere il programma?
grazie
@anonimo:
chiudere il programma vuol dire appunto rendere il programma closed-source: sorgenti chiusi, non liberi.
Se prendi un programma rilasciato sotto BSD e lo chiudi, lo vendi e nessuno se ne accorge.
Stessa cosa può valere per la GPL (tanto come fai??) però qui ci sono vincoli legali.
Ciao
Ecco, io volevo fare una domanda…
Poniamo caso che io sviluppi un software sotto licenza GPL.
Un tizio arriva, cambia due virgole al mio software, lo brevetta, lo rende propietario e lo rivende.
Io giustamente, decido di fargli causa.
In questioni legali di questo stampo, quanto è valida la licenza GPL?
non si brevetta “il software” ma ciò che si fa con il software.
Uhm…allora mi sono spiegato male ^^
Se io rilascio software sotto licenza GPL, tutte le versioni derivate devono essere rilasciate con la stessa licenza, no?
Ma se uno lo modifica, e lo rilascia con una licenza diversa (del tipo “tutti i diritti riservati”) guadagnandoci un bel po’ di soldi, va contro le regole della licenza.
In tribunale, quanto valore ha la GPL?
È questo che volevo chiedere, ma non so manco ora se sia chiaro o meno :S
Be’, mica saresti il primo caso…. vale vale, non preoccuparti.
FedeXD Ha ragione.
I miei dubbi sono questi:
1) Come faccio a controllare la distribuzione del mio codice?
2) Chiunque lo può acquisire sotto GPL, lo modifica e se lo rivende a un mare di soldi. Come faccio io a saperlo? E se per MIRACOLO riesco a saperlo come faccio a dimostrare che il codice dal quale è partito il ladro era MIO.
3)Si dice che la Fs Foundation mette a disposizione i suoi legali. Ma io pinco pallino senza un quattrino (da notare la rima) riuscirò a far valere questi fantomatici diritti?
1) non la controlli… lo scopo della GPL è proprio che l’autore perde il controllo sul codice
2) se rilascia il sorgente è perfettamente legale
3) sia la FSF che altre istituzioni mettono a disposizione i legali a chi non può permetterselo.
Salve, io ho scritto un CMS in php, abbastanza carino, soprattutto senza pretese…
vorrei sapere come fare per pubblicare il sorgente (non posso farne a meno se voglio distribuirlo), facendo valere i miei diritti di creatore.
a me va benissimo che qualcuno lo modifica, ma voglio che venga scritto che è una modifica del mio, con sito web allegato..
è possibile?
con la AGPL (Affero GPL) vai benissimo, se vuoi che il tuo nome e link compaia anche nell’interfaccia devi mettere una clausola aggiuntiva.
ah quindi metto io le clausole e chi vuole scaricare o modificarlo deve accettare…
capito, grazie mille!
Questa: http://developers.facebook.com/fbopen/cpal.html è la licenza di Fabebook che va incontro proprio alle tue richieste. E’ molto simile alla licenza di mozilla ma con qualche mdifica che la rende simile anche alla Affero GPL e che in più vincola l’attribuzione.
Putroppo credo che non la puoi copiare per il tuo progetto, però magari puoi trarre ispirazione per la clausola.
p.s. mi correggo: sì, la puoi usare liberamente: http://opensource.org/licenses/cpal_1.0