GPL - o que é distribuição?

22

Um ponto interessante surgiu em outro tópico sobre a alegada apropriação indevida de um projeto GPL. Nesse caso, o software corporativo foi usado por algumas grandes empresas que essencialmente adotaram o código, alteraram o nome, removeram os avisos da GPL e usaram o resultado.

A questão era: se a empresa fez isso e só usou o software internamente, não há distribuição e isso é perfeitamente legal sob a GPL. Modificações por seus próprios funcionários para uso interno também seriam permitidas.

Então, em que momento ele se torna uma distribuição?
Presumivelmente, se eles contratassem contratados externos sob 'trabalho por conta', suas modificações também seriam internas e, portanto, não uma distribuição.

Se eles contratassem um software externo para fazer modificações e essas alterações fossem usadas apenas internamente pela empresa - essas mudanças seriam distribuídas? A GPL se aplica ao cliente ou aos desenvolvedores externos?

Se a empresa fornecer o resultado para outro departamento, outra unidade de negócios, outra empresa? E se a outra empresa for uma subsidiária integral?

ps. Sim, eu sei que a resposta é pedir a um advogado. Mas toda a discussão que eu vi sobre a distribuição GPL2 / GPL3 foi sobre serviços da Web - não sobre uso interno.

Martin Beckett
fonte
A GPL3 usa os termos "Transportar" e "Propagar" em vez de distribuir.
30712 Craig
Uma pergunta-service web: programmers.stackexchange.com/questions/131264/...
Ciro Santilli新疆改造中心法轮功六四事件
Publiquei uma questão relacionada à Lei SE, caso alguém esteja interessado em responder: Preciso cumprir a licença GPL ao alugar hardware?
Kozuch

Respostas:

11

A essência da GPL é que ela não limita o que você pode fazer com o software - ela impõe requisitos a você quando você transmite ou propaga o trabalho coberto. Para citar a GPLv3 :

“Propagar” uma obra significa fazer qualquer coisa que, sem permissão, o responsabilize direta ou secundariamente por infração sob a lei de direitos autorais aplicável, exceto executá-la em um computador ou modificar uma cópia privada . [enfase adicionada]

Portanto, se o único uso for com uma cópia privada, você não estará propagando ou transmitindo o trabalho, portanto as condições que permitem transmitir o trabalho não serão relevantes.

Veja esta FAQ :

A GPL exige que o código fonte das versões modificadas seja publicado ao público?

A GPL não exige que você libere sua versão modificada, ou qualquer parte dela. Você é livre para fazer modificações e usá-las em particular, sem nunca liberá-las. Isso se aplica também às organizações (incluindo empresas); uma organização pode criar uma versão modificada e usá-la internamente sem nunca liberá-la para fora da organização.

Craig
fonte
6
Portanto, criar um derivado de código fechado e distribuí-lo apenas dentro da minha "organização" parece bom. Mas e se eu deixar alguém se tornar membro da minha organização? Empregá-los por um centavo? Ou até mesmo colocar um binário no meu site e dizer "ao fazer o download, eu concedo a você membro da minha organização"? Eu me pergunto onde você poderia traçar a linha.
jdm
2
IANAL, mas acho que não é tão simples. Você precisaria de algum tipo de entidade legal que seja sua organização. Sem a entidade legal, são apenas algumas pessoas e, de fato, você está propagando ou transmitindo o trabalho. Descobrir quem é e não é um "membro" provavelmente é uma lei contratual ou trabalhista. E, como sempre, só porque o que você está fazendo é legal e você venceria uma ação não significa que não será processado.
24713 Craig
2
Votado acidentalmente e agora o voto está bloqueado :(
whatsisname
Eu votei nele para você;)
axel22
Você está perdendo o ponto. Se você distribuir um binário para qualquer pessoa (dentro ou fora da sua "organização", no entanto, você escolher definir isso), também deverá disponibilizar o código-fonte para esse destinatário. A razão pela qual a "organização" aparece é que presume-se que você não se importe em dar acesso a essas pessoas ao código-fonte, porque elas estão na sua "organização".
Rob
5

Olhe isto deste modo. Realmente não importa se existem departamentos ou subsidiárias diferentes. Só importa se você vai distribuir os binários para outra parte e não fornecer a origem.

Se houver outro departamento que usará as modificações, eles receberão a fonte para trabalhar nele. Nada demais. Você está cumprindo com tudo na licença. Qualquer pessoa que possa obter uma distribuição precisa da fonte.

Os serviços pela rede não são considerados distribuição.

Aqui está uma tentativa de uma explicação simples da GPL:

Se um projeto da GPL produz awesomeProduct.jar, qualquer lugar que awesomeProduct.jarexista awesomeProduct_src.jartambém precisa existir. Se alguém não tem awesomeProduct.jar, não recebeawesemeProduct_src.jar

