Código da cláusula BSD 2/3 da Relicense para GPL

11

Suponha que eu libere algum código-fonte sob a nova licença BSD. É permitido que outra pessoa pegue esse código, faça modificações e distribua-o sob os termos da GPL? Da Wikipedia :

Muitas das licenças de software livre mais comuns, como a licença original do MIT / X, as licenças BSD (no formato atual de 2 cláusulas) e a LGPL, são "compatíveis com GPL". Ou seja, seu código pode ser combinado com um programa sob a GPL sem conflito (a nova combinação teria a GPL aplicada ao todo). No entanto, algumas licenças de software livre / de código aberto não são compatíveis com GPL.

Estou assumindo que isso implica que se pode relicenciar o código licenciado de novo BSD para a GPL?

Brecht Machiels
fonte
Fiz uma pergunta semelhante no Open Source Stack Exchange: opensource.stackexchange.com/questions/4837/… Sinto que ainda não encontramos uma resposta conclusiva; tudo o que temos é uma dúzia de palpites. Seria ótimo ouvir de um advogado de verdade, ou talvez até da própria FSF.
19417 Tanner Swett

Respostas:

8

Essa é uma pergunta interessante. Isenção de responsabilidade: IANAL.

O fragmento citado significa que o código licenciado BSD pode ser usado em um projeto licenciado pela GPL.

Por outro lado, você ainda é o detentor dos direitos autorais do seu código. A licença do código original não pode ser alterada sem a sua permissão. A licença BSD também exige explicitamente:

  • 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.
  • As redistribuições em formato binário devem reproduzir o aviso de direitos autorais acima, esta lista de condições e o aviso de isenção de responsabilidade a seguir na documentação e / ou outros materiais fornecidos com a distribuição.

Portanto, a licença BSD não pode ser retirada do seu código.

Para poder realmente liberar código combinado sob a GPL, outro autor teria que dar uma "contribuição significativa" ao código. É vago o que exatamente significa, mas geralmente deve significar pelo menos adicionar novos recursos significativos, não apenas pequenas correções.

Situação semelhante: SFLC conclui a revisão do driver sem fio Atheros para Linux, Guia de lançamentos para desenvolvedores .

Pergunta relacionada no SO: /programming/821608/relicensing-a-bsd-library

vartec
fonte
Portanto, as condições do BSD precisam ser mantidas. Isso está claro. Mas condições adicionais podem ser adicionadas à lista, por exemplo, uma cláusula do tipo GPL faça suas alterações disponíveis para terceiros?
Brecht Machiels
11
@Brecht: se e somente se é algo novo que se enquadra como trabalho separado sob direitos autorais. Se houver uma pequena alteração ou adaptação, não é um trabalho separado, portanto não é possível licenciá-lo novamente.
Vartec 11/11
6

Na minha experiência, não, você não "licencia novamente" algo porque não possui os direitos autorais. Você só tem uma licença dos autores originais.

O que você pode fazer é usar o trabalho protegido por direitos autorais em um trabalho derivado, mas você deve seguir os termos da licença, que, no caso do BSD / MIT, diz que é necessário preservar o aviso e a licença de direitos autorais no código usado .

Na prática, se alguém usasse sua biblioteca BSD em um aplicativo da GPL, o que você veria no aplicativo é:

  • Uma cópia da licença GPL em um arquivo de texto
  • Um arquivo separado que afirma que o programa inteiro está licenciado sob a GPL (e apontando-o para o arquivo de licença GPL para os detalhes), mas possui seções separadas abaixo do cabeçalho dizendo "a biblioteca XYZ está licenciada sob a licença BSD" e, em seguida, mostra o licença de XYZ lá também. Aqui está um exemplo desse tipo de arquivo, de um aplicativo da GPL que eu escrevi .

