de vez em quando, comunidade de discussão sobre a controversa sobre licenças de código aberto em um produto popular vai pegar manchetes, fazendo com que todos nós, para o debate que licenças de código aberto são realmente sobre. No ano passado, foi a proibição de componentes da Fundação Apache com a controversa cláusula de patente do Facebook React que causou uma agitação que enviou Desenvolvedores correndo para o Reddit boards., Nestes últimos meses, os Laboratórios Redis e MongoDB fizeram mudanças nas licenças de código aberto de algumas de suas bases de dados de código aberto mais populares, deixando muitos para arranhar suas cabeças, destacando a necessidade de ter licenças de código aberto explicadas em linguagem humana.
o básico: o que é uma licença de código aberto?
cada licença de código aberto estabelece o que os usuários são autorizados a fazer com os componentes de software, suas obrigações, e o que eles não podem fazer de acordo com os Termos e Condições. Isso pode parecer muito direto, mas há mais de 200 licenças de código aberto lá fora, então boa sorte em mantê-los todos organizados., Variando em complexidade e requisitos, cabe às organizações escolher quais licenças são mais compatíveis com suas políticas para garantir que elas permanecem conformes.
Copyleft and Permissive: Two Types of Open Source Licences Explained
the two main categories of open source licenses often require in-depth explanation. As licenças Open source podem ser divididas em duas categorias principais: copyleft e permissive. Esta divisão é baseada nos requisitos e restrições que a licença coloca nos usuários.,
Copyright é uma lei que restringe o direito de usar, modificar e compartilhar obras criativas sem a permissão do detentor dos direitos autorais. Pense sobre música, filmes, etc que são propriedade intelectual de seu criador. Quando um autor libera um programa sob uma licença copyleft, eles fazem uma reivindicação sobre os direitos autorais da obra e emitem uma declaração de que outras pessoas têm o direito de usar, modificar e compartilhar a obra, desde que a reciprocidade da obrigação seja mantida., Em suma, se eles estão usando um componente com este tipo de licença de código aberto, então eles também devem fazer seu código aberto para uso por outros também.
uma licença permissiva de código aberto é uma licença não copyleft de código aberto que garante a liberdade de usar, modificar e redistribuir, ao mesmo tempo que permite trabalhos derivados proprietários. Licenças permissivas de código aberto, amorosamente referidas como “Anything Goes”, colocam restrições mínimas sobre como outros podem usar componentes de código aberto., Isso significa que este tipo de licença permite vários graus de liberdade para usar, modificar e redistribuir código de código aberto, permitindo o seu uso em obras derivadas proprietárias, e exigindo quase nada em troca no que diz respeito a obrigações que se movem para a frente.
Cheat Sheet: Top Open Source Licenças Explicado
É importante observar que não há bom ou mau, licenças, e que nenhuma licença é melhor que o outro. Qualquer um pode criar uma licença de código aberto que se adapte à sua fantasia, que é a razão de haver tantos por aí., Isso poderia tornar a escolha de uma licença de código aberto complicada, especialmente para aqueles de nós que não são bem versados na lei e nunca tiveram licenças de código aberto explicadas completamente. A fim de ajudar a reduzir a decisão e fazer sentido de tudo isso, a OSI montou uma lista de licenças aprovadas, consistindo de um pouco mais de 80 licenças de código aberto que são mais comumente usadas.
das dezenas de licenças de código aberto na lista aprovada pela OSI, alguns reinam supremos e são usados por alguns dos projetos de código aberto mais populares lá fora.,
reunimos uma lista rápida de explicar o mais comumente usado licenças de código aberto:
- Licença Pública Geral GNU (GPL)
- A Licença Apache
- Microsoft Licenças Públicas (Ms-PL)
- BSD (Berkeley Software Distribution)
- Desenvolvimento Comum e a Distribuição License (CDDL)
- Eclipse Public License (EPL)
- Licença MIT
Licença Pública Geral GNU (GPL)
A GNU Licença Pública Geral é o mais popular de licença de open source redor., Richard Stallman criou a GPL para proteger o software GNU de se tornar proprietário, e é uma implementação específica de seu conceito de “copyleft”.
GPL é uma licença copyleft. Isto significa que qualquer software que seja escrito com base em qualquer componente GPL deve ser liberado como código aberto. O resultado é que qualquer software que use qualquer componente GPL open source (independentemente de sua porcentagem em todo o código) é necessário para liberar seu código fonte completo e todos os direitos de modificar e distribuir o código inteiro.,
sempre houve alguma confusão sobre o que constitui um “trabalho baseado” noutro trabalho, o que, por sua vez, desencadeia a obrigação de reciprocidade da GPL. O FSF tentou adicionar mais clareza à GPLv3 sobre quando a obrigação de reciprocidade é desencadeada. A FSF até escreveu uma nova licença GPL, A Licença Affero, para resolver uma confusão específica referida como a “lacuna ASP”.
além disso, a FSF tentou aumentar a compatibilidade do GPLv3 com outras licenças. Para combinar dois códigos em um trabalho maior, ambos os programas devem permitir., Se esses direitos são concedidos por ambas as licenças dos programas, eles são compatíveis. Ao tornar o GPLv3 mais compatível, a FSF expandiu as opções de desenvolvimento.
A terceira diferença entre as duas versões é que o GPLv3 foi escrito em uma tentativa de aumentar o uso em todo o mundo. A linguagem usada no GPLv3 para descrever os direitos de licença foi modificada para garantir que as leis internacionais interpretá-la como a FSF pretendia, ao contrário da linguagem usada no GPLv2, que é considerada muito centrada nos EUA., O GPLv3 também permite aos desenvolvedores adicionar isenções locais, o que também ajuda a aumentar o seu uso fora dos EUA.
Top 10 da Licença GPL Perguntas Respondidas
A Licença Apache
O Apache License é uma licença de software livre lançado pela Apache Software Foundation (ASF). É uma licença popular e amplamente implantada apoiada por uma comunidade forte. A Licença Apache permite que você use, modifique e distribua livremente qualquer produto licenciado Apache. No entanto, ao fazê-lo, você é obrigado a seguir os termos da Licença Apache.,
the Apache Group (later named the Apache Software Foundation) released the first version of its license in 1995, but it’s rare that you’ll come across components that still carry this license.
Em 2000, quando Berkeley aceitou o argumento utilizado pela Free Software Foundation e reformados sua publicidade cláusula da licença BSD, e formou a licença BSD modificada, Apache fez o mesmo e criou a Licença Apache, versão 1.1.,
remover a cláusula de publicidade significava que os materiais de publicidade das obras derivadas de qualquer produto licenciado Apache não eram mais necessários para incluir a atribuição da Licença Apache. Tornou-se ok incluir a atribuição apenas na documentação.
In 2004, the ASF decided to depart from the BSD model a little more radically and produced the Apache License version 2.0 by granting patents rights and defining solid definitions of the concepts it uses to make it more coherent.,
Top 10 Apache License Questions Answered
Microsoft Public Licenses (Ms-PL)
a Microsoft Public License é uma licença de software livre e de código aberto lançada pela Microsoft, que a escreveu para seus projetos que foram lançados como open source.
Você é livre para reproduzir e distribuir trabalhos originais ou derivados de qualquer software licenciado sob a licença Ms-PL. No entanto, você não pode usar nenhum nome, logotipo ou marca registrada de contribuintes quando você faz isso., O Ms-PL protege os autores por explicitamente não oferecer quaisquer garantias ou garantias expressas para o uso do seu código, de modo que o autor não é responsável se o código não funcionar bem em alguns casos.
Quando você distribui software (ou sua porção) sob o Ms-PL, você não é obrigado a distribuir seu código fonte. Pode fazê-lo se quiser, mas não é obrigado. No entanto, você é obrigado a manter todos os direitos autorais, patentes, marcas registradas e avisos de atribuição que estão originalmente presentes no software.,
adicionalmente, se você distribuir qualquer parte do software em seu formulário de código fonte, você pode fazê-lo apenas sob o Ms-PL, incluindo uma cópia completa desta licença com sua distribuição. Se você distribuir qualquer parte do software em seu formulário de código compilado ou objeto, você só pode fazê-lo sob qualquer outra licença que cumpra com o Ms-PL.
é importante notar que o documento de termos e Condições Ms-PL é muito curto, conciso e escrito em uma linguagem muito coerente., A Microsoft queria ser muito clara e direta com a comunidade de código aberto, o que também ajuda a taxa de adoção (como sabemos a partir da licença BSD).
Berkeley Software Distribution (BSD)
BSD Licences or the original BSD License and its two variants – the Modified BSD License (3-clause), and the Simplified BSD License/FreeBSD License (2-clause) are a family of permissive free software licenses.,
A Licença BSD permite que você modifique e distribua livremente o código do seu software no formato fonte ou binário, desde que você mantenha uma cópia do aviso de direitos autorais, lista de condições, e a declaração de exoneração de responsabilidade.
A Licença BSD original ou a licença BSD 4-cláusula também contém uma cláusula de publicidade e uma cláusula de não endosso (explicação detalhada sobre estas Cláusulas são oferecidas nas seguintes perguntas). A licença BSD modificada ou a licença BSD de 3 cláusulas foi formada pela remoção da cláusula de publicidade da licença BSD original., Além disso, a versão do FreeBSD ou a licença BSD de 2 cláusulas foi formada pela remoção da cláusula de não endosso da licença BSD modificada ou da licença BSD de 3 cláusulas.
Common Development and Distribution License (CDDL)
CDDL é uma licença de código aberto publicada pela Sun Microsystems para substituir a Sun Public License (SPL). A licença CDDL é considerada pela Sun (agora Oracle)como sendo a versão 2 da SPL. Ele é inspirado pela Licença Pública Mozilla (MPL)., Sun usou para lançar seus projetos de software livre / open source sob sua licença Sun Public (SPL) antes de se tornar dependente do CDDL em 2004. CDDL é muitas vezes apelidado como uma versão limpa do MPL e é feito para facilitar a reutilização.
Você é livre para reproduzir e distribuir quaisquer obras originais ou derivadas de qualquer software licenciado sob o CDDL. No entanto, você não deve remover ou fazer quaisquer alterações a quaisquer avisos de direitos autorais, patentes ou marcas comerciais contidas no software., Você também deve manter quaisquer avisos de licenciamento ou qualquer texto descritivo dando atribuição a qualquer colaborador ou desenvolvedor inicial.
Quando você distribui seu software em uma forma executável (qualquer forma que não o código fonte), você é obrigado a tornar o código fonte disponível também sob o CDDL. O formulário executável pode ser liberado sob o CDDL ou quaisquer licenças compatíveis com CDDL.,
O código-fonte que você tem para disponibilizar inclui o seu contributo, enquanto eles são uma adição, exclusão ou modificação do conteúdo de um arquivo que contém o software original, ou novos arquivos que contêm partes do programa original. Isso significa que se suas adições são feitas em arquivos separados e independentes que não contêm o código original, você não tem que liberá-lo sob o CDDL. Pode fazer isso se quiser, mas não é obrigado.
além disso, você deve incluir uma cópia do CDDL com qualquer código fonte que você distribua., Para cada modificação que você fizer, você deve identificar – se como o modificador, incluindo um aviso em seus arquivos modificados.
Eclipse Public License (EPL)
O Eclipse Public License (EPL) é uma licença de código aberto desenvolvido pela Eclipse Foundation. É derivado da Licença Pública comum (CPL). A base de código Eclipse agora disponível sob a EPL foi anteriormente licenciada sob a CPL.
A Licença EPL é uma licença copyleft., Se você modificar um componente EPL’ED e distribuí – lo no formulário de código fonte como parte de seu programa, você é obrigado a divulgar o código modificado sob o EPL. Se você distribuir tal programa em seu formulário de código objeto, você é obrigado a declarar que o código fonte pode ser disponibilizado ao destinatário mediante pedido. Você também é obrigado a compartilhar o método para solicitar o código fonte.
A Fundação Eclipse deixa claro que, em sua opinião, ‘meramente interfaceando ou interoperando’ com um plugin Eclipse não faz do seu código um trabalho derivado do plugin.,
Se você redistribuir um programa com um componente EPL, você é obrigado a incluir o texto completo da licença e os direitos autorais.a EPL protege o autor de possíveis ações judiciais ou danos causados se uma empresa usou seu componente em um produto comercial. Também oferece uma bolsa de patente.
MIT License
MIT is one of the most permissive free software license. Basicamente, você pode fazer o que quiser com software licenciado sob a licença do MIT-apenas se você adicionar uma cópia da licença original do MIT e Aviso de copyright para ele., Sua simplicidade é a razão por trás de sua alta taxa de adoção entre os desenvolvedores.
Conheça suas licenças de código aberto, ou explique isso ao juiz
Se você chegou até aqui, então você sabe que as licenças de código aberto não são para os fracos de coração.