Licenza MIT in una libreria di riferimento: implicazioni legali?

7

Sto cercando di determinare quali sono i miei obblighi legali se utilizzo una libreria con licenza MIT (file JAR) nel mio programma. Devo includere il codice sorgente della libreria quando distribuisco il mio programma? Devo includere un README che spieghi le licenze del JAR pacchettizzato? Se sto semplicemente includendo il file JAR non modificato, devo anche aggiungere qualcosa di aggiuntivo?

    
posta Dylan Knowles 24.06.2012 - 21:06
fonte

3 risposte

3

Se includi la libreria non modificata, non hai assolutamente obblighi.

La licenza ti chiede di includere il testo in tutte le copie o parti sostanziali del Software. Che devi comunque fare con qualsiasi licenza, perché sei obbligato a dire al destinatario i termini in base ai quali gli dai il software.

Tuttavia, poiché la licenza consente anche di sublicenziare, puoi spedire il pacchetto completo sotto qualsiasi licenza tu voglia (e devi metterlo nella documentazione da qualche parte), ma se non fai menzione la biblioteca è sotto licenza MIT, sarà coperto dalla licenza per l'intero pacchetto e ciò non viola i termini della licenza del MIT.

La pratica comune è di non preoccuparsi di menzionare la licenza del MIT in distribuzioni solo binarie, perché l'utente non può fare molto con la libreria comunque e semplicemente mantenere l'avviso di licenza (e soprattutto le note sul copyright) nelle fonti a cui si applica se li hai mai distribuiti.

    
risposta data 25.06.2012 - 07:59
fonte
2

Quando la licenza ti chiede di includere la licenza stessa nel tuo software, questo non significa "metti un avviso gigante nella GUI del tuo programma con questo testo in esso", questo significa semplicemente mettere questa licenza nei tuoi file sorgente, o, almeno, nei file di origine più grandi e più importanti.

per esempio all'inizio del programma o la porzione / le librerie con licenza MIT è:

#include stuff

void foo();

int main(){
...
...
...
}

per rispettare la licenza devi includere la licenza stessa

/************************
* Here is the full text
* interesting stuff
* bla bla bla
************************/
#include stuff

void foo();

int main(){
...
...
...
}

se non vuoi generare troppa entropia nel tuo codice puoi posizionare la licenza nella parte inferiore del tuo file, l'importante è solo includere la licenza, ovviamente il testo della licenza dovrebbe essere commentato poiché non lo sono istruzioni per il tuo compilatore; solo per motivi di chiarezza alcune persone mettono la licenza in basso e solo un promemoria in cima, una frase breve come "Troverete i Termini d'uso in fondo a questo file".

Fatto.

    
risposta data 24.06.2012 - 22:04
fonte
2

In molti casi il file JAR stesso conterrà una copia della licenza, è possibile verificarlo aprendolo in un'utilità di file ZIP. In tal caso, non devi fare nulla.

Tuttavia, penso che sia una buona pratica documentare tutte le librerie usate e le loro licenze (per nome) da qualche parte nella documentazione del progetto.

    
risposta data 25.06.2012 - 10:49
fonte

Leggi altre domande sui tag