Libre Software

Este artigo foi escrito em 08 de agosto de 2018​​, mas somente agora me pareceu que valia a pena publicar…

Em 2012 eu vaticinei o fim do movimento software livre: a geração Ubuntu havia dominado praticamente todos os espaços. Nesses 6 anos o cenário piorou, e muito. Finalmente, todos os objetivos da OSI se concretizaram, ou seja, Open Source sobrepujou o Free Software como termo de uso regular para definir programas de computador com código livre, a fagocitose das comunidades e seus expoentes pelo mercado e suas empresas, a lógica do desenvolvimento colaborativo para reduzir custos, a remoção do ranço filosófico do movimento e o enfraquecimento contundente dos poucos defensores remanescentes da velha escola filosófica do GNU.

Numa tentativa de reação um pequeno grupo de pessoas fez um contraponto contundente mostrando que Open Source e Software Livre não são a mesma coisa. A metodologia era clara: denunciar os falsos ativistas que propagam a filosofia Open Source dizendo se tratar de Software Livre – os OSIstas – ao mesmo tempo que explicava incansavelmente quais as diferenças entre os movimentos. Nasceu o #ultraGNU

Depois de uma longa conversa com os mais renomados ativistas do Movimento Software Livre ficou claro que eles não compartilham dessa metodologia. Segundo seu ponto de vista denunciar nominalmente os OSIstas é muito agressivo. Inclusive o próprio termo OSIsta é considerado agressivo. Portanto nenhum apoio, suporte ou colaboração.

Não há qualquer dúvida que o Open Source venceu, e essa é a prova de que a metodologia seguida e defendida pelas FSF e seus ativistas mais empenhados simplesmente se tornou ineficiente. Hoje, com seu discurso amigável e sua aproximação dos defensores do Open Source eles estão ajudando a cavar a própria cova.

Considerar o Open Source como uma evolução natural do Software Livre é uma aberração filosófica, mas se mostrou algo concreto e factual pela competência dos primeiros e pela incompetência dos segundos em conquistar corações e mentes. A lógica do mercado prevaleceu e não será o “bom mocismo” que conseguirá reverter o quadro.

Tendo o extermínio da filosofia do Software Livre como algo eminente e sem poder contar com o apoio da ala moderada, creio que está na hora de aceitar o fim, mas não para encerrar, mas para recomeçar, reiniciar, ou por assim dizer, dar reboot.

Temos que recomeçar. Devemos adotar a filosofia original do Software Livre como base e estendê-la para dar a ênfase necessária ao quesito filosófico. Se o que define um Software Livre é o respeito as 4 liberdades, e essa definição permitiu sua cooptação por um movimento neoliberal pro mercado, então é hora de criar um adendo que torne a definição não cooptável: uma quinta cláusula.

Nasceria assim o Libre Software.

Sua definição estaria composta pelas 4 Liberdades do Software Livre mais a não aceitação, sob nenhuma circunstância, de Softwares não livres como parte integrante, dependente ou distribuível.

No campo filosófico o Movimento Libre Software condena o Open Source pela sua complacência com os softwares não livres e com o mercado, em detrimento do usuário final. Condena de forma mais veemente os falsos ativistas que induzem as pessoas a confundirem Open Source com outros conceitos. E condena a metodologia amistosa com a qual os ativistas do Software Livre tratam seus algozes.

Ainda há esperança de agrupar pessoas dispostas a reagir de forma eficiente pela filosofia libertária da tecnologia democrática, acessível, compartilhável e redistribuível, sem permitir a cooptação pelos interesses econômicos, de mercado e do capital.

O Libre Software pode seguir de onde o Software Livre parou, virar o jogo e fazer do Mundo um lugar melhor.

Zimbra Letsencrypt Multidomínios Howto

Faz tempo que mantenho um ambiente de hospedagem de e-mails para pequenos clientes. Eles são muito especiais porque se preocupam de verdade com a privacidade, sem abrir mão de ter todos os recursos e comodidades dos grades provedores.

