A Definição de Software Livre

Escrito por

em

A Definição de Software Livre

A definição de software livre apresenta os critérios utilizados para definir
se um programa de computador em particular se qualifica como software livre
ou não. De tempos em tempos nós revisamos essa definição, para clarificá-la
ou para resolver questões mais sutis. Veja a seção
Histórico
abaixo para uma lista de mudanças que afetam a definição de
software livre.

Por “software livre” devemos entender aquele software que respeita a
liberdade e senso de comunidade dos usuários. Grosso modo, os usuários
possuem a liberdade de executar, copiar, distribuir, estudar, mudar e
melhorar o software
. Com essas liberdades, os usuários (tanto
individualmente quanto coletivamente) controlam o programa e o que ele faz
por eles.

Quando os usuários não controlam o programa, o programa controla os
usuários. O desenvolvedor controla o programa e, por meio dele, controla os
usuários. Esse programa não-livre e “proprietário” é, portanto, um
instrumento de poder injusto.

Assim sendo, “software livre” é uma questão de liberdade, não de preço. Para
entender o conceito, pense em “liberdade de expressão”, não em “cerveja
grátis”.

Um programa é software livre se os usuários possuem as quatro liberdades
essenciais:

  • A liberdade de executar o programa, para qualquer propósito (liberdade 0).
  • A liberdade de estudar como o programa funciona, e adaptá-lo às suas
    necessidades (liberdade 1). Para tanto, acesso ao código-fonte é um
    pré-requisito.
  • A liberdade de redistribuir cópias de modo que você possa ajudar ao próximo
    (liberdade 2).
  • A liberdade de distribuir cópias de suas versões modificadas a outros
    (liberdade 3). Desta forma, você pode dar a toda comunidade a chance de
    beneficiar de suas mudanças. Para tanto, acesso ao código-fonte é um
    pré-requisito.

Um programa é software livre se os usuários possuem todas essas
liberdades. Portanto, você deve ser livre para redistribuir cópias,
modificadas ou não, gratuitamente ou cobrando uma taxa pela distribuição, a
qualquer um, em qualquer lugar. Ser livre para
fazer tudo isso significa (entre outras coisas) que você não deve ter que
pedir ou pagar pela permissão para fazê-lo.

Você também deve ter a liberdade de fazer modificações e usá-las
privativamente ou em seu trabalho ou lazer, sem sequer mencionar que eles
existem. Se publicar suas modificações, você não deve ser obrigado a avisar
ninguém em particular, ou de qualquer modo em particular.

A liberdade de executar o programa significa que qualquer tipo de pessoa ou
organização é livre para usá-lo em qualquer tipo de sistema computacional,
ou para qualquer tipo de trabalho e propósito, sem que seja necessário
comunicar ao desenvolvedor ou qualquer outra entidade específica. Nessa
liberdade, é o propósito do usuário que importa, não aquele do
desenvolvedor; você, como usuário, é livre para rodar o programa
para seus propósitos e, caso você o distribua a outra pessoa, ela também
será livre para executá-lo com os propósitos dela, mas você não é intitulado
a impor seus propósitos sobre ela.

A liberdade de redistribuir cópias deve incluir formas executáveis ou
binárias do programa, bem como o código-fonte, tanto da versão modificada
quanto da inalterada. (Distribuir programas em formato executável é
necessário para sistemas operacionais livres e convenientemente
instaláveis.) Não há problemas se não for possível produzir uma forma
binária ou executável (pois algumas linguagens de programação não suportam
este recurso), mas deve ser concedida a liberdade de se redistribuir nessas
formas caso seja desenvolvido um meio de criá-las.

Para que as liberdades 1 e 3 (a liberdade de modificar e a liberdade de
publicar versões modificadas) façam sentido, você deve ter acesso ao
código-fonte do programa. Consequentemente, acesso ao código-fonte é uma
condição necessária para o software livre. Código-fonte “obscurecido” não é
código-fonte real e não conta como código-fonte.

