Archive for the ‘Licenze’ Category

Licenze libere senza copyleft

Domenica, Luglio 5th, 2009

Cos’è il copyleft?

Il termine copyleft è chiaramente il contrario di copyright. La traduzione italiana (contestata) è permesso d’autore. Ma che cosa significa?

Il copyright sono i “diritti” dell’autore di un’opera, intesi come divieti per chi ne possiede una copia. La famosa frase “All rights reserved” (tutti i diritti riservati) rende abbastanza ovvio l’ossimoro: non si parla di diritti, ma di rigide imposizioni.

Il copyleft è una clausola che può essere applicata a una licenza libera. Quest’ultima garantisce le libertà basilari all’utente. Tra queste libertà vi è quella di distribuirla. Il problema nasce proprio qui: se io scarico un software libero, ho il diritto di:

  • Distribuirlo come software non libero?
  • Aggiungervi moduli non liberi?
  • Integrarlo in un software non libero di cui sono proprietario?

Personalmente penso che la risposta alle domande sopra poste debba sempre essere no. Per lo stesso motivo per cui si sviluppa software libero, bisognerebbe impedire che tale software venisse distribuito non liberamente o andasse a integrare altri software che liberi non sono.

Altri la pensano diversamente. Ritengono che impedire le tre azioni sopra elencate equivalga a privare gli utenti di alcune loro libertà. A questa obiezione rispondo che non bisogna abusare della parola libertà. La mia libertà inizia dove finisce la tua? Bene, allora non ho il diritto di prendere un software (scritto da me o da altri), fornirtene una copia e decidere cosa farai tu con quella copia. Che senso ha lagnarsi di “non essere liberi di imporre”? E’ pura retorica.

Ad ogni modo non tutti la pensano così e non riuscirò, con questo post, a convincerli a rivedere le proprie idee. Con questa introduzione voglio principalmente spiegare cos’è il copyleft: è il “copyright al contrario” che impedisce di distribuire un software libero (o i suoi moduli) come software non libero.

L’uso del programma in rete

Le licenze, con o senza copyleft, hanno un problema storico. Come ho spiegato in un post precedente, le licenze libere tradizionali sono state scritte anni prima della diffusione di internet come la conosciamo oggi. Di conseguenza esse garantiscono tutte le libertà fondamentali agli utenti che ricevono una copia del programma, che avranno quindi la possibilità di eseguirlo in locale o installarlo essi stessi su di un server. Quando utilizzano il programma attraverso una rete però (webmail, forum, mailing list…) non ricevono alcuna copia del programma e i termini della licenza non si applicano. Queste persone non vedono il codice sorgente, tanto meno lo possono modificare o ridistribuire. Eppure, da un punto di vista logico, non esiste un motivo per il quale chi usa Evolution debba avere più libertà di chi usa una webmail.

L’unica licenza che prende in considerazione questo problema, e che quindi garantisce a chi usa un programma attraverso la rete le sue libertà basilari, è la GNU AGPL. Si tratta di una licenza libera dotata di un forte copyleft, derivata dalla GPL.

Al momento, chi non ama il copyleft non ha a disposizione una licenza già pronta che risolva i problemi legati all’uso di un programma in rete. Vi è però una motivazione: inserire una clausola che garantisca le libertà degli utenti di rete significherebbe inserire una forma di copyleft. Infatti non si garantirebbe solo la libertà di chi riceve il programma che si sta distribuendo, ma anche la libertà degli utenti del suo server.

Chi considera una regola simile inaccettabile, a mio parere, dovrebbe comunque garantire in prima persona almeno i diritti degli utenti dei propri siti internet. Nulla gli vieta infatti di distribuire i sorgenti di tutti i programmi liberi che crea o che utilizza, se la licenza lo consente.

Le licenze senza copyleft