Na KyaHosting.com garantimos isso.

Mas em tempos de muito cuidado e proteção, ter conexões encriptadas reconhecidas pelos navegadores é muito importante. A iniciativa da EFF, Let’sEncrypt permite ter certificados atenticados e reconhecidos por quase todos os navegadores, gratuitamente.

Este tutorial se aplica às instalações que tem Proxy instalado e somente a elas. Isso porque o modo que vamos usar altera, exatamente, o Nginx que é usado pelo Zimbra como Proxy Reverso.

Meus requisitos são:

  1. Não ter que reiniciar o Zimbra a cada atualização
  2. Ser multidomínio, pois hospedo muitos domínios

Pré requisitos

  1. Seu Zimbra tem que ter instalado o Proxy
  2. O certbot tem que estar instalado

Metodologia

Nós vamos usar o método chamado “challenge ACME”. Nesse método o “certbot” escreve uma sequência única em um diretório específico que está acessível pela web. Para isso temos que criar o diretório e configurar o Nginx para responder corretamente a URL esperada pelos servidores da Let’sEncrypt.

Então mãos à obra!

Criando o diretório

Abaixo so comandos que usei. É claro que você poderá usar outro diretório, mas cuidado para acertar isso em todas as etapas.


mkdir /opt/zimbra/data/nginx/letsencrypt
chown zimbra: /opt/zimbra/data/nginx/letsencrypt

Alterando o template do Nginx

O que esta alteração vai fazer é criar entradas válidas no Nginx para todos os domínios configurados em seu Zimbra.

1 – Edite o arquivo /opt/zimbra/conf/nginx/templates/nginx.conf.web.http.template

2 – Adicione a linha a baixo antes da última } , assim:

     location ^~ /.well-known/acme-challenge { root /opt/zimbra/data/nginx/letsencrypt; }

}

Reiniciando o proxy para fazer as configurações:

su zimbra -c"/opt/zimbra/bin/zmproxyctl restart"

Testando

O Let’s Encrypt tem limitações de acesso, então o que fazemos é indicar um e-mail diferente por domínio para ser registrado.

Para saber se as configurações estão corretas, é hora de fazer um teste “–dry-run” com o certbot, assim:

certbot certonly -d webmail.dominio1.com --email letsencrypt@dominio1.com --agree-tos --webroot --webroot-path /opt/zimbra/data/nginx/letsencrypt/ --dry-run

Você pode esperar uma saída como esta:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for webmail.dominio1.com
Using the webroot path /opt/zimbra/data/nginx/letsencrypt for all unmatched domains.
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
- The dry run was successful.
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.

Sucesso!!!!

Gerando o certificado real

Basta executar o mesmo comando acima sem o “–dry-run”

certbot certonly -d webmail.dominio1.com --email letsencrypt@dominio1.com --agree-tos --webroot --webroot-path /opt/zimbra/data/nginx/letsencrypt/

O certificado estará salvo em /etc/letsencrypt/live/webmail.seudominio1.com

Assinando o certificado para poder usá-lo

O certificado gerado pelo Let’s Encrypt precisa ser assinado pela autoridade certificadora (CA) da sua instalação do Zimbra, ou vai dar erro. Em seguida o certificado e a chave precisam ser unidas.

Na sequência abaixo vamos juntar as partes e testar

a) Visando facilitar as linhas de comando, vamos começar entrando no diretório onde o Let’s Encrypt salvou seu certificado. Em nosso caso:

cd /etc/letsencrypt/live/webmail.seudominio1.com

b) Crie um arquivo chamado “chain.pem” com o conteúdo abaixo:

-----BEGIN CERTIFICATE-----
MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
-----END CERTIFICATE-----

c) Teste para saber se o certificado está correto, executando o comando abaixo:

/opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem

