Utilizzo del codice GPL con il codice MPL [duplicato]

4

Ho fatto un po 'di googling, e tutto quello che posso trovare sono informazioni sull'uso del codice sotto MPL in un progetto GPL con licenza più grande. Quello che voglio veramente sapere è: posso includere codice licenza (/ binari) GPL (v3) in un progetto con licenza MPL (2.0) più grande?

La mia comprensione fino ad ora è che non posso, e che qualsiasi progetto che usi il software GPL deve essere rilasciato anche sotto licenza GPL. È corretto?

Se è corretto, posso scrivere software e rilasciarlo sotto MPL, anche se dipende da una libreria GPL, purché non distribuisca le parti con licenza GPL con le mie parti con licenza MPL?

E, se poi voglio distribuire entrambe le parti come un "lavoro più grande", in che modo la GPL globale avrà effetto sul mio codice MPL?

    
posta Angus Ireland 01.08.2013 - 01:52
fonte

1 risposta

4

Disclaimer, questo è simile alla mia altra risposta su MIT & GPL , ma ci sono alcune sfumature coinvolte con MPL.

can I included GPL(v3) licensed code(/binaries) in a larger MPL(2.0) licensed project?

Risposta breve: No, non puoi *. Saranno soggetti al copyleft.

* Vedi la risposta più lunga in quanto questa è una delle più difficili

Risposta lunga:

Riferimento 1 ) L' articolo di Wikipedia sulla compatibilità delle licenze ha una buona sezione su Compatibilità GPL :

Many of the most common free software licenses, such as the original MIT/X license, ... are "GPL-compatible". That is, their code can be combined with a program under the GPL without conflict (the new combination would have the GPL applied to the whole).

[grassetto aggiunto]

Riferimento 2 ) E più esplicitamente dalle Domande frequenti sulla FSF sulla compatibilità GPL :

It means that the other license and the GNU GPL are compatible; you can combine code released under the other license with code released under the GNU GPL in one larger program.

E solo per l'edificazione, ecco i commenti di FSF su varie licenze

FSF ha un numero di commenti sulla licenza MPL .

La versione abbreviata è che il tuo lavoro combinato deve essere rilasciato come GPL.

Dove diventa difficile

Supponiamo di avere una licenza di Foo di progetto sotto MPL e una licenza di Bar di progetto sotto GPL e che voglia utilizzare Foo .

Bar+Foo è consentito poiché le licenze sono compatibili e il rilascio di Bar+Foo deve essere GPL come Bar è GPL. Foo , di per sé e senza Bar o Bar+Foo , è ancora disponibile sotto la licenza MPL. Detto in altro modo, Bar+Foo non ha alcun impatto sulla licenza su Foo stesso.

La licenza risultante della combinazione del progetto è un evento che agisce in avanti solo per la combinazione. È non un evento retroattivo. MPL fa un ulteriore passo avanti con la sezione 3.3 e richiede esplicitamente il proprietario di Bar+Foo per fornire la distribuzione di Foo in formato MPL.

Quindi, se qualcun altro vuole prendere Foo e fare qualcos'altro con esso, è comunque libero di farlo senza la clausola del copyleft della GPL. Tuttavia, se prendono Bar+Foo , eliminano Bar e usano solo +Foo , quindi sono ancora vincolati dai termini della GPL poiché Bar+Foo era GPL'd.

A mio parere, si tratta di una soluzione tanto vicina quanto una licenza che può annullare l'effetto virale di GPL. I proprietari di Foo si assicurano che continui a vivere e siano pubblicizzati come MPL, pur continuando a permetterti di fare ciò che vuoi con la tua applicazione GPL.

Hai anche chiesto:

If this is correct, can I write software and release it under the MPL, even if it depends on a GPL library, as long as I don't distribute the GPL licensed parts with my MPL licensed parts?

No, questo non è corretto. Sarà GPL poiché dipende da una libreria GPL.

And, if I then want to distribute both parts as a "larger work", how would the overarching GPL affect my MPL code?

Distribuirai il lavoro più ampio come GPL.
Dovrai anche fornire la MPL più piccola come MPL.

    
risposta data 01.08.2013 - 13:34
fonte

Leggi altre domande sui tag