Escolha sua licença
Se o seu código foi código fechado até agora, a primeira coisa que você deve fazer é decidir em qual licença de código aberto ( GPL < = 2, GPL 3 , LGPL , BSD , Eclipse etc.) que você quer para usar.
Há prós e contras para cada um deles, então leia as restrições que eles colocam no código e decida quem você quer poder usá-lo. Atenção , o que você escolher, alguém irá reclamar - este é território de guerra santa e além do escopo desta questão.
- Um excelente recurso para determinar qual licença é a licença certa para você é o diferenciador de licenças muito abrangente e interativo , de Oxford Universities OSS Assista .
Sanitize seu repositório
Se o código em seu repositório não tiver sua licença escolhida aplicada a ele, eu passaria por todo o histórico de revisão até agora e aplicaria retroativamente (isso pode exigir uma nova base em cada ponto em que uma nova fonte arquivo é introduzido). Isso, no entanto, produzirá um belo repositório limpo que, quando você o liberar para o público, não possui revisões onde a licença escolhida não esteja em vigor.
Outra opção é iniciar seu repositório público no ponto de sua primeira versão, com um mínimo ou nenhum histórico até esse ponto.
Isso tem a desvantagem de que as pessoas não podem voltar pela sua história e descobrir como você chegou onde você está hoje, mas tem vantagem que as pessoas Não posso voltar pela sua história e descobrir como você chegou onde está hoje. * 8 ')
Quando a empresa para a qual trabalho faz o software que eu trabalho em código aberto, começamos produzindo apenas instantâneos do diretório de trabalho em pontos de liberação. Quando nos mudamos para usar repositórios públicos do github, iniciamos cada git
repo no ponto em que um plug-in era (ou um conjunto de plug-ins era) movido para fora de svn
, raramente incluindo qualquer histórico.
Considere uma licença dupla
Se você acha que pode haver interesse comercial em usar seu software, mas tem uma preferência ideológica por uma licença restritiva de reutilização, como a GPL 3, considere oferecer licenciamento duplo. Oferecendo licenças GPL 3 para download público, e licenças comerciais por uma taxa lhe dão o melhor dos dois mundos.
Fazer isso desde o início provavelmente causará menos atrito do que começar a oferecer licenças comerciais mais tarde. Se a sua comunidade se tornar popular, as pessoas podem acusá-lo de vender se você não estivesse certo sobre a possibilidade de exploração comercial mais tarde.
Considere um contrato de colaboração
Se você planeja fazer uma dupla licença, ou simplesmente deseja manter sua base de código, você precisará reimplantar as correções feitas por você mesmo ou fazer com que os colaboradores atribuam direitos sobre suas contribuições para você. Caso contrário, você descobrirá que suas contribuições impedem que você libere sua base de código sob outras licenças.
A resposta de Mason Wheeler para a pergunta O licenciamento de código aberto que meu código me limita mais tarde? fornece algumas boas informações sobre isso e como o projeto libsdl costumava lidar com esse problema.
Entretanto, esteja ciente de que, assim como a sua escolha de licença pode restringir as pessoas e organizações que usarão e contribuirão para o seu projeto, a sua escolha dependerá de um contrato de contribuinte. Algumas pessoas não ficarão felizes em contribuir para um projeto que exige que eles assinem um contrato de contribuição.
Contratos de Colaborador de Licença Dupla
O Contrato de colaboração da Oracle (links difíceis de ver nessa página) é uma boa modelo para um contrato de colaborador. Ele também é licenciado (CC) de uma maneira que você pode modificá-lo e reutilizá-lo.