d) Junte os arquivos para assinar o certificado, assim:

>cert.bundle ; cat cert.pem chain.pem >> cert.bundle

e) Remova o certificado anterior se ele existir, assim:

rm -f /opt/zimbra/conf/domaincerts/dominio1.crt

f) Salve o novo certificado, assim:

/opt/zimbra/libexec/zmdomaincertmgr savecrt dominio1.com cert.bundle privkey.pem

g) Instale o certificado, assim:

/opt/zimbra/libexec/zmdomaincertmgr deploycrts

Reiniciando o Zimbra

A parte mais legal deste novo método é que não é preciso parar e reiniciar o Zimbra. Basta fazer um “reload”, que é instantâneo!

su zimbra -c"/opt/zimbra/bin/zmproxyctl reload"

Script!

Script para automatizar isso. Ele recebe o domínio como argumento e eu chamei ele de zm_ssl.sh

#! /bin/bash

if [ "$1" = "" ] ; then
echo "Faltou o domínio!"
exit
fi

oldIFS=$IFS
domain=$1

echo ""
echo "--------------------------------------------------------------------"
echo $domain
echo " "
echo "`date` - Começando o domínio $domain" >> /tmp/ssl_letsencrypt.log

# Gera o certificado
certbot certonly -d $domain --email letsencrypt@$domain --agree-tos --webroot --webroot-path /opt/zimbra/data/nginx/letsencrypt/

# Registrar se deu erro e abortar esse procedimento
if [ "$?" != "0" ] ; then
echo "Deu erro ao gerar o certificado para o domínio $domain"
echo "`date` - ERROR Letsencrypt - $domain" >> /tmp/ssl_letsencrypt.log
exit 1
fi

# Entrar no dir certo, que é o primeiro dominio
cd /etc/letsencrypt/live/$domain

echo "-----BEGIN CERTIFICATE-----
MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
-----END CERTIFICATE-----" >> chain.pem

echo "Processando domínio $domain"

# testando o certificado
/opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem
if [ "$?" != "0" ] ; then
echo "Erro ao testar certificado!"
echo "`date` - Erro para salvar o certificado!" >> /tmp/zm_ssl-error.log
echo "`date` - /opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem" >> /tmp/zm_ssl-error.log
exit 1
fi

# Adicionando o certificado
>cert.bundle
cat cert.pem chain.pem >> cert.bundle
rm -f /opt/zimbra/conf/domaincerts/${domain}.crt /opt/zimbra/conf/domaincerts/${domain}.key
/opt/zimbra/libexec/zmdomaincertmgr savecrt $domain cert.bundle privkey.pem
if [ "$?" != "0" ] ; then
echo "Erro para salvar o certificado!"
echo "`date` - Erro para salvar o certificado!" >> /tmp/zm_ssl-error.log
echo "`date` - /opt/zimbra/libexec/zmdomaincertmgr savecrt $domain cert.bundle privkey.pem" >> /tmp/zm_ssl-error.log
exit 1
fi

# Instalando o certificado
/opt/zimbra/libexec/zmdomaincertmgr deploycrts
if [ "$?" != "0" ] ; then
echo "Erro ao adicionar o certificado!"
echo "`date` - Erro ao adicionar o certificado!" >> /tmp/zm_ssl-error.log
echo "`date` - /opt/zimbra/libexec/zmdomaincertmgr savecrt $domain cert.bundle privkey.pem" >> /tmp/zm_ssl-error.log
exit 1
fi

echo "`date` - Certificado instalado para $domain"
echo "`date` - Certificado instalado para $domain" >> /tmp/zm_ssl-error.log

#echo "Reiniciando o Nginx do Zimbra..."
su zimbra -c"/opt/zimbra/bin/zmproxyctl reload"
Atualizando os certificados

Agora que seu Zimbra não precisa ser parado para criar ou renovar certificados, pode-se rodar o comando “renew” som maiores problemas.

