O que é software livre?
O termo software livre designa programas de computadores que possuem uma licença livre.
Software livre é geralmente gratuito também, mas a gratuidade é somente uma parte da liberdade oferecida pela licença. Licenças de software livre são fundamentalmente desenhadas para garantir liberdades ao usuário, e garantir que essas liberdades não possam ser removidas. Ali está a grande diferença com software comercial gratuito, que pode deixar de ser gratuito a qualquer momento.
A licença livre mais conhecido é provavelmente a licença GPL, mas tem várias outras como a LGPL, MIT ou BSD. Algumas são mais restritivas, outras mais permissivas, mas essas diferenças valem sobretudo para quem quer usar parte do código fonte em outro software. Para o usuário, são todas quase idênticas.
Todas essas licenças oferecem 4 liberdades fundamentais:
- A liberdade de usar o software incondicionalmente, como quiser, quando quiser. Não existem cláusulas restringindo o uso a tal ou tal categoria de usuário, ou condicionando funcionalidade específica a um pagamento, um registro do usuário, ou coisas parecidas.
- A liberdade de estudar o código fonte. O código fonte (source code, em inglês), deve ser aberto e público, o que gerou o termo "código aberto" (open-source em inglês). Vale notar que um software open-source apenas contempla este ponto, e não diz nada sobre os 3 outros. Por isso, preferimos sempre usar o termo "software livre", que é bem mais abrangente que "software open-source". É perfeitamente possível existir software open-source, mas que seja comercial e com restrições de uso. Poder estudar o código fonte pode parecer desnecessário quando se quer somente usar o software, mas isso permite garantir por exemplo que o software não colete seus dados, ou não faça outro tipo de manipulação indesejada por baixo do pano. Em outras palavras, o software é auditável.
- A liberdade de redistribuir o software. Você, legalmente, possuí o direito de distribuir o software (não diz nada sobre cobrar por isso, por tanto a gratuidade não é algo garantido pela licença. No entanto, condicionar o uso a um pagamento ia ferir o ponto 1, por tanto é extremamente raro). Isto permite que você possa instalar o software quantas vezes precisar, distribuir ele para seus clientes para que eles possam abrir seus arquivos, e, de maneira geral, melhorar e suavizar problemas de compatibilidade em vez de criá-los.
- A liberdade de modificar o software, e de publicar suas modificações. Dependendo do tipo de licença, suas modificações devem ou não adotar a mesma licença que o software original. Este ponto é muito importante para dinamizar o ecossistema em torno do software, e permitir o maior número possível de contribuições ao seu desenvolvimento. Software livre é por essência desenvolvida de forma colaborativa, por qualquer pessoa interessada em contribuir.
Diferentemente de software comercial, software livre não é desenvolvido para gerar lucro, ou com qualquer outro intuito comercial. Software livre é geralmente desenvolvido primeiramente por usuários, para seu próprio uso. Certos projetos, quando ficam maiores, passam a ter estrutura maior, receber doações, contratar programadores e organizar outras coisas para acelerar o desenvolvimento. Todos esses softwares, no entanto, são sempre abertos a contribuições de qualquer tipo, como código, doações, ou qualquer outro tipo de ajuda, como escrever documentação, traduzir, etc.
Olá, bem-vind@!