Posso usare il software GPL in un'applicazione commerciale


204

Ho 3 domande sulla GPL qui:

  1. Se utilizzo il software GPL nella mia applicazione, ma non lo modifico o non lo distribuisco, devo rilasciare la mia applicazione sotto GPL?

  2. Cosa succede se modifico alcuni software utilizzati dalla mia applicazione. Quindi devo rilasciare la mia applicazione sotto licenza GPL, oppure posso semplicemente fornire il software modificato secondo i termini GPL.

  3. E se utilizzo il software GPL, ma non lo modifico, posso distribuirlo con la mia applicazione?

Il mio caso in questione è che ho un framework PHP che uso la libreria GeSHi per evidenziare alcuni output.

  1. Poiché GeSHi è GPL, il mio framework deve essere GPL?

  2. Posso modificare GeSHi per casi d'uso particolari della mia applicazione se rispedisco le modifiche ai manutentori di GeSHi?

  3. Posso ridistribuire il mio framework con GeSHi?


10
Commerciale! = Proprietaria
Gerstmann,

2
Solo curioso, cosa significa distribuire in questo caso? Se il programma in questione fosse, diciamo, il firmware in un dispositivo in cui non può essere toccato da nessuno tranne la società che vende il dispositivo, quella è "distribuzione"?
Wes Miller,

2
Sì, la distribuzione è. Ecco perché trovi cose come i router ADSL in cui il codice sorgente è (deve essere) disponibile per il download. Fornitori affidabili rendono la fonte disponibile perché le condizioni di licenza lo richiedono. Lo stesso vale per le scatole NAS, le telecamere IP e numerosi altri gadget.
quick_now

2
@quickly_now - ecco perché le cose Tivoisation sono state aggiunte in GPLv3, quindi se usi il codice GPLv2 in un'appliance, non devi davvero rilasciarlo, ma se usi il codice GPLv3, lo fai. Ricorda che Tivo ha usato il codice GPL e non ha mai rilasciato le loro modifiche, il che ha sconvolto un sacco di persone e in parte ha portato a GPLv3.
Scott Whitlock,

Risposte:


177

Se utilizzo il software GPL nella mia applicazione, ma non lo modifico o non lo distribuisco, devo rilasciare la mia applicazione sotto GPL?

RISPOSTA: la tua domanda è un po 'ambigua. Due casi:

(a) Se non distribuisci LA TUA DOMANDA, la risposta è No, perché non hai distribuito la tua domanda. Ad esempio, se fosse solo per uso interno nella tua azienda, non hai l'obbligo di fare nulla.

(b) Se distribuisci LA TUA DOMANDA e hai usato qualcosa GPL come parte della tua applicazione (anche se solo il collegamento in fase di esecuzione a una libreria) - e anche se non addebiti denaro - e anche se non cambi che GPL s / w in qualsiasi modo - quindi DEVI rendere disponibile la fonte della TUA DOMANDA.

