Come includere una libreria apache con il mio codice opensource?


9

Ho questo codice open source con licenza MIT che utilizza una libreria con licenza Apache 2.0.

Voglio includerlo nel mio progetto, in modo che possa essere costruito immediatamente.

Nel punto 4 di tale licenza viene spiegato come ridistribuirlo:

estratto:

4 Ridistribuzione . È possibile riprodurre e distribuire copie dell'opera o delle sue opere derivate in qualsiasi supporto, con o senza modifiche, e in forma di fonte o oggetto, purché soddisfino le seguenti condizioni:

È necessario fornire a qualsiasi altro destinatario dell'Opera o delle opere derivate una copia di questa Licenza; e

È necessario che tutti i file modificati riportino avvisi importanti che affermano che i file sono stati modificati; e

È necessario conservare, nella forma Sorgente di qualsiasi Opera derivata che si distribuisce, tutti gli avvisi di copyright, brevetto, marchio e attribuzione dalla forma Sorgente dell'Opera, escluse quelle comunicazioni che non riguardano alcuna parte delle Opere derivate; e

Se l'Opera include un file di testo "AVVISO" come parte della sua distribuzione, tutte le Opere derivate da Lei distribuite devono includere una copia leggibile degli avvisi di attribuzione contenuti all'interno di tale file di AVVISO, esclusi gli avvisi che non riguardano alcuna parte del Opere derivate, in almeno uno dei seguenti luoghi: all'interno di un file di testo di AVVISO distribuito come parte delle Opere derivate; nel modulo o nella documentazione di origine, se forniti insieme alle opere derivate; o, all'interno di un display generato dalle Opere derivate, se e ovunque compaiono normalmente tali avvisi di terze parti. I contenuti del file NOTICE sono solo a scopo informativo e non modificano la Licenza. È possibile aggiungere le proprie notifiche di attribuzione all'interno di Opere derivate che si distribuiscono, a fianco o come aggiunta al testo AVVISO dall'Opera, a condizione che tali avvisi di attribuzione aggiuntivi non possano essere interpretati come modifica della Licenza. È possibile aggiungere la propria dichiarazione di copyright alle proprie modifiche e può fornire termini e condizioni di licenza aggiuntivi o diversi per l'uso, la riproduzione o la distribuzione delle proprie modifiche o per tali Opere derivate nel loro complesso, a condizione che l'uso, la riproduzione e la distribuzione di l'Opera rispetta altrimenti le condizioni stabilite nella presente Licenza.

Non sto creando un lavoro derivato (ho intenzione di fornirlo così com'è).

Non ho un file NOTICE, solo il mio file LICENSE.txt.

Domanda: dove devo mettere qualcosa del genere: "Questo progetto utilizza la libreria Xyz distribuita sotto Apache 2.0 ..."? Cosa è raccomandato?

Devo fornire anche il file di licenza Apache? O sarebbe sufficiente se dico semplicemente "Trova la licenza online qui ... "

Spero che qualcuno che ha fatto questo in passato possa far luce sulla questione.

Risposte:


3

Domanda: dove devo mettere qualcosa del genere: "Questo progetto utilizza la libreria Xyz distribuita in Apache2.0 ..."? Cosa è raccomandato?

La licenza implica che è necessario includere un tipo di file AVVISO nella distribuzione del software. Ti consiglierei di farlo.

Devo fornire anche il file di licenza di Apache? O sarebbe sufficiente se dico solo "Trova la licenza online qui ... http://www.apache.org/licenses/LICENSE-2.0.html "

La licenza richiede esplicitamente di fornire una copia della licenza.


Se ritieni che i requisiti di Apache dichiarati o impliciti siano discutibili, parla con un avvocato esperto in problemi di software IP ... prima di decidere di ignorarli.


8

Non l'ho fatto in passato, ma il tuo segmento citato rende molto chiaro ciò che è necessario. In particolare, solo la seguente riga è pertinente per l'utente: "È necessario fornire a tutti gli altri destinatari dell'Opera o delle Opere derivate una copia di questa Licenza;"

Ciò significa che è necessario includere il file di licenza stesso, non solo un collegamento.

Per quanto riguarda l'altra tua domanda, l'estratto di licenza non richiede che tu chiami esplicitamente l'uso della libreria, ma tali informazioni sarebbero più utili in un file README.txt o Dependencies.txt.


5

È inoltre necessario fornire una copia della licenza Apache versione 2.0 (APLv2). Lo dice nella citazione: "Devi dare a tutti gli altri destinatari dell'Opera o dei Lavori derivati ​​una copia di questa Licenza".

Non è richiesta alcuna attribuzione diversa da quella. Quindi, mettere "questo progetto utilizza la libreria Xyz distribuita sotto Apache 2.0" da qualche parte non è necessario. Il codice sorgente (l'Opera) e la licenza parlano da soli in questa materia.

Certo, è una buona etichetta includere un'attribuzione come quella. La destinazione dipende dal tipo di software che stai realizzando.

Detto questo, sembra che tu stia facendo un lavoro derivato - stai costruendo un binario con il software con licenza APLv2. Questo è un lavoro derivato. (Non è chiaro dalla tua domanda se stai distribuendo un binario o meno, in realtà.) In tal caso, devi gestire il file NOTICE in modo appropriato. Dici di non avere un file NOTICE, ma il software APLv2 ha un file NOTICE? In caso affermativo, è necessario disporre di un metodo per visualizzare gli avvisi in esso contenuti con il proprio software (binario).


riguardo al "lavoro derivato" ... non è chiaro se l'OP stia creando o meno un lavoro derivato. MA, "costruire un binario con il software con licenza APLv2" non implica un lavoro derivato. La licenza specifica nello specifico "Le opere derivate non devono includere opere che rimangono separabili o semplicemente collegano (o si legano per nome) alle interfacce delle opere e delle opere derivate".
Andy Dennie,
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.