A liberdade 1 inclui a liberdade de usar sua versão modificada em lugar da
original. Se um programa é entregue num produto projetado para rodar a
versão de outra pessoa, mas se recusa a rodar a sua — prática conhecida como
“tivoização”1, “travamento” ou ainda
(na terminologia perversa de seus praticantes) como “boot seguro” — a
liberdade 1 se torna ficção teórica ao invés de liberdade prática. Isso não
é suficiente. Em outras palavras, esses binários não são software livre
mesmo que o código-fonte a partir do qual foram compilados seja livre.

Uma maneira importante de modificar um programa é agregar a ele módulos e
sub-rotinas livres. Se a licença do programa diz que você não pode agregar a
ele um módulo com uma licença adequada — por exemplo, se ele requer que você
seja o detentor dos direitos autorais de qualquer código que adicionar —
então essa licença é muito restritiva para ser qualificada como livre.

A liberdade 3 inclui a liberdade de publicar quaisquer versões modificadas
como software livre. Uma licença livre também pode permitir outras maneiras
de liberá-las; em outras palavras, ela não tem que ser uma licença copyleft. No entanto, a licença que requer
que modificações sejam não-livres não se qualifica como uma licença livre.

Para que essas liberdades sejam reais, elas devem ser permanentes e
irrevogáveis desde que você não faça nada de errado; se o desenvolvedor do
software tiver o poder de revogar a licença, ou adicionar restrições
retroativamente a seus termos, sem que você faça nada errado para dar um
motivo, o software não é livre.

Todavia, certas regras sobre a maneira de distribuir o software são
aceitáveis, quando elas não entram em conflito com as liberdades
centrais. Por exemplo, o copyleft (apresentado de maneira muito simples) é a
regra de que, quando redistribuindo um programa, você não pode adicionar
restrições quem neguem as liberdades centrais de outras pessoas. Essa regra
não entra em conflito com as liberdade centrais; na verdade, ela as protege.

“Software livre” não significa “não comercial”. Um programa livre deve estar
disponível para uso comercial, desenvolvimento comercial e distribuição
comercial. Desenvolvimento comercial de software livre deixou de ser
incomum; tais software livre comerciais são muito importantes. Você pode ter
pago dinheiro por suas cópias de software livre, ou você pode tê-las obtido
a custo zero, mas independentemente de como você conseguiu suas cópias, você
sempre deve ter a liberdade para copiar e mudar o software, ou mesmo para vender cópias.

Se uma modificação constitui ou não um aperfeiçoamento é uma questão
subjetiva. Se o seu direito de modificar um programa é limitado,
fundamentalmente, a mudanças que outra pessoa considere um aperfeiçoamento,
o programa não é livre.

No entanto, regras sobre como empacotar uma versão modificada são
aceitáveis, se elas não limitam substantivamente sua liberdade de liberar
versões modificadas, ou sua liberdade de criar e usar modificações
privadamente. Portanto, é aceitável que uma licença requira que você mude o
nome do programa na versão modificada, remova um logo ou identifique suas
modificações como suas. Desde que esses requerimentos não sejam tão penosos
que eles efetivamente sejam um empecilho à distribuição de suas mudanças,
eles são aceitáveis; você já está fazendo outras modificações ao programa,
não terá muitos problemas em fazer algumas a mais.

Uma questão especial surge quando uma licença requer a mudança do nome pelo
qual o programa é invocado por outros programas. Isso efetivamente cria
obstáculos à publicação de uma versão modificada que possa substituir a
original quando invocada por aqueles outros programas. Esse tipo de
requerimento é aceitável apenas quando existe uma maneira de especificar um
nome substituto, de modo que o programa modificado possa ser invocado.
Regras que dizem que “se você publicar sua versão de certa maneira, terá de
publicá-la dessa outra também” podem ser também aceitáveis, na mesma
condição. Um exemplo de regra aceitável é uma que diz que se você distribuiu
uma versão modificada e um desenvolvedor anterior pedir por uma cópia, você
deve enviar uma. (Note que tal regra ainda lhe deixa a possibilidade de
distribuir ou não sua versão.) Regras que requerem a liberação do
código-fonte para os usuários para versões que você fez públicas também são
aceitáveis.