Rendere disponibile la fonte non significa download. Potrebbe essere che devi ottenere una richiesta scritta e inviare una fotocopia di un annuncio (vedi commenti: non puoi effettivamente inviare un annuncio. Questa è stata un'esagerazione per fare un punto) . È consentito addebitare un costo di gestione / copia "ragionevole". Ma non puoi sfuggire all'obbligo di rendere disponibile il tuo codice sorgente.

Cosa succede se modifico alcuni software utilizzati dalla mia applicazione. Quindi devo rilasciare la mia applicazione sotto licenza GPL, oppure posso semplicemente fornire il software modificato secondo i termini GPL.

RISPOSTA: vedi sopra. Se hai usato GPL s / w, devi rendere disponibile il tuo codice sorgente. Ciò include il codice GPL modificato.

E se utilizzo il software GPL, ma non lo modifico, posso distribuirlo con la mia applicazione?

RISPOSTA: vedi sopra. Puoi distribuirlo (il codice GPL), a condizione che tu renda disponibile la tua fonte.

Poiché GeSHi è GPL, il mio framework deve essere GPL?

RISPOSTA: se distribuisci il tuo framework, allora SÌ.

Posso modificare GeSHi per casi d'uso particolari della mia applicazione se rispedisco le modifiche ai manutentori di GeSHi?

RISPOSTA: Puoi se vuoi. Non devi Potresti modificarlo, ma quando distribuisci la tua applicazione sei obbligato a rendere disponibile la tua fonte e anche la fonte per le modifiche che hai apportato alla biblioteca.

Posso ridistribuire il mio framework con GeSHi?

RISPOSTA: Puoi se vuoi. Se la tua applicazione non è distribuita con il codice GPL e fai in modo che gli utenti lo scarichino separatamente per utilizzarlo, il tuo caso è un po 'più speciale e potrebbe provocare qualche argomento, ma lo stesso principio molto probabilmente si applicherà alla fine: è necessario rendi disponibile la tua fonte.

Se si desidera evitare questi problemi, è necessario utilizzare le cose con una licenza diversa o almeno la LGPL, che consentirà la chiamata runtime delle librerie senza la diffusione virale delle condizioni GPL sul codice.

In caso di dubbi, è necessario un parere legale. Qualsiasi consiglio che ricevi qui (da me o da chiunque altro) deve essere trattato con cura. Solo un avvocato può darti una consulenza legale adeguata.


67
Ho
adorato

31
Solo una nota: probabilmente violerebbe la licenza di fornire il codice sorgente come fotocopia. Come indicato nella licenza: "Il codice sorgente di un'opera indica la forma preferita dell'opera per modificarla".
mipadi,

26
@Petah: La GPL è come un virus: infetta tutto ciò che tocca. Se si fornisce un'interfaccia generica e si consente a un utente di installare vari componenti di propria scelta, si può cavarsela senza essere contaminati dalla GPL. TUTTAVIA, supponendo che tu abbia dato via la tua roba e qualcun altro avrebbe raggruppato i 2 insieme ... allora sembrerebbe che la tua GPL toccherebbe la tua roba. Hai una situazione molto difficile, non importa come provi e ti muovi attorno.
quick_now

10
Se la domanda è stata posta più volte, perché non si tratta di un duplicato?

11
Si noti che addebitare una commissione di gestione "ragionevole" non è un forte deterrente per le persone interessate al codice sorgente; il primo destinatario del tuo codice sorgente può scegliere di fornire legalmente ad altri il tuo codice sorgente.
Brian,

12

Questo sembra fortemente in disaccordo se lo si utilizza su un sito Web, piuttosto che ridistribuire un eseguibile.

È possibile copiare, distribuire e modificare il software purché si tengano traccia delle modifiche / date nei file di origine e si mantengano le modifiche in GPL. Puoi distribuire la tua applicazione utilizzando una libreria GPL commercialmente, ma devi anche fornire il codice sorgente. GPL v3 tenta di chiudere alcune lacune in GPL v2.

In particolare

Se si distribuisce questa libreria in un eseguibile, è necessario divulgare il codice sorgente fornendolo a fianco della distribuzione o elencando un modo accessibile (URL, copia fisica) per ottenere la fonte per 3 anni. Non si applica se si opera attraverso un portale web.

https://tldrlegal.com/license/gnu-general-public-license-v3-%28gpl-3%29


2
Potresti approfondire questo? Attualmente è una frase di una frase e il testo di tldrlegal. In che modo l'utilizzo di GPL su un sito Web differisce dall'utilizzo in un'applicazione autonoma?

Un sito web di solito non distribuisce software (ma fornisce solo un servizio)
Basile Starynkevitch

3
A parte: esiste la licenza AGPL che tenta di indirizzare GPL in esecuzione come servizio: tldrlegal.com/license/…
kbrock,

Se la libreria GPL in questione è scritta in HTML, javascript e CSS e il codice della libreria viene "distribuito" dal server al browser Web delle persone che visitano il sito Web, mi chiedo se ciò potrebbe causare l'altro HTML, javascript, e codice CSS per diventare GPL. Un punto interessante è che questo codice sarebbe già "disponibile" solo visualizzando la fonte della pagina web, anche se probabilmente non nella sua forma preferita. Tuttavia, anche in questo caso, il codice lato server non viene distribuito e quindi immagino che non debba essere GPL.
still_dreaming_1,

2

Disclaimer : non sono un avvocato e non leggo nessuna delle versioni della GPL da un po 'di tempo, quindi questa risposta potrebbe essere legalmente inaccurata.

Se rilasci / distribuisci software contenente componenti GPL (come librerie collegate staticamente), il tuo software deve essere coperto da GPL. (Questa è l'impressione data per la versione 2; la versione 3 potrebbe essere diversa.)

Se rilasci / distribuisci software utilizzando le librerie LGPL, il tuo software non deve essere coperto dalla GPL, ma le librerie devono conservare la LGPL.

La modifica dei componenti [L] GPL'd suggerisce un contributo al creatore / manutentore. Non sono chiaro su come ciò influisca sulla licenza del tuo prodotto.


-4

Possiamo forzare tali regole nella giungla, ma nella vita reale (giuridica del paese o dello stato) dipende da chi, chi, quando e cosa.

Il problema legale (legge) si pone quando si fa un atto di distribuzione del programma GPL come binario o libreria su un sistema operativo non GPL. Il programma GPL sta infettando e infettando il processo genitore e figlio non GPL (licenza proprietaria e anche di altra natura open source) dal punto di vista della legge. Infettare significa che il programma derivato viola GPL, infetto significa che il programma GPL viola la propria licenza. Nessun problema esiste quando si compila una fonte GPL distribuita come atto individuale (persona, organizzazione, azienda).


11
questo sembra semplicemente ripetere i punti sollevati e spiegati nella risposta precedente pubblicata 4 anni fa
moscerino
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.