In che modo l'utilizzo di una gemma LGPL influisce sulla mia applicazione con licenza MIT?


21

Sto sviluppando un'applicazione ruby ​​open source con licenza MIT. Sto usando questa licenza perché non voglio porre alcuna limitazione agli utenti dell'applicazione. Inoltre posso effettivamente leggere e comprendere questa licenza.

Di recente ho iniziato a utilizzare un'altra gemma di rubino nel mio progetto (richiede "somegem"). Questa gemma rubino è sotto licenza LGPL.

Devo cambiare qualcosa del mio progetto perché sto usando quest'altro gioiello rubino che è concesso in licenza con LGPL? Il mio progetto non contiene il codice sorgente per l'altra gemma e non viene spedito con il mio progetto. È semplicemente elencato come una dipendenza in modo che le gemme di rubino lo installino e il mio progetto lo chiamerà dal mio codice.

Inoltre, sarebbe utile sapere se ci sono licenze di cui ho bisogno di "fare attenzione" perché usarle influirebbe sulla licenza del mio progetto.

Ci sono altri post su questo argomento ma formulati in diversi modi. Dal momento che trovo questa roba di licenza difficile, spero di ottenere una risposta diretta alla mia situazione.

Grazie
Corsen


1
Sembra una domanda per gli avvocati, non per i programmatori. (Vale a dire: questa è una buona domanda, ben fatta, che alcuni programmatori potrebbero avere esperienza con ... ma questo non lo rende appropriato per Stack Overflow, poiché ha molto, molto poco a che fare con la programmazione.)
Phrogz,

7
Phrogz: stai esagerando. È una semplice domanda di licenza, a cui si risponde esplicitamente dal testo della licenza e da numerose FAQ. Non hai davvero bisogno di un avvocato per leggere.
vartec,

Risposte:


26

Non influenza

LGPL - sta per Lesser GPL (usato per indicare Library GPL). La differenza significativa con GPL è che non impone la licenza al software che utilizza la libreria. Solo se modificassi la libreria o includessi direttamente parti del codice nel tuo software, il tuo codice dovrebbe essere LGPL. D'altra parte, se stai usando solo gemma nella tua app, è perfettamente bene mantenere la tua app con qualsiasi licenza ti piaccia.

La parte menzionata di LGPL:

Un programma che non contiene derivate di nessuna porzione della Libreria, ma è progettato per funzionare con la Libreria essendo compilato o collegato con essa, è chiamato "lavoro che utilizza la Biblioteca". Tale lavoro, isolatamente, non è un lavoro derivato della Biblioteca e pertanto non rientra nell'ambito di applicazione della presente Licenza.


1
Ci sono alcuni requisiti in più per la libreria LGPL che devi soddisfare, specialmente se decodifichi l'importazione all'interno di un programma chiuso. Dire che non significa che devi mettere il tuo codice sotto LGPL, ma che ci sono dei requisiti da soddisfare. Non sono sicuro del meccanismo di collegamento rubygen, probabilmente è paragonabile all'importazione Java: LGPL e Java .
Hakre,

0

Devo cambiare qualcosa del mio progetto perché sto usando quest'altro gioiello rubino che è concesso in licenza con LGPL? Il mio progetto non contiene il codice sorgente per l'altra gemma e non viene spedito con il mio progetto. È semplicemente elencato come una dipendenza in modo che le gemme di rubino lo installino e il mio progetto lo chiamerà dal mio codice.

Il software LGPL è una dipendenza del tuo software. Quindi in realtà fa parte del tuo software. LGPL consente di essere utilizzato da software non libero (mentre MIT è persino software libero), quindi essere una dipendenza non è un blocco.

Tuttavia, poiché si tratta di una dipendenza, è necessario offrirne il codice sorgente se si distribuisce il software. Non ho idea se il meccanismo di richiesta all'interno di ruby ​​fornisca sempre anche fonti. In tal caso, direi che hai già distribuito con fonti. In caso contrario, devi fare attenzione che per ogni versione di quella gemma di cui hai bisogno con il tuo software offri fonti.

Probabilmente dovresti comunque occuparti delle fonti perché potrebbe essere che il progetto di terze parti (la gemma) andrà offline e il tuo progetto sarebbe interrotto in quanto richiede più una gemma inesistente.

Questa non è una consulenza legale, solo dal punto di vista dei programmatori. Considera che gli utenti del tuo software ti chiedono fonti mentre il tuo software utilizza la libreria e può essere effettivamente visto come una distribuzione perché hai scritto require "somegem"lì. La definizione legale di distribuzione potrebbe non corrispondere alle aspettative quotidiane di un programmatore di masterizzare file su un cd-rom. Quindi è saggio avere una concezione più ampia qui per rimanere proattivi nel caso in cui le cose non vadano come previsto.


1
"è necessario offrire il codice sorgente se si distribuisce il software." no, non è disponibile pubblicamente.
vartec,

1
@vartec: se distribuisci devi offrire la fonte. Solo nel caso in cui si tratti di un codice non commerciale e il codice non viene modificato, è possibile delegare tale requisito al progetto a monte (vedere GPL). Se la libreria non è distribuita da te (tuttavia, in questo caso ci sono istruzioni di configurazione codificate che l'utente non può modificare, e in realtà ci sono requisiti in LGPL che possono essere sostituiti in modo da compromettere la compatibilità con LGPL), penso che sia più sicuro fornire fonti in modo da soddisfare facilmente i requisiti di reverse engineering e di sostituzione.
Hakre,

@vartec: essere disponibili pubblicamente significa non distribuire. Se il distributore di gemme non è in grado di offrire fonti, la copia della gemma potrebbe non essere legittima.
Hakre,

LGPL, sezione 4.e "Fornire informazioni sull'installazione, ma solo se altrimenti si sarebbe tenuti a fornire tali informazioni ai sensi della sezione 6 della GNU GPL, e solo nella misura in cui tali informazioni siano necessarie per installare ed eseguire una versione modificata del Lavoro combinato prodotto ricombinando o ricollegando l'applicazione con una versione modificata della versione collegata. "
vartec,

1
@vartec: esattamente. 4.e continua: "(Se si utilizza l'opzione 4d0, le informazioni di installazione devono accompagnare l'origine corrispondente minima e il codice dell'applicazione corrispondente. Se si utilizza l'opzione 4d1, è necessario fornire le informazioni di installazione nel modo specificato dalla sezione 6 della GNU GPL per il trasporto della fonte corrispondente.) "
hakre
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.