Estou explorando a idéia de portar um pacote de software existente para outro idioma. É lançado sob a Licença Apache 2.0 e é distribuído gratuitamente; mas há uma grande diferença entre usar uma biblioteca e criar uma cópia dela. É claro que eu daria crédito total e seria honesto sobre a origem, e certamente não pretendo ganhar dinheiro com o porto, apenas usá-lo em outros projetos.
Eu li a licença, é claro, que diz:
- Concessão de licença de direitos autorais. Sujeito aos termos e condições desta Licença, cada Colaborador concede a Você uma licença de copyright perpétua, mundial, não exclusiva, gratuita, irrevogável e sem direitos autorais para reproduzir, preparar Trabalhos Derivados, exibir publicamente, executar publicamente, sublicenciar e distribuir o Trabalho e Trabalhos Derivados na forma Origem ou Objeto.
[...]
Redistribuição. Você pode reproduzir e distribuir cópias da Obra ou Obras Derivadas em qualquer meio, com ou sem modificações, e na forma Origem ou Objeto, desde que cumpra as seguintes condições:
uma. Você deve fornecer a qualquer outro destinatário da Obra ou Obra Derivada uma cópia desta Licença; e
b.Você deve fazer com que os arquivos modificados apresentem avisos importantes, informando que você alterou os arquivos; e
c. Você deve reter, na forma Fonte de quaisquer Obras Derivadas que distribuir, todos os avisos de direitos autorais, patentes, marcas comerciais e de atribuição da forma Fonte da Obra, excluindo os avisos que não pertencem a nenhuma parte das Obras Derivadas; e
d. Se o Trabalho incluir um arquivo de texto "AVISO" como parte de sua distribuição, todos os Trabalhos Derivativos distribuídos por você deverão incluir uma cópia legível dos avisos de atribuição contidos no arquivo AVISO [...]
Você pode adicionar Sua própria declaração de direitos autorais às Suas modificações e pode fornecer termos e condições de licença adicionais ou diferentes para uso, reprodução ou distribuição de Suas modificações, ou para quaisquer Obras Derivadas como um todo, desde que Seu uso, reprodução e distribuição de caso contrário, a Obra cumpre as condições estabelecidas nesta Licença.
O que parece muito com uma porta (como uma "Obra Derivada") é totalmente permitido com ou sem a permissão do autor, desde que retenha diligentemente cópias da licença, avisos de direitos autorais existentes, atribuição etc.
Mas isso não significa que eu entenda todas as implicações disso. Por exemplo, a porta precisaria necessariamente compartilhar a mesma licença que a original?
Ainda não iniciei nenhum dos trabalhos nem entrei em contato com os autores do pacote (embora o inicie). Quero estabelecer se existe algum risco de muito trabalho ser desperdiçado. Também preciso saber se precisaria fazer uma implementação de sala limpa com base apenas na API ou se poderia basear meu trabalho no código-fonte existente (que ainda não examinei).
fonte
Respostas:
Traduções (para uma linguagem natural diferente e para uma linguagem de programação diferente) são consideradas Obras Derivadas.
Ao criar um trabalho derivado tão radicalmente diferente do original como uma tradução para uma linguagem de programação diferente (não intimamente relacionada), é realmente muito difícil entender como os requisitos da licença Apache devem ser aplicados. Eu recomendo fortemente que você discuta com os mantenedores do pacote original como eles gostariam de ver os direitos autorais tratados e você também pode discutir isso com um advogado.
A parte problemática é a cláusula 4c:
O problema aqui é que, com uma mudança tão radical, é quase impossível dizer quais avisos (direitos autorais e atribuição) da obra original legalmente também pertencem à versão traduzida e, portanto, quais avisos devem ser mantidos e quais devem ser removidos.
fonte
Os direitos autorais se aplicam apenas ao código fonte original. Não posso fornecer aconselhamento jurídico (legalmente :)) no meu país, mas quando você usa um idioma diferente, é um corpo diferente de código-fonte. Considerações éticas são uma questão diferente. Eu tentaria usar uma licença que seja agradável aos autores originais, para preservar o espírito da contribuição original de código aberto para a comunidade. Além disso, os autores originais devem ser creditados.
fonte