La più famosa licenza priva di copyleft è indubbiamente la BSD. Quando si utilizza questo nome però bisognerebbe capire cosa si intende. Esistono infatti due versioni: la licenza BSD a 4 clausole (o licenza BSD originale o FreeBSD license) conteneva la cosiddetta clausola pubblicitaria (ad clause). La clausola numero 3 imponeva infatti di includere nel software una frase che riconoscesse la paternità del programma alla This product includes software developed by the University of California, Berkeley and its contributors. Non si tratta ovviamente di un abuso, ma questo ha portato il problema della proliferazione dei riconoscimenti. Poichè ogni autore di un “pezzo” di software tendeva a modificare questa licenza aggiungendo il proprio nome o quello della propria organizzazione, man mano che nuovi programmatori miglioravano il codice si aggiungevano sempre più nomi. Lo stesso FreeBSD ha deciso di eliminare quella clausola e tentare di eliminare i nomi che potevano essere eliminati quando, nel 1997, ha dovuto rilasciare una versione con ben 75 riconoscimenti. Va comunque detto che non vi è nulla di non libero in tale licenza, solo qualche problema pratico.

La versione successiva della licenza viene generalmente chiamata la BSD a 3 clausole, o modificata. La clausola publicitaria è stata depennata. Questa licenza, in pratica, permette a chi riceve una copia del software di farne ciò che desidera. Anche distribuirlo in forma binaria - purchè naturalmente applichi la stessa licenza.

La licenza X11 non obbliga l’utente a includere il nome dell’autore originale (l’X Consortium) ma al contrario impedisce l’uso di tale nome a fini pubblicitari, a meno che non si disponga di esplicita dichiarazione scritta da parte dell’interessato.

La SGI Free Software License B, versione 2.0, è molto simile alla X11. Le versioni precedenti alla 2.0 non sono considerate libere. Tuttavia esse permettono di ridistribuire il software con una versione successiva della licenza, perciò la loro non-libertà si può annullare ni maniera banale.

La licenza Expat permette essenzialmente di fare qualsiasi cosa con il software che copre, purchè non si elimini la licenza. Inoltre essa si applica esplicitamente anche ai file di documentazione distribuiti con il programma.

Sia la licenza X11, sia la Expat sono talvolta chiamate licenza MIT. Data l’ambiguità del termine sarebbe meglio evitarlo.

Come si combinano queste licenze con la GPL e la AGPL?

Tutte le licenze senza copyleft qui elencate sono compatibili con la GPL. Questo significa che il codice coperto da GPL e il codice libero coperto da queste licenze possono essere combinati insieme formando un’unica entità distribuibile, modificabile e ridistribuibile. Ogni parte di codice sarà sottoposto solo alle regole stabilite dalla licenza alla quale è associato.

Queste licenze sono compatibili anche con la AGPL. Si tenga presente che un modulo coperto da una di esse, se inserito in un software più ampio coperto da AGPL, viene sottoposto a una delle clausole della AGPL. Se modificato, quindi, il suo codice sorgente dovrà essere reso disponibile alle persone che se ne servono attraverso una rete.

Approfondimenti sulla AGPL

Domenica, Luglio 5th, 2009

Ho già parlato (un paio di post fa) della licenza GNU Affero General Public License, o AGPL. Ma vorrei approfondire il tema.

Differenze con la GPL

La AGPL3 differisce con la GPL3per principalmente per la sezione 13. La riporto, in inglese, perchè GNU non ha ancora fornito una traduzione in italiano.

13. Remote Network Interaction; Use with the GNU General Public License.

Notwithstanding any other provision of this License, if you modify the
Program, your modified version must prominently offer all users
interacting with it remotely through a computer network (if your version
supports such interaction) an opportunity to receive the Corresponding
Source of your version by providing access to the Corresponding Source
from a network server at no charge, through some standard or customary
means of facilitating copying of software.  This Corresponding Source
shall include the Corresponding Source for any work covered by version 3
of the GNU General Public License that is incorporated pursuant to the
following paragraph.

Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU General Public License into a single
combined work, and to convey the resulting work.  The terms of this
License will continue to apply to the part which is the covered work,
but the work with which it is combined will remain governed by version
3 of the GNU General Public License.

