Licenças de código aberto: 14 licenças explicadas em português
Para cada licença, o que ela permite, o que exige e o que não garante, com o texto oficial a um clique.
Licenças permissivas (MIT, Apache-2.0, BSD, ISC) pedem pouco e deixam fechar o código derivado; as de copyleft (GPL, LGPL, AGPL, MPL, EPL) exigem que o derivado distribuído continue aberto. Abra uma licença para ver as três colunas: pode, deve e não pode.
Informação, não aconselhamento jurídico. Os resumos são nossos e simplificam; o texto oficial da licença é o que vale. Para decisões com consequência legal ou financeira, consulte um advogado.
As 14 licenças, por tipo
Cada linha leva à página da licença. Os grupos saem das condições que o choosealicense registra para cada uma.
Permissivas: pedem pouco e deixam fechar o derivado
- MITA licença MIT permite usar, copiar, modificar e distribuir o código, inclusive em produto comercial e fechado.
4 pode1 deve2 não pode
- Apache-2.0A Apache-2.0 permite uso comercial, modificação e distribuição, como a MIT, e acrescenta uma concessão expressa de patentes dos colaboradores.
5 pode2 deve3 não pode
- BSD-2-ClauseA BSD de 2 cláusulas permite usar, modificar e redistribuir o código em qualquer projeto.
4 pode1 deve2 não pode
- BSD-3-ClauseA BSD de 3 cláusulas permite uso comercial, modificação e distribuição, como a de 2 cláusulas, e acrescenta uma proibição: o nome do titular e dos contribuidores não pode ser usado para promover produtos derivados sem permissão escrita.
4 pode1 deve2 não pode
- ISCA licença ISC permite usar, copiar, modificar e distribuir o software para qualquer fim, com ou sem pagamento, desde que o aviso de copyright e a nota de permissão apareçam em todas as cópias.
4 pode1 deve2 não pode
- BSL-1.0A Boost Software License permite usar, copiar, modificar e distribuir sem restrição.
4 pode1 deve2 não pode
Sem nenhuma condição (domínio público)
- UnlicenseA Unlicense dedica o software ao domínio público: qualquer pessoa pode copiar, modificar, publicar, usar, compilar, vender ou distribuir, para qualquer fim.
4 pode0 deve2 não pode
- CC0-1.0A CC0 1.0 renuncia, no limite da lei, aos direitos autorais e conexos sobre a obra e, se isso não for possível, oferece uma licença permissiva de reserva.
4 pode0 deve4 não pode
Copyleft por arquivo ou por biblioteca
- LGPL-3.0A LGPL-3.0 mantém aberta a biblioteca e as mudanças feitas nela, mas deixa programas que apenas a usam terem outra licença, desde que o usuário continue podendo modificar a biblioteca.
5 pode4 deve2 não pode
- MPL-2.0A MPL-2.0 exige que os arquivos cobertos por ela, e as mudanças neles, continuem sob a MPL com o código-fonte à disposição.
5 pode3 deve3 não pode
Copyleft: o derivado distribuído continua aberto
- GPL-3.0A GPL-3.0 permite usar, modificar e distribuir, inclusive para fins comerciais, mas exige que a obra derivada distribuída continue sob a mesma licença, com o código-fonte à disposição de quem a receber.
5 pode4 deve2 não pode
- GPL-2.0A GPL-2.0 segue a mesma ideia da GPL-3.0: permite uso comercial, modificação e distribuição, mas a obra derivada distribuída precisa sair sob a mesma licença, com o código-fonte.
4 pode4 deve2 não pode
- AGPL-3.0A AGPL-3.0 é a GPL-3.0 com uma exigência a mais: se você modifica o programa e o oferece a usuários pela rede, precisa dar a eles a chance de receber o código-fonte da sua versão.
5 pode5 deve2 não pode
- EPL-2.0A EPL-2.0 é uma licença com copyleft que deixa licenciar binários comercialmente, traz concessão de patentes e permite que obras ligadas ao código usem outras licenças, inclusive comerciais.
5 pode3 deve2 não pode
Exemplo resolvido: lendo as três colunas da MIT e da GPL-3.0
- A MIT tem 4 itens em “Pode” (uso comercial, modificar, distribuir e uso privado), 1 em “Deve” (manter o aviso de copyright) e 2 em “Não pode” (sem garantia e sem responsabilidade dos autores). Quem usa o seu código só precisa manter o aviso.
- A GPL-3.0 tem 5 itens em “Pode” (os mesmos 4 mais a concessão de patentes), 4 em “Deve” (aviso de copyright, registrar mudanças, abrir o código-fonte e manter a mesma licença) e os mesmos 2 em “Não pode”.
- A diferença está na coluna do meio: a MIT pede 1 coisa; a GPL-3.0 pede que o derivado distribuído continue aberto.
Como ler as três colunas
Pode é o que a licença permite sem pedir nada em troca: uso comercial, modificação, distribuição, uso privado e, em algumas, a concessão expressa de patentes dos colaboradores. Deve são as condições: manter o aviso de copyright, registrar as mudanças, abrir o código-fonte, manter a mesma licença nas modificações. Não pode é o que a licença deixa de dar ou de garantir: garantia, responsabilidade dos autores, direito de usar a marca e, em alguns casos, as patentes.
Essas três listas vêm dos metadados do projeto choosealicense.com, que cataloga cada regra de cada licença. Elas resumem: quando a regra importa de verdade para o seu caso, vale ler o texto oficial, que sempre tem o link na página da licença.
Continue por aqui
Cada página resolve uma parte da escolha.
Perguntas frequentes
Qual licença de código aberto é a mais usada?
O CódigoLivre não afirma isso: não achamos nas fontes abertas que consultamos uma medição de uso que possamos citar. O choosealicense marca MIT, Apache-2.0 e GPL-3.0 como licenças em destaque na sua página inicial.
Existe licença de código aberto que impeça o uso comercial?
Não entre as 14 desta lista: todas permitem uso comercial, segundo os dados do choosealicense. Quem distribui precisa cumprir as condições de cada uma, como manter o aviso de copyright ou abrir o código-fonte.
O que significa copyleft?
É a condição de que as modificações distribuídas continuem sob a mesma licença, com o código-fonte disponível. No choosealicense aparece como "mesma licença" (same-license) e variantes por arquivo ou por biblioteca.
Por que o id GPL-3.0 aparece como obsoleto?
Na lista SPDX, GPL-3.0, GPL-2.0, LGPL-3.0 e AGPL-3.0 sem sufixo estão obsoletos. Valem a forma "-only" (só aquela versão) e a "-or-later" (aquela versão ou uma posterior). Os trechos copiáveis do site já usam as formas vigentes.