Eu fiz muita pesquisa sobre isso, mas ainda estou bastante confuso.
Atualmente, estou trabalhando em um projeto de software compatível com Arduino. O projeto é de código aberto, então eu quero que outros o usem também, mas não quero que eles criem trabalhos derivados com licenças de código fechado. Gostaria que eles reconhecessem qualquer código usado por eles no meu projeto como derivado do meu trabalho e exigisse que eles mantivessem seu trabalho derivado de código aberto também.
Ao mesmo tempo, talvez eu queira criar trabalhos futuros baseados em meu projeto de código fechado - por exemplo, desejo poder usar meu próprio trabalho em uma consultoria privada de código fechado.
Eu acho que a GPL seria a licença mais apropriada para a primeira parte. Minha pergunta é: qual licença cobriria a segunda parte? E posso licenciar essa licença com a GPL?
fonte
Para o código aberto de código aberto para uso de outras pessoas, você está certo de que a GPL garantirá que as pessoas não possam criar derivativos de código fechado. A GPL os forçará a compartilhar seus derivativos sob a mesma licença GPL.
Lembre-se de que a GPL pode adiar outras pessoas usando seu código. Se eles fizerem uso do seu código GPL em seu projeto (por exemplo, vincular à sua biblioteca), a GPL os forçará a abrir todo o projeto de código-fonte também quando eles o distribuírem - é por isso que a GPL é conhecida como licença viral . A LGPL pode tornar seu código mais útil para outras pessoas, enquanto ainda protege seu trabalho.
Para o seu trabalho de código fechado, não há nada errado em também licenciar seu código (código que você escreveu pessoalmente e possui os direitos autorais) com uma licença privada (por exemplo, como parte de um contrato de consultoria). No entanto, você não tem o direito de fazer isso com o código de outra pessoa (por exemplo, um colaborador), a menos que tenha um contrato separado com ela.
fonte