GPL copiando avisos de direitos autorais

12

O "GPL How to" tem o seguinte a dizer sobre a aplicação de avisos de direitos autorais de código copiado de outros programas:

Se você copiou o código de outros programas cobertos pela mesma licença, copie os avisos de direitos autorais também. Coloque todos os avisos de direitos autorais junto ao topo de cada arquivo.

Fiz uma refatoração total de uma biblioteca C # , que era uma porta do código do Visual Basic (VB). O código VB original está atualmente liberado sob a Licença Pública da Microsoft (Ms-PL), mas originalmente sob a GPL. A biblioteca C # é GPL, continuando o trabalho na biblioteca VB mais antiga. Basicamente, eu usei apenas a mesma 'técnica' que eles usaram.

Eu não ligo para fazer a biblioteca GPL, então esse não é o problema. ( A partir desta resposta, entendo que minha biblioteca pode ser considerada um trabalho derivado.) No entanto, acho complicado ter que copiar os avisos de direitos autorais anteriores em todos os arquivos de origem. Prefiro apenas referenciá-los no arquivo README. Esta pergunta discute a necessidade de adicionar avisos a todos os arquivos de origem, mas não há consenso entre as respostas. Portanto, eu gostaria de adicionar a licença a todos os arquivos como medida de segurança.

Preciso incluir avisos de direitos autorais dos projetos nos quais minha biblioteca foi baseada em todos os arquivos de origem também?

Steven Jeuris
fonte

Respostas:

2

O MS-PL ( definição ) é muito mais liberal comparado à GPL. Não é muito idêntico, mas o MS-PL é mais parecido com a licença Apache, onde no código é fornecido como está. O software original do MS-PL não se importa se um software derivado é distribuído como fonte ou binário ou mesmo comercial. Portanto, se você usar o código MS-PL, modifique (seja trivial ou com refatoração) que você pode publicá-lo através da GPL

No entanto, é claro que você não pode remover o aviso de licença do MS-PL. E, portanto, a licença GPL concedida por você se torna essencialmente uma licença dupla. Como o MS-PL já permite que outras pessoas incluam seu trabalho no comércio, a proteção fornecida pela GPL não será mais válida! Sim, sua licença não será mais forte que a mais fraca de todas - o MS-PL.

Mais uma referência: http://www.cmswire.com/cms/web-development/taking-a-closer-look-at-microsofts-mspl-open-source-license-004248.php

Existe uma opinião geral: [ É possível reescrever todas as linhas de um projeto de código aberto de uma maneira ligeiramente diferente e usá-lo em um projeto de código fechado? ] mesmo que você modifique todas as linhas de código, ainda será um trabalho derivado; portanto, você não pode realmente excluir os termos do MS-PL.


EDITAR

Opa! Acabei de sair da tangente para ler a pergunta corretamente.

Basicamente, supondo que a GPL seja comum nas três gerações. Isto é simples. O que a GPL exige é que, para cada reivindicação de direitos autorais de arquivo, seja incluída com menção à GPL. Consulte o GPL Howto que se segue:

Qualquer que seja a licença que você planeja usar, o processo envolve adicionar dois elementos a cada arquivo de origem do seu programa: um aviso de direitos autorais (como “Copyright 1999 Terry Jones”) e uma declaração de permissão de cópia, dizendo que o programa é distribuído sob a termos da Licença Pública Geral GNU (ou a GPL Menor).

Portanto, é necessário que haja pelo menos uma reivindicação de direitos autorais anexada a cada arquivo de origem sem a qual você não pode anexar a GPL (ou qualquer licença) a ele!

Agora, a verdadeira questão no seu caso é:

se você realmente modificou muito ou quase reescreveu um arquivo, mas não inclui o nome do autor original, está violando a lei de direitos autorais? ( não copiando e colando o nome do autor original).

Isso é determinado pela noção comum de se o novo autor merece direitos autorais sobre determinadas obras. Veja esta página wiki para uma introdução primária: Quando existe o direito autoral do trabalho derivado?

A resposta simples é: quando a mudança é significativa . Isso é bastante ambíguo, uma vez que é uma afirmação ilegal, mas é verdade. Mesmo copiar apenas ritmos, mas não palavras, e fazer remixes na música ocorre em uma área cinza severa por causa disso; e essa noção de mudança significativa varia entre as leis de diferentes países.

Dito isto, basta observar que, se você quase começou com um novo arquivo e reescreveu o programa, o novo arquivo normalmente merece seu nome, e não o autor antigo. Em geral, se você simplesmente copiar um arquivo e simplesmente alterar o aviso de direitos autorais do autor para colocar seu nome, estará violando os direitos autorais.

Portanto, como um conselho prático, se você iniciou um novo conjunto de arquivos, coloque seu nome; se você manteve os arquivos originais, mantenha os nomes originais (você pode adicionar seu nome além disso).

Dipan Mehta
fonte
1
Postagem interessante, mas realmente não responde à pergunta que eu estava fazendo. Como uma observação lateral: acredito que o autor original tenha lançado o código anteriormente GPL como MS-PL, mas o trabalho derivado estava no código GPL'ed, não na biblioteca MS-PL. Portanto, não estou trabalhando no MS-PL, talvez deva remover esse histórico, pois isso só pode causar confusão.
Steven Jeuris
A questão é - é um trabalho derivado? Sim, se você mantiver um programa idêntico e apenas alterar todas as linhas de uma maneira irrelevante à qual ele é derivado - se você usar os conceitos do programa e escrevê-lo novamente, pode não ser.
Martin Beckett