Copyleft difficile ma non impossibile fare business

Febbraio 17, 2020

copyleft open source

Le licenze Open Source

Sappiamo cosa sono le licenze software (se non lo sapete, o ve lo siete dimenticato, ne ho parlato in questo post). Le licenze però non sono tutte uguali – neppure all’interno della categoria Open Source. La differenza più nota è tra licenze non-copyleft (o permissive) e licenze copyleft (o non permissive).

Facciamo un passo indietro: cosa sono le licenze Open Source? Solitamente si fa riferimento alla definizione fornita dall’Open Source Initiative (OSI), in particolare all’elenco delle caratteristiche obbligatorie per poter classificare una licenza come Open Source.

Ecco le principali:

1. Distribuzione. La licenza deve dare il diritto di ridistribuire il software, da solo o come parte di un lavoro più complesso;

2. Codice Sorgente. La licenza deve prevedere il diritto di ricevere il codice sorgente del software;

3. Diritto di modificare. La licenza deve prevedere il diritto di modificare il codice e di distribuirlo nella versione modificata;

4. Gratuità. La licenza non può prevedere il pagamento di un compenso.

I punti dell’elenco creato da OSI sono 10, ma diciamo che questi sono i più caratterizzanti.

Copyleft // Non-Copyleft

La differenza tra licenze copyleft e non copyleft ruota attorno ai punti 1 e 2: ovvero la modifica (o la creazione di lavori complessi) e la redistribuzione del software.

Nel caso di licenze non- copyleft, il codice potrà essere modificato e/o utilizzato come parte di progetti più ampi, e il risultato potrà essere distribuito sotto una licenza liberamente scelta dall’autore delle modifiche e/o del progetto (anche una licenza proprietaria).

Nel caso di licenze copyleft, invece, eventuali modifiche o lavori complessi dovranno essere redistribuiti utilizzando la medesima licenza. A volte si parla di effetto ‘virale’ delle licenze copyleft, in quanto ‘contagiano’ gli ulteriori elementi di software con cui vengono combinate.

Esempi classici delle prime sono le licenze MIT, BSD (in tutte le versioni) e Apache. Per quanto riguarda le licenze copyleft, possiamo pensare alle licenze della famiglia GPL (Gnu Public License).

Ma qual è il perimetro dell’effetto virale delle licenze copyleft? Nel caso di modifiche al codice originario, non c’è margine per dubbi e sarà necessario applicare la licenza originaria. Nel caso di lavori complessi, invece, diventa più difficile individuare i confini e viene in rilievo il concetto di ‘programmi derivati’. Sorpresa sorpresa: non esiste una definizione univoca, ma possiamo comunque trovare qualche linea guida. Per esempio, se il lavoro complesso contenente anche codice licenziato sotto una licenza copyleft viene poi compilato in un unico eseguibile, si ritiene con relativa certezza che si tratti di un lavoro derivato che deve quindi essere distribuito con la medesima licenza copyleft. Se, invece, gli eseguibili sono diversi ci sono molti più elementi da tenere in considerazione, e molte meno certezze.

L’effetto espansivo/virale è mitigato nelle licenze cd. ‘weak copyleft’. La più famosa è la LGPL (Lesser Gnu Public License), pensata per le librerie. In questo caso, le modifiche fatte alla libreria devono essere distribuite con la medesima licenza, mentre invece il software esterno che chiama la libreria non verrà considerato un lavoro derivato e potrà continuare ad essere distribuito con una licenza diversa.

E quindi?

Occorre fare attenzione alla licenza di librerie e altre componenti software che vengono utilizzate in un progetto, e alla possibilità che una licenza copyleft ‘contagi’ un intero progetto, escludendo non solo la possibilità di distribuirlo con licenza proprietaria, ma di distribuirlo con qualsiasi licenza diversa dalla licenza originaria. Naturalmente, per le realtà che basano il proprio modello di business sull’ottenere un pagamento per concedere licenze, questo sarebbe un problema molto serio.

D’altra parte, i modelli di business possono essere diversi. Il software di per sé potrebbe continuare a essere concesso con licenza Open Source (la licenza copyleft di cui si diceva), senza ottenere alcun pagamento. La remunerazione potrebbe essere collegata a servizi di installazione e/o supporto sul software, così come dalla fornitura di garanzia o altro tipo di utilità.

Un chiarimento. È sbagliato pensare che con una licenza permissiva (non copyleft) la libertà sul software sia assoluta. Anche questo tipo di licenze prevedono obblighi. Per esempio, la versione semplificata della licenza BSD (quella ridotta a due clausole) richiede che siano riportate in tutte le copie del software (i) il testo della licenza – ed in particolare l’esclusione di garanzia; e (ii) la copyright notice. Quindi, tutte le licenze – per quanto open – prevedono alcuni obblighi per chi ne fa uso…senza entrare qui nel merito della folcloristica ‘do the fuck you want public license’ che, più che un concreto modello di licenza, sembra voler essere un atto di ribellione verso la rigidità e il dilagare delle licenze copyleft.

Avv. Cosetta Masi - Studio Masi https://www.avvocatomasi.com/

© 2022 All rights reserved