Eu tenho um código que gostaria de compartilhar, mas gostaria de publicá-lo usando uma licença de código aberto. Mas não sei como você deve usar essas licenças.
Como você precisa ativar uma licença de código aberto? Apenas incluindo o texto da licença em todos os arquivos? O que mais eu tenho que fazer? Preciso comprar algo certo? Incluir um readme.txt em todos os diretórios? Quero dizer, o que devo fazer se quiser que meu código seja protegido pelo teste legal de uma licença?
A segunda pergunta é qual é a melhor licença para essas condições:
- Não me importo com o que as pessoas fazem com meu código, propósitos educacionais, para ganhar dinheiro, não me importo com o que elas querem fazer com ele.
- Mas quero que as pessoas não excluam meu nome do código e, se usarem meu código, forçam-nas a me mencionar. Se eles mudarem meu código e alguém solicitar essas modificações, eles fornecerão o código com as modificações.
- Mas não quero forçar as pessoas a publicar o código de seus aplicativos, mesmo que estejam usando meu código.
Qual é a melhor licença para esse fim?
open-source
licensing
Pedro Ballesteros
fonte
fonte
Respostas:
Aqui está um guia útil:
As referências às versões PDF e Graffle do fluxograma acima estão disponíveis no blog de Karl Fogel .
fonte
Use a licença BSD original de 4 cláusulas .
Como a maioria das licenças de código-fonte aberto, ele permite ao usuário modificar e redistribuir a fonte. Permite que eles o usem para qualquer finalidade.
Diferentemente da maioria das licenças modernas aprovadas pela OSI, essa é a chamada "cláusula de publicidade", o que significa que os autores de software que usam sua biblioteca devem mencionar que o produto deles contém código desenvolvido por você.
Texto da cláusula:
"Todos os materiais de publicidade que mencionam os recursos ou o uso deste software devem exibir o seguinte reconhecimento: Este produto inclui software desenvolvido pelo
<organization>
."Isso é meio problemático. Somente licenças de cópia esquerda exigem isso. O uso da licença de cópia esquerda é contraditório com os demais requisitos.
fonte
Não sou advogado e o seguinte não é aconselhamento jurídico, mas o que reuni sobre a lei de direitos autorais como programador.
Se você cria um software, possui os direitos autorais, a menos que alguém lhe pague para escrevê-lo. Você deve indicar os direitos autorais do software ou em
README
, seguido dos termos da licença ou, se estiver usando uma licença detalhada como a GPL, um ponteiro para onde a licença pode ser encontrada. Se você agora publicar seu software, ele será coberto pela licença. Você deve informar o usuário da licença, por exemplo, em um instalador ou no manual.O tipo de licença que você deseja soa como um copyleft, mas mais fraco que a GPL. Considere a Licença Pública Geral Menor GNU (LGPL).
fonte
A Free Software Foundation tem tido muito sucesso na busca de litígios contra pessoas que violaram os termos de sua licença de código aberto. Lembro-me de um artigo de ~ 2006 mostrando que eles eram 4 para 4 naquele momento; mais recentemente, eles resolveram ações contra a Cisco, Skype e Verizon, resultando em pagamentos para a FSF. Em geral, no entanto, o processo começa apenas após tentativas repetidas de informar o réu de suas obrigações. Portanto, para economizar tempo, exija que o usuário clique em um botão 'aceitar' em uma caixa de diálogo de licença padrão, salve o arquivo de termos de licença em sua própria pasta 'licença' e você deve estar pronto.
No que diz respeito à licença específica de uso, parece muito com a LGPL, que faz tudo o que você pede, exceto possivelmente a parte da atribuição - você pode ter que fazer disso uma estipulação separada.
fonte
Não acho que exista uma licença que corresponda exatamente aos seus requisitos. Parece que você quer algum tipo de mistura da AGPL e da LGPL. Mas a FSF ainda não conseguiu criar essa licença! Você pode ver a resposta oficial aqui: /programming/3330792/why-isnt-there-a-lesser-affero-general-public-license/4419776#4419776
fonte
Não sei qual é o requisito legal exato, mas a prática normal é incluir um pequeno comentário no cabeçalho no início de cada arquivo:
Não.
Não. Um único arquivo README na raiz da árvore de diretórios é uma boa ideia, mas não é obrigatória.
Para ter certeza absoluta, converse com um advogado.
Em relação aos seus requisitos de licenciamento.
Isso é uma espécie de não-requisito. Muito poucas licenças proíbem as pessoas de ganhar dinheiro, usar na educação etc.
No entanto, "faça o que bem entender" contradiz literalmente alguns de seus outros requisitos.
O requisito de que eles forneçam o código-fonte de qualquer modificação feita está presente na GPL, LGPL, AGPL, mas não no Apache, BSD e outras licenças comuns.
A maioria das licenças exige atribuições no código para permanecer no código.
No entanto, "forçá-los a me mencionar" é difícil, e poucas ou nenhuma licença diz isso. Na verdade, a posição da FSF é que esse requisito torna seu código não livre ...
Poucas licenças obrigam as pessoas a publicar o código de seu aplicativo normalmente. Até o mais radical da família GPL permite que você use e modifique o software para fins puramente particulares.
No entanto, GPL e outros forçam as pessoas a publicar a fonte se as pessoas distribuírem um aplicativo com base no seu. (As condições precisas dependem da licença. Por exemplo, a LGPL permite que as pessoas vinculem seu código ao seu sem forçá-lo a publicá-lo. Por outro lado, a GPL exige que publiquem seu código nessas circunstâncias, e a AGPL o estende a outras áreas .)
Observe também que esse requisito (2) e (4) é literalmente contraditório.
Em resumo, você precisa poder expressar claramente seus requisitos para uma licença. Se você não puder fazer isso, terá pouca chance de encontrar uma licença que atenda aos seus requisitos.
Ou talvez você deva apenas conversar com um advogado. (Ele / ela obviamente precisará fazer várias perguntas para obter quais são seus requisitos reais.)
fonte
Você pode usar qualquer licença que desejar (até criar a sua própria) no trabalho que pertence a você (você possui os direitos autorais). Isso geralmente é feito incluindo uma cópia da licença no arquivo
COPYING
junto com o código-fonte.O que você está procurando é uma licença com estilo XFree86 1.1 (que é uma licença permissiva sem copyleft (não é necessário abrir a fonte se você a usar, mas requer um reconhecimento) e atende a todos os seus requisitos.
Você pode substituir o nome xfree86 pelo seu nome e distribuí-lo.
fonte