Per prima cosa, essa dice che, se si modifica il codice sorgente del programma, bisogna offrire ai propri utenti (che interagiscono con il programma attraverso la rete) la possibilità chiara (prominently) di ricevere una copia dei sorgenti stessi.

La AGPL e le altre licenze

Il codice sorgente del programma rilasciato con la AGPL potrebbe includere delle librerie o altri moduli, che possono anche essere stati scritti da altri programmatori, e che potrebbero essere coperti da licenze differenti. Allora sorge la domanda: se si modifica queste librerie, occorre poi distriburle agli utenti che le utilizzano attraverso una rete?

Risposta: si, a meno che non si tratti di librerie di sistema. Non sarebbe ragionevole, infatti, chiedere che chi modifichi libc ne fornisca il sorgente agli utenti del proprio sito. Tuttavia, se si utilizza una libreria per la connessione al database e questa viene modificata, i sorgenti dovranno essere pubblicamente disponibili.

Per la precisione, la sezione 13 utilizza una definizione ben precisa parlando del “codice sorgente” che deve essere distribuito: lo chiama Corresponding Source. Questo termine è definito nella sezione 1 della AGPL:

The “Corresponding Source” for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities.  However, it does not include the work’s
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work.  For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.

The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.

The Corresponding Source for a work in source code form is that
same work.

AGPL e GPL: compatibili?

La AGPL3 richiama esplicitamente la GPL nella sezione 13 riportata all’inizio. Essa è compatibile con la versione 3 della GPL. Questo significa che è possibile usare una libreria distribuita con GPL3 all’interno di un programma AGPL.

Tuttavia, la AGPL non è compatibile con la GPL2. Questo accade perchè quanto richiesto dalla sezione 13 è definito come Further Resctrictions dalla sezione 7 della GPL2. Essa proibisce qualsiasi ulteriore restrizione, perchè si rischierebbe che un distributore aggiunga alla licenza imposizioni che non hanno a che fare con la libertà.

Scegliere tra AGPL e GPL

La maggior parte degli sviluppatori web che rilasciano script coperti da licenza AGPL3, semplicemente non hanno riflettuto sul fatto che questa licenza non garantisca realmente la libertà degli utenti o non sono a conoscenza della AGPL.

La AGPL andrebbe sempre utilizzata al posto della GPL. Nel caso in cui si stia rilasciando uno script PHP che produce output in HTML, le ragioni sono ovvie. Ma anche quando si sta rilasciando un programma di altro genere è saggio utilizzare la AGPL. Infatti il software potrebbe essere scaricato da programmatori che decideranno di migliorarlo, eventualmente aggiungendovi nuove funzionalità - questa pratica è prevista dalle licenze libere ed è da incoraggiare. Tuttavia questo significa anche che un programma pensato per essere eseguito in locale potrebbe diventare un programma che offre funzionalità di rete, che magari l’autore originale non immaginava. E’ quindi una buona abitudine utilizzare sempre la AGPL.

Troppo libera per Google

Google si proclama sostenitore del software libero e fornisce strumenti per alcuni progetti. Google Code però ha preso una decisione drastica: ha bandito la AGPL. Chiedendo gentilmente agli autori dei progetti coperti da questa licenza di… andarsene.

GPL? No, AGPL

Martedì, Giugno 30th, 2009

La licenza storica del progetto GNU è la GPL. Essa è apprezzata da alcuni e mal sopportata da altri perchè, oltre a garantire all’utente le quattro libertà del software, è dotata di un forte copyleft.

Copyleft è il contrario di copyright. Significa che una licenza, oltre a garantire delle libertà, impone (se di imposizione si può parlare) che queste libertà vengano preservate. Un copyleft minimo consiste nello stabilire che, quando un software viene stabilito, esso sia accompagnato dalla stessa licenza con la quale lo si è avuto. In caso contrario una persona potrebbe prendere un software libero e distribuirlo come software proprietario.

