Entenda os tipos de licença open source e saiba qual usar nos seus projetos
Tags: braziliandevs, githubbrasil, opensource, github
Published: 2023-05-25 15:20:29


Se você já criou um repositório no GitHub, deve se lembrar que logo na página de criação do repo, a plataforma pede para que você escolha uma licença, e se você clicar no menu vai ver uma lista enorme!

*Mas o que são licenças? Para que preciso de uma? Como escolher a melhor pro meu projeto?* Essas perguntas sempre passavam pela minha cabeça, mas eu escolhia a MIT e criava meu projeto sem me preocupar muito com isso.

Mas desde que eu comecei a trabalhar no GitHub, essas perguntas ficaram mais importantes e enquanto explorava licenças e respondia às perguntas da minha mente curiosa, comecei a escrever esse artigo.

  

## O que é e pra que serve uma licença open source?

Você já usou algum software que você pode editar e compartilhar, gratuitamente? Esse software provavelmente é open source, e é graças a licença open source que você pode editá-lo e compartilhar essa edição sem problemas.

A licença open source do projeto dita os termos e condições para o uso daquele software, funcionando como um acordo legal entre quem cria o projeto inicial e quem o usa.

  

## Tipos principais de Licenças: Copyleft e Permissivas

Existem dois tipos principais de licenças open source: **Copyleft e Permissivas.**

As Permissivas tem poucas restrições do uso do código fonte, enquanto as Copyleft tem mais regras a serem seguidas.

### Licença Copyleft

Isso mesmo que você leu, Copyleft e não Copyright. Enquanto uma licença copyright restringe o uso e distribuição de algo, a Copyleft permite o uso e distribuição, mas desde certas condições sejam seguidas.

Você pode usar e distribuir um projeto com licença Copyleft desde que seu trabalho mantenha a mesma licença do projeto inicial, fazendo com que suas modificações sejam distribuídas aberta e gratuitamente, como o projeto inicial.

As licenças Copyleft ainda são subdivididas em duas categorias, strong (forte) e weak (fraca):

**-   Licenças copyleft fortes**  

Se um código-fonte for protegido por uma forte licença copyleft, então o software derivado precisa estar disponível publicamente sob a mesma licença. Isso inclui todas as bibliotecas e componentes vinculados dentro do software. Por exemplo, se alguém modifica e distribui software sob uma licença GPL, também deve disponibilizar o código-fonte e licenciar suas modificações sob a mesma licença GPL.

  

**-   Licenças copyleft fracas**    

Os requisitos de uma licença copyleft fraca são semelhantes aos de uma forte, mas se aplicam a um conjunto limitado de códigos. Esta licença de código aberto requer apenas que o código-fonte da obra original ou modificada seja disponibilizado publicamente, enquanto o restante do código usado junto com a obra não precisa ser publicado sob a mesma licença.

  

Alguns exemplos de licenças Copyleft:

-   GNU General Public License (GPL) - strong
    
-   Mozilla Public License (MPL) - weak
    
-   Eclipse Public License (EPL) - weak
    

### Licença Permissiva

Esse tipo de licença dá muita flexibilidade no uso e distribuição do projeto open source, porque elas têm poucas restrições de uso e distribuição. Com essa licença, pessoas usuárias são livres para usar seu software como quiserem, podendo até usá-lo para fins comerciais, sem terem a obrigação de utilizar a mesma licença.

  

Alguns exemplos de licenças Permissivas:

-   MIT
    
-   Apache 2.0
    
-   BSD
    

  
  

## Como escolher a melhor licença para seu projeto

Mas e aí, como a gente faz pra escolher o melhor tipo de licença para nosso projeto?

  

Se você deseja tornar seu código reutilizável e compartilhável, mas garantindo que seu código e seus derivados vão estar sempre acessíveis gratuitamente, você deve escolher uma licença Copyleft. Dessa forma, outras pessoas podem fazer quase tudo o que quiserem com o código, menos distribuir versões de código fechado.

  

Se você deseja torná-lo fácil e permissivo, para permitir que as pessoas façam o que quiserem com seu código, incluindo a publicação do trabalho derivado como proprietário, você deve optar por uma licença Permissiva.

  

### E se meu projeto não tem licença?

Se o seu projeto não tem nenhuma licença atualmente, ninguém pode usá-lo legalmente, mesmo que seja público e visível para todo o mundo.

  

Podem usar esse projeto sem uma licença? Sim. Mas não é legal, tecnicamente, portanto, a maioria das empresas e organizações sem fins lucrativos não poderá utilizar seu software até que você adicione uma licença.

  
  

## Como adicionar a licença ao seu projeto

Agora que você já sabe o que é uma licença open source, para que ela serve e qual o tipo ideal para o seu projeto, vamos adicioná-la ao seu projeto.

Se você ainda não criou o repositório desse projeto, na página inicial de criação de repositório o GitHub vai te dar um menu com várias opções de Licenças para você escolher.

  


![exemplo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ud1zcwd11phyiovt3eoy.png)

  

Se seu projeto já existe, você precisa criar no root do repositório um arquivo com o nome LICENSE.

Aqui você tem a opção de:

1.  Clicar em Choose a license template, que vai te levar para uma página com várias opções de licenças para você escolher OU
    
2.  Você pode ir no site da licença de sua escolha, copiar a licença e colar nesse arquivo LICENSE.
    

  


![exemplo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4jkjlh2ettxtutvdxw36.png)
  

Não importa o método que você escolheu, se tudo estiver certinho, quando você voltar para a página principal do repositório, vai ver que sua licença está disponível na sessão About, na coluna direita do repo, com o ícone de balança:

  


![exemplo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rifpki6zjhg4boe5p0gm.png)

  
  

>Como pessoa usuária, se você tem a intenção de editar e distribuir um projeto open source, não esqueça de ler a licença antes para não correr o risco de ter problemas no futuro!

## Conclusão

Licenças Open Source são super importantes para qualquer repositório de código aberto, e hoje aprendemos que existem dois tipos principais de licenças: Copyleft e Permissiva, sendo a Permissiva, como o próprio nome diz, a mais permissiva das opções enquanto a Copyleft tem algumas restrições para garantir que qualquer produto do seu projeto continue open source.

  

Hoje deixo para vocês o desafio de olhar nos seus repositórios principais do GitHub se eles tem licença, e caso sim, se o tipo de licença que eles tem atualmente é o melhor, ou se assim como eu, você apenas colocou MIT em tudo haha