Se alguém pegou um trecho de código ou um arquivo do seu trabalho e o incluiu no aplicativo GPL e o modificou, provavelmente os verá incluir o cabeçalho GPL e BSD no arquivo. O arquivo teria essencialmente dois autores - você e eles. Ambos os avisos de direitos autorais teriam que ser mostrados.

Lembre-se, a GPL é viral, portanto se aplica a todo o trabalho, mas o BSD / MIT se aplica apenas ao código exato que alguém escreveu.

Scott Whitlock
fonte
11
presumivelmente, você pode relicenciar uma obra cuja licença o permita, mesmo que você não seja o detentor dos direitos autorais original. O BSD parece permitir isso.
Armand #
2

Isenção de responsabilidade: IANAL.

Não há proibição nas licenças MIT ou BSD contra o relicenciamento. Dado que nem as licenças MIT nem BSD adicionam restrições além do que já está na GPL (os bits de direitos autorais e garantia já estão na cláusula 1 dos Termos e Condições da GPLv2), não vejo problema em criar e relicenciar um projeto licenciado pelo MIT.

A antiga licença do BSD tinha uma cláusula de publicidade que não funcionava bem com a GPL.

Frank Shearar
fonte
2
Também não sou advogado, mas acho que isso pode ser desinformação. Somente o (s) detentor (s) dos direitos autorais pode licenciar novamente um trabalho protegido por direitos autorais. O motivo pelo qual o BSD é compatível com a GPL é que o código licenciado pela BSD pode ser usado em um trabalho da GPL, mas o código BSD original ainda é licenciado pela BSD. Como parte do trabalho derivado, também é licenciado sob a GPL, mas você precisa manter intacta a licença original.
Scott Whitlock
3
@Scott BSD diz que você deve manter as cláusulas do BSD. No entanto, não restringir acrescentando-lhes, então talvez esta é uma interpretação razoável
Armand
2
O opensource.org/licenses/mit-license.php declara explicitamente que qualquer pessoa que obtenha uma cópia do código pode sublicenciar o software.
Frank Shearar 13/09/12
2

Desculpe, mas a maioria de vocês está errada.

Licenciamento e propriedade são duas coisas diferentes. Você não pode licenciar novamente algo que não possui. Não é sua decisão a tomar.

O proprietário é o detentor dos direitos autorais, não você. Portanto, você não pode licenciar novamente o trabalho deles. Como você não é dono do trabalho deles, está apenas licenciando-o. Ou seja, o proprietário está permitindo que você o use. Ele / ela não está lhe dando propriedade.

Será ridículo pensar, por exemplo, que o autor original (ou QUALQUER UM que tenha obtido o código BSD) precise seguir a GPL para usar o código original apenas porque você decidiu usar SEU CÓDIGO em um projeto GPL.

No entanto, você pode licenciar o código GPL YOUR PRÓPRIO. E então, essa parte, não a original, está sob a GPL. Como o autor original não colocou o trabalho na GPL e você APENAS está licenciando e NÃO POSSUENDO o trabalho original.

Você pode usar o código licenciado BSD no seu código GPL (como o BSD permite isso, desde que você siga os termos do BSD, e um NÃO É PARA REMOVER a licença das cópias), mas você não pode simplesmente licenciar novamente a coisa toda, pois você não é o dono. Novamente, não é sua decisão a tomar. Se, no entanto, você deseja usar um código GPL de terceiros com código BSD. Então o problema estará em conformidade com a parte GPL.

Ricardo Santos
fonte
11
Acredito que a declaração acima "Você não pode licenciar novamente algo que não possui" está incorreta; muitas licenças concedem o direito de sublicenciar trabalhos com direitos autorais. Às vezes, as subvenções de sublicenciamento restringem ainda mais quais direitos podem ser concedidos sob a sublicença, mas nem sempre. As especificidades dependem da situação e se você recebeu os direitos para fazê-lo.
Cameron
Além disso, se você incluir a licença BSD em suas cópias, isso significa que o código ainda é BSD e não pode estar sob a GPL ao mesmo tempo.
warvariuc