
Storie di open-source, verrebbe da dire, e quella che raccontiamo è una storia che fa riflettere a proposito della riusabilità del codice, delle licenze e di tutta una serie di questioni che molte volte vengono date per scontate, ma non lo sono affatto.
La notizia, riportata da Linuxiac, è molto semplice: GitHub ha reso inaccessibile il repository Media Process Platform di Rockchip (MPP) in seguito ad una segnalazione da parte di uno sviluppatore FFmpeg, il quale ha indicato nel dettaglio tutti i file che sono stati copiati all’interno di MPP.
Il motivo per cui questa inclusione è illegittima è relativo alla licenza, poiché FFmpeg è distribuito in LGPL (Lesser General Public License) la quale, pur avendo un copyleft debole (cioè il codice può essere incluso come libreria anche in un software proprietario) nel caso di FFmpeg presenta dei vincoli, uno dei quali è il fatto che il codice riutilizzato deve rimanere sotto licenza LGPL (o compatibile), cosa che MPP non è, in quanto rilasciato sotto licenza Apache.
Da qui l’applicazione della DMCA Takedown Policy, dove l’acronimo sta per Digital Millennium Copyright Act, che ha comportato la chiusura del repository in questione.
Al netto della vicenda in sé, è molto interessante notare le sfaccettature che emergono intorno alle varie licenze open-source che, sembrerà ovvio dirlo, non sono tutte uguali.
Cercando di rimanere sintetici, anche se ovviamente è sempre un problema su questi temi così complessi:
- LGPL, come già scritto, è una licenza copyleft “debole”: se una libreria rilasciata in LGPL viene modificata, questa deve essere ridistribuita sotto LGPL.
- Apache 2.0 è una licenza permissiva con clausole aggiuntive (soprattutto su brevetti e NOTICE) che non possono essere imposte a codice coperto da LGPL senza violarla.
Il punto critico è che:
- la LGPL non consente di aggiungere restrizioni ulteriori.
- l’Apache 2.0 ne introduce (terminazione dei brevetti, obblighi di attribuzione specifici).
Tutto questo perché, nel caso di LGPL, la licenza segue il codice, non il repository.
Cosa abbiamo imparato quindi da questa storia: non si possono combinare codice Apache 2.0 dentro una libreria LGPL e ridistribuirla legalmente.
E penso che a questo punto lo abbiano imparato anche i maintainer del progetto MPP, i quali avranno un problema da risolvere a proposito della distribuzione del loro codice.
Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.




















Lascia un commento