Come incorporare il software open source esistente dal punto di vista delle licenze?

0

Sto lavorando su un software che utilizza le seguenti librerie:

  • Biopython
  • SciPy
  • NumPy

Tutti i precedenti hanno licenze simili a MIT o BSD .

Tre scenari:

  1. Innanzitutto, se non ridistribuisco tali dipendenze e solo il mio codice, tutto ciò di cui ho bisogno è il mio copyright e la mia licenza (piallatura sull'uso di MIT License ) per il mio codice. Corretta?

  2. Che cosa succede se uso py2exe o py2app per creare un eseguibile binario da distribuire in modo da rendere più semplice l'esecuzione dell'applicazione senza dover installare python e tutte le dipendenze. Ovviamente questo significa anche che i miei file binari contengono Python stesso (insieme ad altri pacchetti che potrei aver eseguito un pip install xyz ).

  3. Cosa succede se impacchetta i binari Biopython, SciPy e NumPy nel mio pacchetto?

Negli ultimi due casi, cosa devo fare per rispettare le leggi sul copyright.

    
posta Matt 02.08.2013 - 05:18
fonte

2 risposte

3

Devi leggere le licenze e seguire i loro termini particolari. Per alcuni, è facile come includere semplicemente una nota sul copyright e non dire "scritto con l'aiuto della gente di bioPython!"

Se non ti senti a tuo agio nel comprendere e seguire una licenza di due paragrafi, HAI BISOGNO DI UN AVVOCATO . Nessun altro è autorizzato a dirti che stai eseguendo una sequenza di passaggi specifici o non è legale. Ci sono semplicemente troppe complessità per fidarsi di qualcuno senza assicurazione sulla malasanità e una reputazione dietro ciò che dicono.

(Ovviamente potresti ottenere un permesso specifico dal detentore del copyright, il che è più difficile di quanto penseresti per un progetto open source. C'è una ragione per cui l'FSF chiede ai contributori di assegnargli effettivamente il copyright.)

Detto questo, in generale , se fai una copia del codice di qualcun altro, in tutto o in parte o semplicemente usandolo come guida per scrivere il tuo, non puoi fare nulla con quel codice senza il permesso di qualcun altro. Ecco a cosa servono le licenze; sono permessi scritti con alcune condizioni definite.

Se includi il codice sorgente o i binari di qualcun altro, non puoi dare o vendere la tua applicazione a nessuno, neanche una volta, senza tale autorizzazione. E a seconda di quanto hai usato in profondità le loro librerie, potresti anche non essere in grado di inviare il codice che hai scritto senza il loro permesso.

(C'è una linea confusa tra "Ho copiato il loro codice sorgente" e "Ho fatto solo ciò che era necessario per essere compatibile." Ci sono cause legali per tutto questo tempo @ # $ @ing Ma quelli riguardano avvocati e grandi budget e scudi di responsabilità aziendale.)

Fortunatamente, Python stesso e bioPython e persino Microsoft e FSF hanno librerie disponibili che hanno termini di ridistribuzione assurdamente ragionevoli. Anche se il tuo codice è legalmente un lavoro derivato, puoi quasi certamente concedere in licenza solo il tuo codice tramite MIT e associarlo con un programma di installazione che ha il permesso di includere le tue librerie o solo punti dove l'utente può prendili dalla fonte.

    
risposta data 02.08.2013 - 08:06
fonte
1

Il solito IANAL a parte (non sono un avvocato, questo non è un consiglio legale, procurati un vero avvocato se vuoi qualcosa di conclusivo):

Sia il MIT che il BSD (qualsiasi sapore) sono licenze molto permissive e puoi associarli alla tua domanda con qualsiasi licenza che ti piace, purché includa l'avviso di copyright originale. BSD-3 aggiunge la clausola "nessun avallo", il che significa che non puoi usare il nome dei titolari del copyright per promuovere il tuo prodotto.

Quindi, se si rispettano i termini di queste licenze (includere le note sul copyright originali per attribuire il codice ai suoi autori), tutti e tre gli scenari sono probabilmente OK. Per l'eseguibile distribuito, devi controllare la licenza di qualsiasi implementazione Python che usi, così come quelle di qualsiasi libreria tu o Python stesso siano collegate, ma la mia ipotesi è che dovresti stare bene.

Ancora una volta, se vuoi essere sicuro al 100%, chiedi a un avvocato.

    
risposta data 02.08.2013 - 15:06
fonte

Leggi altre domande sui tag