Andrew T Finnell
fonte
Legalmente, suponho que a pergunta seja "outra parte". por exemplo, para uma corporação multinacional gigante como Samsung ou Mitsubishi, pode haver muitas organizações que não são consideradas "outra parte". Meu ponto era que mega-corp poderia tomar Linux, modificá-lo, vendê-lo para 1000s de usuários em 100s de empresas subsidiárias e ainda estar dentro do GPL
Martin Beckett
@MartinBeckett Não importa. A menos que você esteja sugerindo que o Departamento A produza um produto da fonte GPL e não forneça a fonte ao Departamento B.
Andrew T Finnell
Se eu modificar o código GPL e fornecer a você, você também precisará redistribuí-lo. Se você me pagar para modificá-lo - ainda precisará distribuí-lo? Se você é Ford e dá Jaguar, não é? Parecia um ponto interessante!
Martin Beckett
- Acho que esse ponto surgiu no Android. O Google distribuiu o Kernel Linux modificado apenas para o fabricante do telefone ou para todos os usuários finais do telefone? Não me lembro se havia uma conclusão.
Martin Beckett
1
na verdade, se o negócio for voltado para subsidiárias totalmente diferentes, elas não farão parte da mesma empresa. Eles terão contas diferentes e afins. Distribuir para eles será para uma empresa diferente. É fácil dizer, você tem o mesmo CEO? Eles publicam contas diferentes? Se o Google UK for uma entidade legal totalmente diferente da Google EUA, por exemplo, e eles pagarem ao Google US (ou Google TaxHaven que é) uma taxa de licença para seus produtos, eles não poderão distribuir um produto GPL sem a fonte.
Gbjbaanb
3

Se é isso que a empresa deseja, existe um método muito simples para evitar todas as obrigações e todos os problemas legais: sempre que você der uma cópia do software a um funcionário, forneça o código-fonte completo ao mesmo tempo. Essa é uma das três maneiras de cumprir suas obrigações sob a GPL.

Diga aos funcionários que eles não têm permissão para entregar o software a mais ninguém e que eles definitivamente não têm permissão para entregar o código-fonte a ninguém. Se o fizerem, terão problemas com o empregador. Se o fizerem sem entregar o código-fonte, terão problemas legais (e não o empregador, porque o empregador não distribuiu o software).

gnasher729
fonte
Infelizmente, diretamente contradito pela GPL porque a GPL significa que, na redistribuição, você não pode alterar a licença. Isso significa que é expressamente proibido obrigar o destinatário do código-fonte a não redistribuí-lo sob a GPL. "Você não pode propagar ou modificar um trabalho coberto, exceto conforme expressamente fornecido sob esta Licença." (GPLv3, Seção.8) E ainda: "Você não pode impor mais restrições ao exercício dos direitos concedidos ou afirmados sob esta Licença". (ibid., seção 10)
Unapiedra
@Unapiedra Você tem certeza? A maneira como entendo isso é que o empregador ainda está distribuindo para os funcionários sob a GPL. Eles têm um direito legal, como garantido pela licença, de distribuir o código. Mas a empresa ainda precisa que eles não exerçam esse direito; portanto, se o fizerem, serão demitidos. Isso é tudo o que vai acontecer; o empregador não terá nenhuma responsabilidade legal por vazar, pois foi especificamente concedida uma licença legal para fazê-lo. Porém, é arriscado para a empresa - se o funcionário deixar a empresa, a empresa não poderá impedi-lo de distribuir o código.
precisa saber
@ flarn2006, este FAQ da FSF não soa como se um empregador pudesse restringir um funcionário de vazar o código?
csrowell 17/06
ah, encontrei uma FAQ ainda melhor em relação à distribuição interna : "... Como conseqüência, uma empresa ou outra organização pode desenvolver uma versão modificada e instalar essa versão através de suas próprias instalações, sem dar permissão à equipe para liberar a versão modificada para outsiders ... "
csrowell 17/06
Além disso, há uma FAQ sobre roubo , que eu acho que seria abrangida se um funcionário divulgasse o código: "... Se a versão em questão não for publicada e for considerada por uma empresa como seu segredo comercial, a publicação poderá ser violação da lei de segredo comercial, dependendo de outras circunstâncias.A GPL não altera isso.Se a empresa tentasse lançar sua versão e ainda a tratasse como segredo comercial, isso violaria a GPL, mas se a empresa não a divulgasse nesta versão, nenhuma violação ocorreu ".
csrowell 17/06
0

Gostaria de olhar para esta citação de seu site

Se você distribuir binários comercialmente não acompanhados do código fonte, a GPL diz que você deve fornecer uma oferta por escrito para distribuir o código fonte posteriormente. Quando os usuários redistribuem não comercialmente os binários que receberam de você, eles devem transmitir uma cópia desta oferta por escrito. Isso significa que as pessoas que não obtiveram os binários diretamente de você ainda podem receber cópias do código-fonte, juntamente com a oferta por escrito.

Você precisa passar a fonte por toda a cadeia, basta olhar para ela, pois sua API externa é o cliente da API interna. O requisito de fornecer origem é herdado pelo uso da API interna pela API externa.

icirellik
fonte