Posso usar pacotes licenciados GPL, LGPL, MPL com meu aplicativo e torná-lo de código fechado?


11

Vi que uma empresa está usando o BusyBox e também usando pacotes Gpl + Lgpl + Mpl e, em seguida, eles têm um aplicativo próprio sendo executado. Sua aplicação é um pacote de código fechado.

Você compra o dispositivo, mas sua fonte fechada. Como é que a GPL misturada com LGPL + MPL se torna fonte fechada?

Eu pensei que a regra é? Ou estou errado ou as seguintes informações estão erradas ?:

GPL: Se você usá-lo em seu aplicativo, deverá liberá-lo sob a GPL. Isso não significa que você também não pode vendê-lo (como eles vendem CDs do Linux), mas você também deve liberar o código-fonte gratuitamente. Isso pode funcionar para você, mas provavelmente não.

LGPL: Se você usá-lo em seu aplicativo, ainda poderá ter um aplicativo licenciado proprietário de código fechado. Mas se você modificar a biblioteca LGPL, deverá liberá-las sob a LGPL, mesmo que seu aplicativo possa permanecer de código fechado.


Primeiro, o BusyBox é um programa, não um sistema. Segundo, o BusyBox, em particular, tem uma ótima página de licença do Busybox sobre isso. E o restante é abordado nas Perguntas frequentes da GPL .
Mctylr

O BusyBox é o projeto que litigou com mais êxito os problemas da GPL. Houve várias empresas que incluíram o BusyBox, mas não forneceram o código do BusyBox para seus usuários finais. De todo o código para empurrar o envelope com o BusyBox é provavelmente a pior escolha.
Elin

Respostas:


12

É perfeitamente correto vender um "agregado" de software de código aberto e de código aberto de acordo com as Perguntas frequentes da GPL. Se a empresa compilou um Linux, construiu seu próprio programa usando apenas bibliotecas LGPL e vendeu o produto resultante ao publicar todas as fontes GPL / LGPL com ele, elas não estão violando a GPL.

O ponto aqui é: A GPL não se estende a programas simplesmente executando no mesmo computador e se comunicando / interagindo com o programa de código fechado. É claro que um gerenciador de janelas de código aberto como o BusyBox pode gerenciar janelas de código fechado. Como regra geral, a GPL alcança o espaço de endereço do código licenciado.


3
Isso é basicamente o que eu ia dizer, mas eu também adicionaria uma nota sobre tivoização .
Mark Booth

1
@Google: Sim, mas você precisa distribuir todas as fontes das peças GPL com sua distribuição.
thiton

1
@Google: a GPL exige que trabalhos derivados tenham avisos 'importantes' de que são derivados. (Seção 4 e 5 da GPL). Então, você pode identificá-lo como o Bnome3 Desktop, mas precisa de uma legenda que diz 'Based on Gnome 3', e os avisos de direitos autorais precisam listar 'The GNOME Project'. Note que o fedora não é distribuído sob a GPL em uma grande unidade, é um grande cluster de muitos bits, cada um sob a GPL et al.
Ipeet

2
"Regra geral" é o que mantém os advogados empregados. Basta dizer ...
pap

1
Apenas uma observação, mas ... BusyBox ('b' maiúsculo) não é um Gerenciador de Janelas. Eu acho que você ficou confuso com * Box, linha de WMs, como Openbox, Blackbox, Fluxbox, etc ... (todas as letras minúsculas 'b') O BusyBox é um único software (mais especificamente, um sistema de inicialização) que combina várias ferramentas UNIX . Tenho certeza de que foi apenas uma confusão.
haylem

4

IANAL, mas é isso que eu aprendi. Eu ficaria muito interessado em saber se algo está incorreto:

LGPL: Se você estaticamente link que ele em sua aplicação e você distribuir o aplicativo compilado em seguida, você deve liberar a fonte sob a GPL para quem recebe o binário .


1
De acordo com o meu entendimento, você acabou de descrever a LGPL. Como thiton disse, 'a GPL chega até o espaço de endereço do código licenciado'.
Ipeet

Simplesmente não está correto. Se você vincular uma biblioteca gpl, o programa deverá ser gpl. Não importa se você vincula estática ou dinamicamente. É por isso que eles inventaram LPGL para dar Authers biblioteca a opção de ligação sem restringir licença
Esben Skov Pedersen

1

A GPL NÃO é compatível com código fechado. Se eles usassem pacotes / módulos licenciados pela GPL e fechassem a fonte, no caso geral, estariam violando as condições da GPL.


Uma grande empresa fez isso, onde o próprio Busybox é a GPL e eles usaram zoneinfo http://www.twinsun.com/tz/tz-link.htm LGPLe o dispositivo incorporado é de código fechado, negociando há mais de muitos anos. Você ainda dirá que eles estão violando as condições da GPL?
YumYumYum

2
@Google: Ok, então uma empresa fez algo por alguns anos. Você está dizendo que o torna legal? Usando esse raciocínio, exceder o limite de velocidade para dirigir seria legal por aqui.
David Thornley

@ DavidThornley: Bem, infelizmente não sou eu. A empresa que está fazendo isso não é legal ou legal não é clara porque, na lei de TI, não há 100% de respostas disponíveis, portanto, tentando entender para evitar cometer erros em meus projetos, onde muitas outras parecem já ter cometido esses erros. (é apenas porque os recursos são limitados, não estão disponíveis para os iniciantes perceberem durante o desenvolvimento, mais tarde se torna um pesadelo, como no meu caso).
YumYumYum

1