Il copyleft della GPL è particolarmente forte, perchè vieta di aggiungere parti di codice proprietario al programma. Si può modificare e migliorare il software e non distribuirlo. Ma se si desidera distribuirne una versione modificata, i sorgenti delle proprie modifiche devono poter essere visionati da chiunque riceva il software stesso e devono essere coperti da licenza GPL o altre licenze compatibili. Il software o parte di esso inoltre non potrà essere usato come modulo per un software non libero. Vi sono poi ulteriori “restrizioni”, che in realtà non sono altro che garanzie di libertà per l’utente finale.

Ma la GPL ha un forte limite: il suo spirito originale viene completamente snaturato se utilizzata con applicazioni web. Questo perchè quando essa è stata scritta internet non esisteva.
Spieghiamo questo limite con un esempio. Paperino scrive un programma, poniamo un web forum, e lo distribuisce sul suo sito. La licenza è la GPL. Topolino scarica questo forum e lo installa a sua volta sul suo sito. Dal suo punto di vista è software libero: può usarlo come vuole, studiarne i sorgenti, modificarlo e distribuirlo (anche in versione modificata). Infatti, dopo aver constatato che manca una funzione di ricerca tra i messaggi vecchi, Topolino stesso la implementa. Fa qualche prova e si sfrega le mani: va che è una scheggia! Paperoga si collega quotidianamente al sito di Topolino e usa il forum. Un giorno decide di mettere su un forum anche lui, si collega al sito di Paperino, scarica il programma e lo installa. La funzionalità di ricerca non c’è e purtroppo Paperoga non ha le conoscenze per implementarla. Topolino (che mi è sempre stato un po’ antipatico) non ha condiviso con la comunità il codice che ha scritto.
Questo non è giusto: Paperoga usa il forum che gira sul sito di Topolino, è a tutti gli effetti un utente del software. Eppure non gode di nessuna delle quattro libertà sopra citate. Perchè? Tecnicamente perchè non ne ha mai ricevuto una copia. Lo usa attraverso una rete. Topolino, non distribuendo il programma in sè, non è tenuto a fornire nè i sorgenti nè la licenza GPL.
Tutto ciò è perfettamente legale ma profondamente contrario alle intenzioni di chi ha scritto la licenza.

Fortunatamente la società Affero ha scritto una nuova licenza, che è in realtà una variante della GPL. E’ la licenza chiamata GNU Affero General Public License, o semplicemente AGPL. Essa è molto simile alla GPL ma con un’aggiunta importante. Stabilisce che chi modifica il software ricevuto e lo installa su un server pubblico deve condividere con la comunità le modifiche apportate.

In questo modo viene a cadere l’assurda distinzione tra chi utilizza un software dopo averne ricevuta una copia e chi lo utilizza attraverso la rete. Almeno in teoria.

LGPL, una strana licenza

Domenica, Giugno 28th, 2009

La licenza libera per eccellenza scritta e utilizzata dal progetto GNU è la General Public License (GPL). Fin dagli albori o quasi, alla GPL hanno affiancato un’altra licenza un po’ meno libera: la LGPL. Questo acronimo inizialmente stava per Library General Public License e questo ha portato molti sviluppatori a credere che fosse la licenza più adatta per le librerie. Per risolvere l’inconveniente il nome della licenza è stato cambiato in Lesser General Public License: licenza pubblica “un po’ meno generale”.

Infatti le librerie, per essere libere e dotate di un buon copyleft, dovrebbero essere rilasciate con licenza GPL o AGPL. La LGPL è un compromesso tra la libertà assoluta che la GPL giustamente esige e le logiche di mercato. Infatti la differenza tra queste due licenze è molto semplice: una libreria LGPL, pur essendo tecnicamente libera, può essere utilizzata all’interno di un software commerciale.

Sembra strano che il progetto GNU e la Free Software Foundation non possano tollerare che alcune righe di codice proprietario siano inserite in un programma libero (la GPL giustamente lo vieta) ma allo stesso tempo chiudano un occhio se una libreria libera implementa funzionalità che poi verranno utilizzate da software proprietari. In altre parole: un programma libero con un pezzo di codice proprietario non va bene; un programma proprietario con un pezzo di software libero va bene. Eticamente non regge.