É claro que quando o certificado for renovado, será necessário repetir os procedimentos acima.

Para renovar os certificados execute:

certbot renew

E depois refaça a parte do script que assina, verifica, salva e instala o novo certificado.

Script para isso? em breve…. aqui mesmo…

Do OSIsmo ao OSIsta

OSIsmo é a prática da filosofia Open Source. Ela é institucionalizada pela OSI e tem o objetivo de exterminar o Software Livre para substituí-lo pelo Open Source.

O OSIsta é um ser triste e magoado. Invariavelmente é um ex-ativista do Software Livre que não acredita mais na causa. Ele vive um o conflito filosófico constante de querer ser um ativista do Software Livre sem acreditar mais naquilo que isso representa. Assim ele se esforça muito para moldar ou distorcer a filosofia da liberdade do software para se encaixar em suas novas convicções.

Seu passado de ativismo no Movimento Software Livre lhe dá conhecimento de causa, ou seja, ele conhece com precisão a filosofia e todos seus aspectos técnicos, legais e ideológicos.

Lentamente ele cede ao argumento de que é mais importante massificar o uso de Software Livre do que se manter alinhado à filosofia. Assim ele aceita a inserção de software não livre no kernel e nas distribuições GNU. O mesmo argumento é usado para justificar a mudança no nome do sistema operacional: Linux é mais fácil e bonito do que GNU, portanto mais gente vai aderir.

É claro que é um processo de desapego moral. Até pouco tempo ele era um intransigente defensor das liberdades do usuário e qualquer ameaça seria combatida frontalmente com vigor. Ao aceitar o argumento do OSIsmo há uma ruptura interna que se justifica pelo bem maior, ou seja, cede-se um pouco na rigidez da filosofia para poder colocar em prática uma ação que trará muitos benefícios futuros à causa. É o tal “mal necessário”.

Gradativamente o apego às diretrizes filosóficas do Movimento Software Livre vai enfraquecendo. Quando as grandes empresas começam a usar massivamente software Open Source, então ele passa a ter certeza de que o argumento original estava correto. Trata-se da materialização do custo moral de ter aceito um pouco de software não livre em benefício do movimento e da disseminação do Software Livre.

O erro de avaliação é que o objetivo primário do Software Livre nunca foi tornar-se massivo, atender as empresas, gerar negócios ou ser um modelo de produtividade. Seu objetivo é conscientizar as pessoas sobre a importância da sua liberdade tecnológica. Qualquer outra conquista será consequência direta dessa consciência adquirida.

O OSIsta sabe perfeitamente de tudo isso, mas ele cedeu. Agora está convencido de que esse um caminho sem volta. O mercado atendido pelo OSIsmo é a nova ordem: é evidente que se as gigantes da tecnologia adotam e usam Open Source então isso tem que estar certo. O Open Source é a evolução natural do Software Livre. Mais usuários, mais negócios, mais investimentos… isso só pode estar certo!

Como ativista ele não deixa de agir, só que agora sob uma nova ótica: como organizador do FLISOL e/ou SFD ele não tem mais nenhum pudor em instalar distribuições não livres; ele redige artigos mostrando as vantagens do uso de Linux pelas empresas ao ponto de comemorar a campanha “Microsoft ama o Linux”; ele defende a liberdade do Linus em embutir software não livre no kernel; ele convoca todos a usarem as redes sociais não livres para poder atingir a maior quantidade possível de gente; ele usa o Android como exemplo de sucesso da massificação do uso de software livre; ele passa a ter mais apreço pelo lado técnico do software; ele passa a valorizar mais o desenvolvimento do software do que todas as demais colaborações, assim vale mais codificar do que traduzir, documentar, distribuir, organizar eventos e divulgar. Trata-se de um autêntico ativismo Open Source.