Existem casos claros e outros obscuros para os quais você terá mais opinião de que os advogados que você apresenta.

Suas regras correspondem ao meu entendimento, mas o que variará é a definição precisa de "uso". O sistema de direitos autorais no qual a licença se baseia não se refere ao "uso", mas à "criação de um trabalho derivado" e alguns argumentam com bons argumentos que um sistema feito de programas diferentes pode ser tal que os diferentes programas estejam vinculados o suficiente para que o Todo o sistema é um trabalho derivado de qualquer um deles, enquanto outro programa único vinculado dinamicamente a uma biblioteca não é um trabalho derivado da biblioteca porque a biblioteca implementa um protocolo claramente definido e pode ser substituído (vi libreadline usado em tais uma maneira com um wrapper simples da GPL para corresponder a uma interface fornecida pelo aplicativo). Peça ao seu advogado aconselhamento específico para o seu caso. Vejo você perante o juiz se o detentor dos direitos autorais não estiver '


1

(Esta resposta não se destina a esta pergunta, mas a uma pergunta mais específica git, e cobre seu caso específico em mais detalhes do que a questão praticamente permitiria. Consulte o comentário 599873 para obter mais informações. Ele ficará aqui neste formulário pelo menos até que o problema seja resolvido .)

  • O Git é coberto pela GPLv2 .
  • Geralmente, se você tiver alguma dúvida sobre o licenciamento da FSF, o caminho a seguir é
    • a licença em si (não é um limitador de porta e é bastante compreensível. O tempo investido em aprendê-la pagará dez vezes mais).
    • Perguntas frequentes da FSF sobre suas licenças , especificamente uma FAQ sobre GPLv2 ,
    • outros materiais relacionados na web, incluindo instalações da FSF; preste atenção à sua autoridade embora
    • como último recurso (com falta de advogado), a própria FSF (eles não são um escritório de advocacia, é claro, portanto, eles apenas fornecerão comentários gerais sem considerar a jurisdição - como eles são livres para ignorar uma solicitação. eles respondem a perguntas razoáveis ​​que ainda não foram respondidas em outro lugar, embora possa demorar um pouco).

  • No seu caso, os materiais relacionados são:
    • GPLv2 # section2 :

      b) Você deve fazer com que qualquer trabalho que você distribua ou publique, que total ou parcialmente contenha ou seja derivado do Programa ou de qualquer parte dele, seja licenciado como um todo sem nenhum custo para todos os terceiros sob os termos desta Licença .
      <...>
      Esses requisitos se aplicam ao trabalho modificado como um todo. Se seções identificáveis ​​desse trabalho não forem derivadas do Programa e puderem ser consideradas obras independentes e separadas em si mesmas, esta Licença e seus termos não se aplicarão a essas seções quando você as distribuir como obras separadas. Porém, quando você distribui as mesmas seções como parte de um todo, que é um trabalho baseado no Programa, a distribuição do todo deve obedecer aos termos desta Licença, cujas permissões para outros licenciados se estendem a todo o todo e, portanto, a cada e todas as partes, independentemente de quem as escreveu.

      Portanto, não é intenção desta seção reivindicar direitos ou contestar seus direitos ao trabalho escrito inteiramente por você; ao contrário, a intenção é exercer o direito de controlar a distribuição de obras derivadas ou coletivas com base no Programa.

      Além disso, a mera agregação de outro trabalho não baseado no Programa ao Programa (ou a um trabalho baseado no Programa) em um volume de um meio de armazenamento ou distribuição não coloca o outro trabalho no escopo desta Licença.

    • Perguntas frequentes sobre a GPLv2 #NFUseGPLPlugins :

      Depende de como o programa chama seus plug-ins. Se o programa usa fork e exec para chamar plug-ins, então os plug-ins são programas separados, portanto, a licença do plug-in não requer requisitos sobre o programa principal.

Portanto, você não pode fazer o seu trabalho "conter",git mas pode incluí-lo como uma entidade separada usada pelo seu trabalho. O exemplo do VMWare mostra que o último inclui empacotá-lo na distribuição ou em um arquivo composto dentro da distribuição (era uma imagem ISO).

Qual a distinção? Levei um tempo para chegar a uma conclusão. No final, o parágrafo "não é a intenção ... reivindicar direitos ... e sim ... controlar a distribuição de obras derivadas ou coletivas com base no Programa" me convenceu de que a distinção é se o trabalho resultante é considerado um derivado da parte GPL sob a lei de direitos autorais. Com este último, a GPL não pode ajudá-lo - você precisa consultar a lei de direitos autorais aplicável ou seguir os passos de outras pessoas.


Esta resposta foi planejada para programmers.stackexchange.com/questions/289785/… . Eles fecharam antes que eu terminasse a investigação. Como ele aborda o assunto melhor do que a resposta aceita nesta pergunta, mas tem muitas partes específicas para essa, tentarei reabri-la para repassá-la lá por esses motivos.
Ivan_pozdeev 16/07/2015

2
esta pergunta não pergunta sobre o git. FWIW outra pergunta mencionou em seu comentário, não aparece para perguntar sobre git quer (ele só menciona sonoridade similar "libgit.a")
mosquito

@gnat, bem, leia um pouco mais e você verá "git.exe".
Ivan_pozdeev 16/07/2015

Entendo obrigado! ainda, mencionar git na resposta aqui pode parecer confuso para os leitores, é como se estivesse saindo do nada. Considere editar o arquivo para dar conta disso
gnat

1
"Esta resposta não foi planejada para esta pergunta". Em seguida, exclua sua resposta ou altere-a para resolver a questão.
217 Andy
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.