Rilascio di un progetto in GPL v2 o successive senza il codice sorgente delle librerie

4

Ho scritto un sistema in Java che voglio rilasciare sotto i termini di GPL v2 o successivi. Ho usato Apache Maven per gestire tutte le dipendenze del sistema, quindi non ho il codice sorgente di nessuna delle librerie usate. Ho già controllato, tutte le librerie sono state rilasciate sotto licenze GPL-compatibili (Apache v2, 3-clausole BSD, MIT, LGPL v2 e v2.1).

Posso distribuire il mio lavoro sotto GPLv2 o versioni successive e fornire le librerie sullo stesso pacchetto di opere separate , senza dover applicare GPL su di esse (come indicato da GPLv2 sec 2 ), anche se sono necessari per compilare ed eseguire il sistema? Se è così, so che sono vincolato solo dalle licenze originali di ciascuno e che so cosa fare.

    
posta Luciano Silveira 31.10.2013 - 20:26
fonte

4 risposte

5

Per la maggior parte, GPL v2 e LPGL v2 e v2.1 richiedono che, se si distribuisce il codice GPL o LGPL, si rende disponibile anche il codice sorgente. Con alcune eccezioni, indicare un repository upstream non è sufficiente. Vedere la sezione 3 della GPL v2 e la sezione 6 del LGPL v2.1 . (La versione 3 di GPL e LGPL facilita questa restrizione e consente di indirizzare gli utenti verso server di terze parti; vedere la sezione 6 della GPL v3 .)

Quindi # 1 e # 3 sono a posto; # 2, non tanto.

Aggiornamento: alcune note aggiuntive:

  • In pratica, se si limitano a indirizzare le persone verso server di terze parti, alla maggior parte della gente non interessa. Tuttavia, si sono verificati reclami; diversi anni fa, la FSF contattò diverse distribuzioni Linux per non aver reso disponibile la fonte. Slashdot e Linux.com ha coperto questo argomento.
  • Se le librerie sono distribuite sotto "LGPL v2 / v2.1 o successivo", allora credo che distribuire i binari della libreria ma non la fonte sarebbe ok, a patto che punti le persone alla fonte, poiché LGPL v3 permette che .
  • Nella mia esperienza personale, ho trovato più semplice creare la fonte per tutto ciò che è disponibile, piuttosto che cercare di tracciare i dettagli di quando faccio e non devo distribuire le cose.

In risposta alla tua modifica : le sezioni 5 e 6 della LGPL riguardano specificamente la creazione di "un'opera che utilizza la Libreria". Sulla base della mia comprensione, è bene distribuire il tuo lavoro come GPLv2 o successivo senza applicare la GPL alle librerie. (Il codice sorgente in sé non è un derivato delle librerie, quindi la LGPL non si applica direttamente al codice sorgente, e la sezione 6 consente al binario risultante di utilizzare le librerie LGPL purché i termini della licenza siano compatibili.)

Si applicano le dichiarazioni di non responsabilità standard, non sono un avvocato, ecc.

    
risposta data 31.10.2013 - 22:08
fonte
2

In generale, se l'applicazione dipende dal funzionamento di tali librerie, è necessario concedere in licenza l'intera applicazione come GPL. Poiché le librerie sono già distribuite sotto GPL, il codice sorgente per quelle librerie dovrebbe già essere disponibile pubblicamente, quindi in teoria non è necessario ridistribuire il codice sorgente per queste librerie. La GPL si preoccupa principalmente di rendere pubblico il tuo codice (incluse le eventuali modifiche apportate alle librerie), non il codice che è già pubblico in ogni caso.

Tuttavia, ci sono alcuni avvertimenti; la più importante è che la versione della libreria con cui funziona l'applicazione potrebbe non essere la stessa nella distribuzione generale, sia perché l'hai modificata, sia che è stata modificata dagli sviluppatori originali da quando l'hai incorporata nella tua applicazione . Di conseguenza, è più conveniente per gli sviluppatori avere l'intero corpo del codice effettivo che è in uso disponibile nel progetto che distribuisci, piuttosto che andare in diversi posti disparati nel tentativo di ricreare il intero progetto, che potrebbe non essere nemmeno compilato ora.

    
risposta data 31.10.2013 - 20:57
fonte
1

Dichiarazione di non responsabilità standard: P.SE non è il luogo più appropriato per chiedere consulenza legale / di licenza

1) Sì; 2) Sì; 3) Sì

Non ti è richiesto di distribuire alcun codice di libreria purché tu lo faccia in modo molto chiaro quali librerie e versioni stai utilizzando E non hai apportato alcuna modifica E (come ha sottolineato Ross) fornisci informazioni esplicite su dove ottenere fonte per quelle librerie. Se qualcuno desidera vedere il codice sorgente di quelle librerie, può sempre andare sui rispettivi siti Web e scaricarli da lì. Quello che non sapevo e che ho appreso dagli altri in questa pagina (+1 a quelle risposte) è che sei anche responsabile di assicurarti che il codice sorgente sia accessibile in base alle informazioni fornite. E se il sito web di librerie di terze parti non funziona, diventa TUA RESPONSABILITÀ trovare da soli un'altra fonte o ospitare la fonte.

Tuttavia, se dovessi modificare anche una singola riga di codice in una libreria (sotto GPL e LGPL) devi distribuire il codice della libreria che hai modificato. La motivazione qui è che se si beneficia dell'uso di codice di terze parti, la comunità dovrebbe in cambio trarre vantaggio se trovi e correggi bug in quel codice di terze parti.

In GPL ti è richiesto di rendere disponibile il tuo codice sorgente, che sembra che tu stia già pianificando di fare già, quindi sei a posto. Non è necessario comprimere la fonte con i file binari, ma la distribuzione dei binari dovrebbe fare riferimento a una posizione da cui è possibile scaricare il codice sorgente.

    
risposta data 31.10.2013 - 20:55
fonte
1

Anche se sono d'accordo con le altre due risposte, tieni a mente che sei ancora al lavoro per fornire fonti a tutte le dipendenze che usi.

Se dici "prendi libBlah2.0" da libBlah.org, e le fonti sono facili da afferrare da lì, nessuno ti darà del filo da torcere. Ma se libBlah.org si chiude e non ospita più i sorgenti, tu sei comunque responsabile di intensificare e rendere disponibili le fonti. Non intensificare in quella circostanza è una violazione dei termini della GPL.

Modifica: Inoltre, non preoccuparsi di distribuire i file binari delle librerie non ti mette in difficoltà. Il tuo progetto è un lavoro derivato di quelle librerie, e quindi sei responsabile di fornire una fonte alle librerie se le distribuisci come binari o no, perché la GPL / copyright richiede così.

    
risposta data 31.10.2013 - 21:53
fonte

Leggi altre domande sui tag