Cada vez mais convencido de que tem razão, as palestras e textos do Stallman começam a fazer menos sentido. RMS soa deselegante, rude e radical. “Será que o Stallman não percebe que esse discurso está superado? Será que ele não consegue ver o sucesso que estamos alcançando? Só tivemos que ceder um pouco para conquistar tanto!” pensa ele.

E quanto menos Stallman reconhece esses avanços, e quanto mais lhe é mostrado que esses avanços não são benéficos para o Movimento Software Livre, mais frustrado o OSIsta fica. “Como assim meu esforço para ceder só um pouco, em benefício do bem maior, não é reconhecido e entendido como sendo positivo para o Software Livre? Eu fui tão cuidadoso, que apesar das diferenças filosóficas, continuei chamando tudo de Software Livre, exatamente para beneficiar o movimento.”

As criticas ao seu novo posicionamento surgem naturalmente daqueles ativistas que se mantém alinhados com a filosofia do Software Livre. Sua frustração não lhe permite reconhecer que está errado e sua resposta é agressiva e virulenta. Sempre na defensiva, o ataque “ad hominem” é sua estratégia mais comum. “radicais, velhos, comunistas, destruidores de comunidade!, impositores, ditadores” costumam ser seus argumentos mais comuns para tentar desqualificar seus opositores. A tentativa é continuar justificando o uso de software não livre como sendo algo bom para o Movimento Software Livre.

Ao travestir seu posicionamento na filosofia do OSIsmo sob o nome da filosofia Software Livre e reagindo de forma violenta a quem lhe faz antagonismo, o OSista de revela em todo seu esplendor: é um fascista.

O mais incrível de tudo é perceber que a maioria dos OSIstas não se identificam como tal. Eles realmente acreditam que ainda são defensores do Software Livre. Continuam enganando as pessoas e fazem questão de não ceder jamais.

É claro que há aqueles que defendem legitimamente o OSIsmo. Esses são apenas ativistas da morte do Software Livre, são facilmente identificáveis e serão confrontados diretamente pelo Movimento Software Livre. Esses não são OSistas, são inocentes úteis a serviço do Deus mercado.

O OSIsta é um ex-militante do Software Livre, convertido à filosofia Open Source, que insiste em dizer que é tudo a mesma coisa para enganar as pessoas e reage de forma extremamente agressiva quando confrontado.

Hora de se olhar no espelho?

Saudações Livres!

O que é OSIsmo?

Osismo é a filosofia cujo objetivo é substituir o termo “Software Livre” pelo termo “Open Source”. Para levar a cabo essa missão foi criada em 1998 a OSI – Open Source Iniciative por Eric Raymond e Bruce Perens. Aderiram, imediatamente, Jon Maddog Hall e Linus Torvalds.

Eric Raymon deixa isso claríssimo em sua carta Goodbye, “free software”; hello, “open source”. Não deixe de ler.

Software Livre era libertário demais, radical demais, revolucionário demais. Tanto que espantava as empresas e seus negócios. Era necessário flexibilizar, amansar, adoçar, relaxar a filosofia.

Perceba que o enfoque é filosófico e jurídico, não técnico. Uma nova organização, com 10 novos princípios, norteiam uma nova filosofia de acesso ao código fonte. Ao mesmo tempo novas licenças de uso são elaboradas para lastrear juridicamente o novo pensamento: são as licenças permissivas, cuja principal característica é permitir que o código seja fechado, ou seja, sem mecanismos que perpetuem a liberdade do software.

Hoje, o pensamento do OSIsmo é quase unanimidade entre os técnicos que trabalham diretamente com tecnologias livres. “Open” é o novo livre e código aberto substitui, quase sempre, o termo Software Livre. O argumento mais comum para isso é que são a mesma coisa, que é tudo igual. Nada poderia ser mais equivocado.

