Há uma série de modalidades de licenças de software livre, que determinam
quais são os termos de uso para cada programa. O desenvolver pode escolher entre
as diversas modalidades de licenças que já existem ou mesmo criar sua própria
licença.
De uma forma geral, um software livre é aquele que pode ser usado, copiado,
distribuído e
modificado por qualquer pessoa, mediante pagamento ou não.
Para isso, quem
desenvolve deve permitir que o usuário acesse o código fonte, que é como o
DNA do programa. As informações ali contidas possibilitam ao programador
manter as características que considera interessantes, remover as que não
interessam e fazer melhorias no software.
O que diferencia cada modalidade de licenciamento é justamente o que o
programador deve fazer depois que acessou essas informações.
Alguns tipos de licença – como o GNU GPL (General Public License)
, uma das modalidades mais utilizadas – determinam que, quando o
programador faz alguma alteração no programa ele deve revelar o código fonte
da nova versão do software.
“Para o usuário pode ser vantajoso, à medida que ele não fica preso a um
único fornecedor. Qualquer outro desenvolvedor poderá fazer correções e
adaptações necessárias ao programa, se por acaso ele tiver problemas com o
programador inicial”, defende Arnaldo Carvalho de Melo, consultor sênior da
Mandriva Conectiva.
Contudo, nem sempre é vantajoso abrir as mudanças para qualquer um. “Pode
ser um problema para uma empresa que adiciona uma característica específica
no sistema, voltada ao seu negócio, ter que revelar esse recurso aos
concorrentes”, explica Stefan Victor Wieczorek, diretor da Revera Linux
Services.
Pelo GPL, uma empresa que utiliza como base um software livre não pode
adaptar o programa e fechar o acesso ao código fonte do novo programa
desenvolvido, porém outras licenças permitem fazer isso.
É o caso da BSD (Berkley Software Distribuition) , que
permite que programas originários de softwares livres sejam distribuídos
como proprietários. O autor do software pode inclusive comercializar a nova
versão do programa, cobrando pelo uso.
A própria GPL possui uma versão que garante maior flexibilidade ao
usuário, LGPL (Lesser ou Library General Public License) .
Essa variação da licença permite ao programador manter o código do novo
programa fechado, desde que indique a referência do software original
utilizado para sua construção.
Como escolher sua licença
Para o desenvolvedor, a escolha da melhor modalidade de licença para
oferecer seu software deve levar em conta os seus objetivos de negócios.
O programador pode abrir apenas uma parte do código, por exemplo, para
receber dicas de melhorias e avançar no desenvolvimento, preservando certos
componentes estratégicos para oferecer apenas comercialmente.
“Para uma empresa que quer promover avanços no seu produto, mas não tem
recursos para investir em desenvolvimento, essa pode ser uma alternativa
bastante interessante”, afirma Wieczorek.
No site da Open Source Initiave
(http://www.opensource.org/license) , é possível encontrar dezenas
de licenças validadas pela organização. Antes de escolher seu modelo, o
desenvolvedor deve estudar atentamente os termos de cada licença já
disponível.
Se nenhum deles se aplicar à sua necessidade, no próprio site há
instruções sobre como criar e submeter uma nova licença de software livre
para validação.
Conheça alguns dos tipos mais utilizados
GPL (General Public License) – Essa modalidade de
licença garante ao usuário do software quatro liberdades: utilizar o
programa para qualquer finalidade; estudar como ele funciona e modificá-lo;
redistribuir cópias; fazer melhorias no programa e divulgar as melhorias
para o público (liberar o acesso ao código fonte).
A GPL possui um mecanismo conhecido como copyleft (o oposto de copyright,
ou direto autoral) que exige que qualquer programa desenvolvido a partir de
um software livre também deve ser licenciado em GPL, garantindo a abertura
do código fonte.
Segundo algumas pesquisas, a GPL é a licença mais usada para software
livre e, em abril de 2004, respondia por 75% dos projetos registrados no
repositório Freshmeat e 68% dos registrados no SourceForge (duas das
principais fontes de software livre no mundo).
LGPL (Library ou Lesser General Public License) – É uma
variação da GPL que, no entanto, não exige a aplicação dos termos do
copyleft. Ou seja, quem utiliza um software licenciado em LGPL não é
obrigado a revelar a código fonte da nova aplicação desenvolvida com base no
software original. O programa deve apenas conter uma referência ao código
original, permitindo que outras pessoas procurem na fonte o código que o
originou.
BSD (Berkeley Software Distribution) – Criado na
Universidade da Califórnia, Berkley, esse modelo de licença é utilizado em
muitos programas, inclusive uma versão do Unix e o próprio BSD Software, que
deu origem à licença. Tem menos restrições do que a GPL e está bastante
próxima do conceito de domínio público.
MPL (Mozilla Public License) – Considerado liberal em
termos de copyleft, esse modelo foi adotado por empresas e adaptado por
outras para criar suas próprias licenças, caso da Sun Microsystems, que a
usou como base para criar a Common Development and Distribution License para
o sistema operacional OpenSolaris.
Determina que códigos copiados ou modificados sob os termos da MPL devem
permanecer sob a MPL. No entanto, podem ser combinados em um software
proprietário. Por exemplo, Netscape 6 e 7 são versões proprietárias dos
lançamentos correspondentes da Mozilla Suite.
MIT (Massachusetts Institute of Technology) License –
Originária do Instituto de Tecnologia de Massachussetts, assegura a
permissão, sem custo, de que qualquer pessoa obtenha o software bem como seu
código fonte, sem limites de uso, cópia, modificações, junções, publicações,
distribuições e/ou venda de cópias do produto, garantindo os mesmos direitos
a quem o adquire.