No projeto GNU, nós usamos o copyleft
para proteger legalmente essas liberdades para todos. Mas software que
não usa o copyleft
também existe. Nós acreditamos que existem razões
importantes pelas quais é melhor usar o
copyleft
, mas se o seu programa é software livre que não faz uso do
copyleft, ele ainda é basicamente ético. (Veja Categorias de Software Livre para uma
descrição de como “software livre” e “copylefted software” e outras
categorias de software se relacionam umas com as outras.)

Algumas vezes, as regulamentações de controle de
exportação
governamentais e sanções comerciais podem reprimir sua
liberdade de distribuir cópias de programas
internacionalmente. Desenvolvedores de software não têm o poder para
eliminar ou passar por cima dessas restrições, mas o que eles podem e devem
fazer é se recusar a impô-las como condições para o uso do programa. Dessa
maneira, restrições não irão afetar as atividades e pessoas fora da
jurisdição desses governos. Portanto, licenças de software livre não devem
requerer a obediência a qualquer regulamentações de exportação como uma
condição para qualquer das liberdades essenciais.

A maioria das licenças de software livre são baseadas no copyright, e
existem limites para que tipo de requerimentos podem ser impostos por meio
do copyright. Se uma licença baseada no copyright respeita a liberdade nas
maneiras descritas acima, é improvável que ela possua algum outro tipo de
problema nunca antes antecipado (embora isso ocorra ocasionalmente). No
entanto, algumas licenças de software livre baseadas em contratos e
contratos podem impor uma lista muito maior de restrições possíveis. Isso
significa que existem muitas maneiras nas quais tal licença pode ser
inaceitavelmente restritiva e não-livre.

Não não podemos listar tudo o que pode acontecer. Se uma licença baseada em
contrato restringe o usuário de uma maneira incomum que as licenças baseadas
no copyright não podem, e que não é mencionada aqui como legítima, nós
teremos que pensar sobre isso, e provavelmente iremos concluir que ela é
não-livre.

Quando falamos sobre software livre, é melhor evitar termos como “dado” ou
“de graça”, porque estes termos implicam que a questão é o preço, não a
liberdade. Alguns termos comuns como “pirataria” englobam opiniões que nós
esperamos que você não endosse. Veja Palavras e Termos Confusos que é
Melhor Evitar
para uma discussão desses termos. Nós também temos uma
lista de traduções apropriadas de
“free software”
em várias línguas.

Finalmente, note que os critérios como aqueles exprimidos nessa definição de
software livre requerem cuidadosa deliberação quanto a sua
interpretação. Para decidir se uma licença de software específica se
qualifica como uma licença de software livre, nós a julgamos baseado nesses
critérios para determinar se ela se encaixa no espírito bem como nas
palavras precisas. Se uma licença inclui impensadas, nós a rejeitamos, mesmo
que não tenhamos antecipados o problema nesses critérios. Algumas vezes,
algum requerimento de uma licença cria um problema que requer extensiva
reflexão, incluindo discussões com um advogado, antes que possamos decidir
se o requerimento é aceitável. Quando chegamos a uma conclusão sobre uma
nova questão, nós frequentemente atualizamos estes critérios para tornar
mais fácil determinar se uma certa licença se qualifica ou não.

Se você está interessado em saber se uma licença específica se qualifica
como uma licença de software livre, veja nossa lista de licenças. Se a licença na
qual você está interessado não está listada, você pode nos perguntar sobre
ela mandando um e-mail para .

Se você está considerando escrever uma nova licença, por favor,
primeiramente entre em contato pelo mesmo endereço com a Free Software
Foundation. A proliferação de diferentes licenças de software livre
significa mais trabalho para os usuários entenderem essas licenças; nós
podemos ser capazes de ajudá-lo a encontrar uma licença de software livre
existente que atenda às suas necessidades.

Se isso não for possível, e você realmente precisar de uma nova licença, com
nossa ajuda você pode ter certeza de que a licença realmente é uma licença
de software livre e evitar vários problemas práticos.

Além do Software

Manuais de software devem ser livres
pelas mesmas razões que software deve ser livre, e porque manuais são, com
efeito, parte do software.

Os mesmos argumentos também fazem sentido para outros tipos de trabalhos de
uso prático — isto é, trabalhos que englobam conhecimento útil, como obras
educativas e de referência. A Wikipédia é
o exemplo mais conhecido.