É fundamental entender que o OSIsmo promoveu essa confusão de propósito: primeiro se associando ao ativismo Software Livre, depois criando novos nomes para as mesmas coisas, depois ampliando os conceitos e as licenças e finalmente recebendo o apoio necessário do mercado pelos seus esforços. É assim que o sistema operacional GNU, rebatizado por Stallman de GNU/Linux depois da contribuição de Linus, hoje se chama apenas Linux.

O Movimento Software Livre é um movimento social e político que defende a liberdade do usuário de software através do acesso e da garantia de acesso ao código fonte. Mas ao mesmo tempo, é o próprio software, o código e tem vinculado a ele uma licença de uso. O OSIsmo foi perfeito ao se aproximar tanto desses conceitos que ficou quase impossível distinguí-los.

Separar o joio do trigo não é tarefa simples, mas vamos tentar. O primeiro passo é separar o Software Livre em suas três camadas: técnica, legal e filosófica.

Nível técnico: esse é o software em si. O resultado da codificação, que geralmente é feita de forma colaborativa e compartilhada graças ao acesso ao código.

Nível legal: aqui ficam as licenças de uso. As chamadas Copyleft ou GNU que tem cláusulas de perpetuação (obrigatoriedade) da liberdade do software. As permissivas ou OSI que permitem que o código seja fechado.

Nível filosófico: enquanto o enfoque do Software Livre é fortalecer o usuário através das liberdades do software, tonando-o independente do fornecedor, o Open Source foca na qualidade do desenvolvimento colaborativo como meio de produção otimizada para atender as empresas e o mercado.

Os dois primeiros níveis atendem, perfeitamente, o Software Livre e o Open Source. No nível técnico não restam dúvidas, afinal de contas, código é código. No nível legal, com raríssimas exeções, a compatibilidade é plena.

Considerando apenas esses dois critério é correto afirmar que Software Livre e Open Source são a mesma coisa, que são iguais. E esse é o principal argumento utilizado pelo OSIsmo para gerar a confusão que leva a situação atual. É através da simplicidade técnica e legal que eles conseguiram convencer a maior parte das pessoas de que é tudo a mesma coisa.

E já que é tudo igual, então basta chamar de código aberto e Linux. É mais fácil.

A grande diferença está no terceiro nível. É nele onde reside o antagonismo que causa toda fricção entre os ativistas e essa discussão sem fim: as filosofias são absolutamente excludentes.

O Movimento Software Livre tem o objetivo de fortalecer o usuário e a OSI tem o objetivo de fortalecer as empresas. E como numa gangorra, quando um sobe o outro, inevitavelmente desce. Não há como fortalecer os dois lados dessa moeda, porque seus interesses são antagônicos. Enquanto as empresas querem controlar e escravizar digitalmente seus usuários, estes buscam independência e liberdade.

Acrescente a esse cenário a massiva popularidade dos sistemas na nuvem, onde o software não é distribuido para os clientes, sendo usado para prestar o serviço on-line, o famoso SaaS. Nesse cenário as empresas ficam ainda mais à vontade para usar softwares livres ou de código aberto, modificando-o para suas necessidades sem ter que redistribuir essas mudanças para seus usuários.

O fortalecimento do termo Open Source, a popularização das licenças permissivas, a remoção do GNU do nome do sistema operacional e a marginalização da filosofia do Software Livre, foram o resultado de uma ação lenta, metódica e coordenada. No há qualquer ingenuidade ou boa fé nesse processo, foi algo pensado por Eric Raymond e, levado a cabo, pelos simpatizantes dessa filosofia.

Se sua percepção de um mundo melhor passa pelo fortalecimento das empresas e do mercado, então o OSI foi feito para você. Se, por outro lado, sua percepção for pelo fortalecimento da liberdade do usuário, então mantenha-se alinhado com a filosofia do Software Livre.

Não há nada de errado em escolher um lado e se manter nele. Feio mesmo é saber que existem dois lados, estar convencido de que o Open Source é o caminho correto e enganar as pessoas dizendo que é tudo a mesma coisa.

Saudações Livres!