Come sono limitate le mie opzioni di licenza quando utilizzo e / o includo altri progetti nel mio?

4

Configurazione

Ho un progetto ( pynliner , un modulo python) su github che non ho mai pensato molto alle licenze. Oggi ho ricevuto un'email chiedendo quale licenza è in uso perché qualcuno vuole utilizzarla nel loro software commerciale.

Il mio primo pensiero è che mi piacerebbe avere 2 licenze una gratuita per uso non commerciale e una per uso commerciale. Così ho iniziato a cercare licenze software ... e ho avuto le vertigini. Poi ho capito che forse non sono in grado di usarne la maggior parte perché il mio modulo utilizza diversi altri moduli. Quindi ho alcune domande su come filtrare le licenze.

Il mio modulo usa ma non include il codice sotto:

E il mio modulo utilizza e include il codice sotto:

Questo è un progetto relativamente minore, ma mi piacerebbe usarlo come un processo di apprendimento per il modo giusto di affrontare le licenze.

Domande

  • Se includo il codice di qualcun altro, tutte le licenze che uso non devono interrompere la licenza del codice incluso?
  • La stessa cosa vale per altri software che uso ma che non includo? Sono limitato dalla licenza MIT su BeautifulSoup o LGPL3 su cssutils se li uso ma non includo la fonte nel mio progetto?

modifica

Grazie per aver segnalato le licenze che avevo perso su cssutils e soupselect.py. Una volta che queste sono state evidenziate, il resto delle mie domande si riduce a ciò che è permesso dalla Licenza MIT poiché è l'unico sul codice che ho incluso e se l'output di cssutils è gratuito o meno.

Mi sento a mio agio nel vederli per il resto. Grazie a tutti.

    
posta rennat 12.09.2011 - 23:41
fonte

2 risposte

5

If I include someone else's code then any licenses I use must not break the included code's license correct?

Corretto: ti è consentito solo usarlo o distribuirlo secondo i termini della loro licenza. Se lo riutilizzi, lo stai effettivamente utilizzando sotto la loro licenza - non lo riletti in licenza - quindi tutto ciò che fai deve essere consentito sotto la loro licenza.

Does the same hold true for other software I use but don't include? Am I limited by the copyright on cssutils if I use it but don't include the source in my project?

Puoi usare strumenti, informazioni ecc. senza includerli nel tuo progetto. Il test è che il tuo progetto diventa un "lavoro derivato" - di solito significa che hai incluso IP significativo da quello strumento nel progetto che hai distribuito. Se stai distribuendo il codice sorgente questo è improbabile (a meno che lo strumento GPL non sia un generatore di codice) - se stai distribuendo un file binario potrebbe avere parti della libreria dello strumento incluso in esso.

If using code under the MIT License doesn't prevent me from having commercial and non-commercial licenses, what permissions would I need to get from the authors of the the copyrighted cssutils?

cssutils è concesso in licenza sotto LGPL. Ciò significa che puoi includerlo nel tuo progetto closed source se lo includi come libreria dinamica o modulo caricato in fase di esecuzione in modo che l'utente possa scambiarlo per la propria versione.

modifica: non è completamente familiare con cssutils ma sembra anche essere un generatore di codice css. Se lo stai usando nella tua app quando viene eseguito dall'utente, allora sì - è distribuito come un modulo python caricato in runtime, che va bene sotto LGPL. Tutto quello che devi fare è rendere la fonte originale disponibile ai tuoi utenti.

Se lo stai usando per generare file css che saranno poi inclusi separatamente nel tuo progetto è un po 'più complicato. I file CSS possono contenere parti dell'IP cssutils. Probabilmente dovresti verificare con gli autori di csutils, o cercare una faq sul loro sito. La stessa domanda arriva con la versione GPL di YACC che include un'esenzione specifica per usarlo liberamente.

Nota protetta da copyright non è la stessa di una licenza. Tutto ciò che crei è protetto da copyright per te (o forse il tuo datore di lavoro), devi solo prendere in considerazione la licenza quando vuoi darla ad altre persone e vuoi attribuire le condizioni a ciò che possono fare con essa.

    
risposta data 13.09.2011 - 00:10
fonte
1

MIT è una licenza permissiva: ci sono poche o nessuna restrizione sul codice sotto di essa. Come altri hanno già detto, GPL e LGPL possono essere più difficili da capire. A volte è più facile chiedere agli autori se pensano che il tuo utilizzo sia OK.

Questa è una parte, ma io tendo ad usare MIT o BSD per il mio codice OSS perché voglio che il maggior numero possibile di persone lo usino.

    
risposta data 13.09.2011 - 00:28
fonte

Leggi altre domande sui tag