Qualquer tipo de obra pode ser livre, e a definição de software
livre pode ser estendida para a definição de obras culturais livres, aplicável a
qualquer tipo de obra.

Código Aberto?

Outro grupo começou a usar o termo “código aberto” (do inglês open
source
) com um significado parecido (mas não idêntico) ao de “software
livre”. Nós preferimos o termo “software livre” porque, uma vez que você
tenha ouvido que ele se refere à liberdade ao invés do preço, ele traz à
mente a liberdade. A palavra “aberto” nunca se refere à
liberdade
.

Histórico

De tempos em tempos, revisamos essa Definição de Software Livre. Aqui está
uma lista de mudanças, juntamente com links para mostrar exatamente o que
foi modificado.

  • Versão
    1.111
    : Esclarece 1.77 ao adicionar que apenas restrições
    retroativas são inaceitáveis. Os detentores dos direitos autorais podem
    sempre garantir permissões adicionais de uso do trabalho ao liberar
    o trabalho de outra maneira, em paralelo.
  • Versão
    1.105
    : Reflete, numa breve afirmação da liberdade 1, a ideia (já
    discutida na versão 1.80) de que ela inclui realmente o ato de usar versões
    modificadas para seus interesses.
  • Versão
    1.92
    : Esclarece que código obscurecido não qualifica como código-fonte.
  • Versão
    1.90
    : Esclarece que a liberdade 3 significa o direito de distribuir
    cópias que você modificou ou suas versões aperfeiçoadas, não o direito de
    participar no desenvolvimento do projeto de outra pessoa.
  • Versão
    1.89
    : A liberdade 3 inclui o direito de liberar versões modificadas como
    software livre.
  • Versão
    1.80
    : A liberdade 1 deve ser prática, não somente teórica, i.e., sem
    tivoização.
  • Versão
    1.77
    : Esclarece que todas as mudanças retroativas a uma licença são
    inaceitáveis, mesmo que ela não seja descrita como uma substituição total.
  • Versão
    1.74
    : Quatro esclarecimentos sobre pontos não suficientemente
    explícitos, ou expostos em alguns lugares mas não refletidos em todos os
    lugares:

    • “Melhorias” não significa que a licença pode substantivamente limitar que
      tipo de versões modificadas você pode liberar. A liberdade 3 inclui
      distribuir versões modificadas, não somente mudanças.
    • O direito de agregar módulos existentes se refere àqueles que são
      adequadamente licenciados.
    • Explicitamente expõe a conclusão do argumento sobre o controle de
      exportações.
    • Impor uma mudança de licença constitui revogar uma licença antiga.
  • Versão
    1.57
    : Adiciona a seção “Além do Software”.
  • Versão
    1.46
    : Esclarece o propósito de quem é importante na liberdade de
    executar o programa para qualquer propósito.
  • Versão
    1.41
    : Esclarece a redação sobre licenças baseadas em contratos.
  • Versão
    1.40
    : Explica que uma licença livre deve permitir que você use software
    livre disponível para criar suas modificações.
  • Versão
    1.39
    : Nota que é aceitável que uma licença requeira que você forneça o
    código-fonte para versões do software que você colocou em uso público.
  • Versão
    1.31
    : Nota que é aceitável que uma licença requeira que você se
    identifique como o autor de modificações. Outros esclarecimentos menores por
    todos texto.
  • Versão
    1.23
    : Discute problemas potenciais relacionados a licenças baseadas em
    contratos.
  • Versão
    1.16
    : Explica por que a distribuição de binários é importante.
  • Versão
    1.11
    : Nota que uma licença livre pode requerer que você mande uma cópia
    das versões que você distribui ao autor.

Existem lacunas nos números das versões mostrados acima, pois existem outras
mudanças para essa página que não afetam a definição como ela é. Essas
mudanças são em outras partes da página. Você pode inspecionar a lista
completa de mudanças da página pela interface
cvsweb
.

Nota do tradutor:

  1. “Tivoização” vem do inglês “tivoization”, prática
    utilizada pela marca de gravadores de vídeo digital TiVo que, embora
    utilizasse software livre, não permitia que usuários executassem versões
    modificadas do software em seu hardware.

Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *