Como gerenciar, na prática, arquivos de licença ao combinar código licenciado GPL e BSD?


10

Estou escrevendo um código que usa uma biblioteca com licença GPL (não LGPL) e outra com a licença BSD de 3 cláusulas . Como eu vinculo à biblioteca licenciada pela GPL, meu código também precisa ser da GPL. Como, na prática, devo lidar com o LICENSE.txt original da biblioteca BSD?

(A) Posso distribuir um projeto para que o código-fonte principal seja licenciado pela GPL e, em seguida, algum subdiretório seja licenciado pelo BSD?

(B) Se eu não fosse apenas o link para as bibliotecas, mas para usar e combinar o código BSD e GPL de uma maneira mais envolvida, o que fazer com o LICENSE.txt?

O texto BSD de 3 cláusulas diz: "As redistribuições do código-fonte devem manter o aviso de direitos autorais acima, esta lista de condições e o aviso de isenção de responsabilidade a seguir". aparentemente, devo manter o aviso de direitos autorais e essa lista de condições em algum lugar. Mas também vou precisar colocar o arquivo txt-license da GPL em algum lugar.

Além disso, aparentemente eu não preciso reter a "Redistribuição e uso nas formas de origem e binária, com ou sem modificação, são permitidas, desde que as seguintes condições sejam atendidas:" parte do texto da licença do BSD, pois ele apenas me diz para guarde as outras peças.

Então, como e em quais arquivos de texto, na prática, devo organizar o texto da licença GPL e as partes da licença e direitos autorais do BSD que retenho?

EDIT: Então, no caso B, eu pegaria o código licenciado BSD de 3 cláusulas e o redistribuiria sob a GPL, o que é permitido, pois a licença BSD de 3 cláusulas é (unidirecional) compatível com a GPL . Estou apenas perguntando como lidar com os textos de licença e arquivos de texto na prática.


Esta é uma má ideia. Uma simples pesquisa na web mostrará o motivo. Mas todo o produto se torna GPL. Houve problemas com isso antes.
Andrew T Finnell

2
@ Andrew Finnell: Por que é uma má idéia? Todo o produto é GPL, já que um componente é, mas o que há de errado nisso? A biblioteca licenciada pelo BSD ainda está licenciada pelo BSD. As pessoas não usam licenças BSD, a menos que desejem que seus itens sejam utilizáveis ​​por pessoas que desejam usar licenças mais restritivas.
David Thornley

Respostas:


1

Por uma questão de simplicidade, provavelmente é melhor liberar a coisa toda sob a GPL. A licença BSD de 3 cláusulas não tem forma de cópia deixada; portanto, você tem o direito de renomeá-la, desde que mantenha seu aviso.

Você terminará com dois tipos de arquivos:

  • Originalmente, arquivos BSD: precisa ter os dois cabeçalhos, a ordem não é importante para o meu conhecimento, apenas que eles estão lá
  • Seus arquivos e originalmente arquivos GPL: precisa ter o cabeçalho GPL

E, é claro, para qualquer versão binária, você precisará incluir um link para a fonte e os dois cabeçalhos de alguma forma. Eu recomendaria a GPL padrão, seguida por "Partes deste programa foram originalmente lançadas sob a seguinte licença" ou algo parecido, é provável que você possa encontrar exemplos disso acontecendo na natureza, se a procurar.

Observe que não sou advogado, nem me especializo em licenciamento de código aberto ou em geral. Estou simplesmente retransmitindo como seria a minha interpretação do licenciamento fornecido.


1

Ok, lendo a seção 7 da GPLv3 , é permitido "permissões adicionais [que] se aplicam apenas a parte do Programa" [1]. Portanto, manter alguns dos arquivos ou diretórios sob a licença BSD parece bom, pois acho que o "faça o que quiser" da licença BSD é uma "permissão adicional".

Além disso, a seção 7 permite "complementar os termos desta Licença com os termos:" (a seguir, lista de 6 pontos do tipo permitido de termos) e todas as 3 cláusulas (+ o aviso) da licença BSD são cobertas, portanto, no caso de misturar código BSD e GPL em um único arquivo, talvez eu apenas precise colocar um ADDITIONAL_TERMS.txt em algum lugar, contendo as 3 cláusulas + isenção de responsabilidade da licença BSD.

(Para ser mais preciso, o tempo todo em que falei sobre a licença BSD, eu quis dizer a licença de três cláusulas AKA "New BSD License" AKA "Modified BSD License", à qual vinculei minha pergunta.)

[1] Contanto que um destinatário do programa possa remover as permissões adicionais se ele redistribuir ainda mais. E a licença BSD permite isso.


-1

Isso simplesmente não é possível de acordo com várias interpretações dos termos da licença.

O gnu.org diz para a versão 2:

Porque impõe um requisito específico que não está na GPL; ou seja, a exigência de publicidade do programa. A GPL declara:

Você não pode impor mais restrições ao exercício dos direitos concedidos pelos destinatários.

A cláusula de publicidade fornece exatamente essa restrição adicional e, portanto, é incompatível com a GPL.

A licença BSD revisada não possui a cláusula de publicidade, que elimina o problema.

e para a GPL v3 :

Por que a licença original do BSD é incompatível com a GPL? (#OrigBSD)

Porque impõe um requisito específico que não está na GPL; ou seja, a exigência de publicidade do programa. A seção 6 da GPLv2 declara:

Você não pode impor mais restrições ao exercício dos direitos concedidos pelos destinatários.

A GPLv3 diz algo semelhante na seção 10. A cláusula de publicidade fornece apenas uma restrição adicional e, portanto, é incompatível com a GPL.

A licença BSD revisada não possui a cláusula de publicidade, que elimina o problema.

Outros advogados / juízes, é claro, podem ter opiniões diferentes.


11
Tem certeza de que não está falando sobre a licença BSD de 4 cláusulas? "Nem o nome da <organização> nem os nomes de seus colaboradores podem ser usados ​​para endossar ou promover produtos derivados deste software sem permissão prévia por escrito específica." não se refere à publicidade de qualquer forma ou forma e está realmente relacionado à marca comercial da organização, não aos direitos autorais do código-fonte.
Guvante 24/07/12

11
De fato! Fiquei confuso (novamente) sobre as diferentes revisões!
Johannes
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.