Oltretutto interi programmi (e non solo librerie) sono stati rilasciati con licenza LGPL e sono considerati liberi.

Sul sito di GNU vi è un articolo intitolato Why you shouldn’t use the Lesser GPL for your next library, nel quale, oltre a spiegare perchè la LGPL normalmente non dovrebbe essere usata, si spiega perchè in alcuni casi sia ritenuta preferibile. Essenzialmente il ragionamento è questo: se una libreria offre funzionalità che nessun’altra libreria offre, o se la sua qualità è nettamente superiore a quella delle librerie non libere, è giusto che sia rilasciata come GPL; se però teme la concorrenza di altre librerie proprietarie, la sua licenza potrebbe essere la LGPL. Il motivo addotto da GNU è il seguente: i software proprietatari, se possono scegliere quali librerie usare, le scelgono tra quelle che permettono al programma stesso di rimanere non libero; se le librerie libere sono nettamente superiori alle loro concorrenti, non devono porsi questo problema, perchè un software per essere di qualità potrebbe/dovrebbe utilizzarle e divenire libero; se invece non lo sono, per trovare una maggiore diffusione, devono permettere il proprio utilizzo all’interno di programmi non liberi, quindi usare la LGPL.

Il progetto GNU, quindi, sembra partire dal presupposto che un programma proprietario che utilizza una o più licenze LGPL sia eticamente migliore di un programma proprietario che non utilizza alcuna libreria libera. Questo potrebbe essere in parte vero, ma mi rifiuto di esaminare il problema da questo punto di vista. Loro stessi, in altri casi, rifiutano questo tipo di approccio: si veda l’articolo di Stallman Avoiding ruinous compromises, nel quale definisce “rovinoso compromesso” l’inserimento di driver non liberi all’interno delle distribuzioni GNU/Linux allo scopo di aumentarne la diffusione.

Se poi lo scopo è non imporre limitazioni per vie legali, chiedendo implicitamente protezione a quegli stessi poteri che limitano tutte le nostre libertà (digitali e non), allora non bisognerebbe usare alcuna licenza. In tal caso si deve dichiarare esplicitamente il proprio software di pubblico dominio, per che in caso contrario All rights are reserved, come dice la SIAE. Questa è una scelta di tipo diverso, che non giudico migliore nè peggiore.

Usare la LGPL per diffondere maggiormente una libreria, accettando un compromesso eticamente ancor meno accettabile (potenziamento di software proprietari/monopolistici), non è peggio che includere driver proprietari?
Non sarebbe ora che la Free Software Foundation e il progetto GNU allargassero il proprio concetto di “Rovinoso compromesso” e dessero alle fiamme la licenza LGPL?

L’importanza della documentazione Libera

Sabato, Marzo 28th, 2009

Spesso si sottovaluta l’importanza di avere una documentazione libera. Sebbene negli ultimi anni lo “stato dell’arte” della documentazione libera sia molto migliorata, permangono settori specifici in cui essa lascia abbastanza a desiderare. Ad esempio non vi è molta documentazione libera per GNU-Darwin e, per chi volesse documentarsi, da un punto di vista prettamente tecnico potrebbe convenire procurarsi un buon manuale non libero per MacOS X.

Quando si parla di documentazione Libera, voglio prima di tutto precisare che le licenze Creative Commons non bastano. Esse permettono che un manuale venga distribuito in formato Word2000 o con qualsiasi altro formato chiuso. Ciò non fa altro che incoraggiare la diffusione dei formati chiusi, glorificando i programmi che se ne servono e danneggiando i programmi liberi. I formati utilizzati devono essere liberi, solo così si può garantire la libertà degli utenti di usufruire di un documento con il programma che preferisce e, perchè no, studiare come è stata realizzata una particolare formattazione.

Le Libertà della documentazione sono le stesse che riguardano il software: libertà di utilizzarla come si vuole, modificarla, distribuirla, distribuirla in forma modificata.

Perchè è così importante? Intanto per le solite questioni di principio. Sono le più importanti… ma ammetto che questo è un concetto difficile da accettare per chi vive in una società per pur di produrre 100 sedie in più da vendere in Europa è disposta a far abbattere un villaggio in Amazzonia. Una società in cui ogni singolo acquirente lo sa e compra ugualmente quelle sedie: o per menefreghismo, o perchè sa che le sedie della concorrenza sono state prodotte allo stesso modo. Quindi, un sistema basato sul cinismo, in cui ciò che non ha un’ovvia praticità immediata non è nulla.

Sul lato pratico, la documentazione deve essere migliorabile. Gli errori devono poter essere corretti, le funzionalità non documentate devono poter essere documentate, i bug devono poter essere descritti (insieme ai modi per aggirarli), deve essere possibile apportare le proprie esperienze, fare esempi, etc. In particolare, se queste possibilità vengono negate, si limita la possibilità di apportare modifiche al programma. Se io modifico MySQL e aggiungo un’istruzione SQL, devo anche poterla documentare. Purtroppo, non mi è consentito di farlo nella documentazione ufficiale. Questo rappresenta un problema.

Spesso i programmatori si curano poco della documentazione. Questo è un problema molto serio, a volte. E’ difficile utilizzare molti componenti Gambas, perchè non sono documentati, oppure la documentazione è vaga e priva di esempi. Di conseguenza, è come se alcune caratteristiche del linguaggio non esistessero: questo è un peccato.

Altre volte si curano molto della documentazione, ma non della sua Libertà, perchè conoscono poco il problema o perchè lo sottovalutano. Di conseguenza a volte rilasciano la documentazione assieme al loro programma ma senza licenza. In questo caso, è probabile che credano che essa ricada sotto la stessa licenza del programma, ma se questo non è specificato (e normalmente non lo è), ciò non accade. A volte invece, probabilmente, credono che una documentazione senza licenza sia di pubblico dominio. Non è così: non tutte le legislazioni riconoscono il pubblico dominio (secondo qualcuno quella italiana non lo riconosce), ma soprattutto non viene riconosciuto in questa circostanza. Se non vi è una nota che afferma qualcosa come “this document is public domain”, perfino negli stati che riconoscono il pubblico dominio il documento è da considerarsi proprietario e nessun diritto viene garantito all’utente. E’ come scrivere l’odiata frase “all rights reserved”, non cambia niente.

Altre volte la documentazione viene distribuita con licenza GPL o altre licenze software. Sarebbe meglio evitare di distribuire documentazione con licenze che sono state scritte per il software. Se si vuole tutelarla meglio, sarebbe meglio utilizzarne una che è stata pensata appositamente per i documenti scritti, oppure scriverne una ad hoc.

La licenza che ritengo migliore per la documentazione è la GNU Free Documentation License (GFDL), che attualmente è alla versione 1.3. Questa garantisce i diritti di cui parlavo sopra e vieta la distribuzione della documentazione in formati non liberi. Vi sono due Optional Features di cui vorrei discutere. Alcuni ritengono che queste, se utilizzate, rendano la documentazione meno libera. E’ un punto di vista che capisco, ma a mio parere tutelano invece un diritto dell’autore originale, senza invadere la libertà di chi usufruisce della documentazione.

Invariant Sections

Questa caratteristica è stata pensata per i contenuti non tecnici. Chi ha scritto un certo programma, potrebbe includere nella documentazione una prefazione che spiega perchè lo ha fatto, illustrando così le sue motivazioni etiche e politiche, il suo punto di vista sociale o filosofico. A mio parere è suo diritto pretendere che questa sezione rimanga intatta, senza che qualcuno la modifichi, magari stravolgendone il significato, nè essa deve essere eliminata. Chi non concorda con l’autore su questioni basilari, è libero di ignorare tale documentazione e di scriverne un’altra. Ma non di travisare il pensiero dell’autore. Naturalmente questo non impedisce a un eventuale secondo autore di aggiungere il proprio punto di vista in un’altra sezione scritta appositamente, per chiarire che non condivide alcune scelte.

Per essere certi di questo, è possibile dichiarare che la prefazione è una Invariant Section.

Cover Texts

E’ possibile dichiarare, nella nota legale, che ogni distribuzione della licenza, anche se modificata, dovrà includere un certo testo nella copertina (davanti o dietro). Questo testo, nelle intenzioni originali degli autori, potrebbe essere un invito a far pervenire una sottoscrizione economica agli autori originali di un certo testo. Questo invito non sarà certo vincolante, ma è lecito da parte di un autore chiedere un aiuto da parte di chi usufruirà del suo lavoro. Inoltre vi possono essere anche altri usi per questa caratteristica della licenza, ad esempio l’autore può chiedere che venga sempre inserito in copertina un piccolo “slogan” che rispecchia il proprio pensiero profondo e le motivazioni che lo hanno spinto a intraprendere il lavoro di documentazione.

Approfondimenti sulla GFDL

Ad ogni modo, le istruzioni per utilizzare la GFDL sono scritte in questa pagina, mentre i suggerimenti su come utilizzare le optional features sono scritte in questa pagina. E’ anche disponibile una traduzione italiana della licenza, naturalmente priva di valore legale.

La GFDL è utilizzata da Wikipedia e da altri servizi analoghi.

Estensioni e temi liberi per GNU IceCat e Firefox

Mercoledì, Marzo 4th, 2009

Sul sito di GNU IceCat è stata aggiunta una pagina contenente una lista non completa di estensioni e di temi liberi per IceCat e Firefox: le estensioni sono state catalogate da un altro membro italiano del gruppo di gNewSense e i temi sono stati catalogati da me. La pagina è la seguente:

http://www.gnu.org/software/gnuzilla/addons.html

Cosa si intende per estensioni e temi liberi?

Prima di tutto, molti temi ed estensioni non hanno una licenza. Qualcuno potrebbe pensare che un software senza licenza sia di pubblico dominio, ma non è così: se l’autore non cede espressamente tutti i diritti all’utente, essi gli vengono negati tanto dalla legislazione italiana quanto da quella USA. Su questo argomento è in preparazione un articolo. Inoltre vi sono alcune estensioni e temi che hanno licenze proprietarie. In gergo tecnico, questo tipo di estensioni si chiamano spazzatura. Infine fra i temi ve ne sono alcuni atti a rendere l’interfaccia di IceCat (o Firefox) simile a quella di programmi o sistemi operativi non liberi. Anche qualcosa tali temi fossero dotati di licenza libera, non è opportuno incentivare programmi proprietari.

L’estensione XXX non è nell’elenco; è proprietaria?

Ripeto e sottolineo che la lista non è completa. Se un’estensione o un tema che vi piace non è elencato in quella pagina, controllate se è fornito di una licenza. Essa si può trovare in un apposito file di testo (generalmente chiamato license), all’inizio del codice dell’estensione in ogni file (all’inizio dei file CSS per i temi), nella finestra atta a fornire informazioni agli utenti o nel sito ufficiale. Se è stata scritta dal programmatore, controllate attentamente quali diritti vi garantisce. Se è una licenza pubblica ben nota, leggetela o controllate se è considerata libera dalla Free Software Foundation.

La mia estensione preferita è proprietaria!

Se un’estensione che ti serve o ti piace non ha alcuna licenza, nè io nè il progetto IceCat possiamo consigliarne l’utilizzo. Tuttavia puoi sempre scrivere all’autore dell’estensione o del tema in questione per informarlo del problema. Specifica chiaramente che un software sprovvisto di licenza è automaticamente proprietario, a prescindere dal fatto che l’autore lo sappia o meno. Indicargli la pagina sopra linkata mi sembra un’ottima idea. Naturalmente, se questa persona risolverà il problema, potrà sempre scrivere all’email indicata nella pagina per chiedere che il suo software venga inserito nell’elenco. Qualora tu decidessi di inoltrare questa richiesta all’autore di un’estensione, ti saremo grati se scriverai una mail all’indirizzo indicato nella pagina.

Vedi anche

Per informazioni su GNU IceCat vedi: