Categorias de softwares livres e nĂŁo livres

Veja tambĂŠm Palavras confusas que vocĂŞ poderia evitar.

[Categorias de softwares]

Este diagrama, criado por Chao-Kuei e atualizado por muitos outros desde então, explica as diferentes categorias de software. Estå disponível nos formatos SVG e XFig, sob os termos de qualquer das seguintes licenças: GNU GPL (v2 ou posterior), GNU FDL (v1.2 ou posterior) ou Creative Commons Atribuição-CompartilhaIgual (v2.0 ou posterior).

Software livre

Software livre é software que vem com permissão para qualquer um copiar, usar e distribuir, com ou sem modificações, gratuitamente ou por um preço. Em particular, isso significa que o código-fonte deve estar disponível. “Se não é fonte, não é software”. Esta é uma descrição simplificada; veja também a definição completa.

Se um programa ĂŠ livre, ele pode potencialmente ser incluĂ­do em um sistema operacional livre, como o GNU, ou versĂľes livres como o sistema GNU/Linux.

Existem muitas diferentes maneiras de se fazer um programa livre — muitos detalhes que poderiam ser resolvidos em mais de uma maneira, e que ainda tornariam o programa livre. Algumas das possíveis variações são descritas abaixo. Para informações sobre licenças de software livre específicas, veja a página de lista de licenças.

Software livre é uma questão de liberdade, não preço. Mas empresas de software privativo geralmente usam o termo “free software” para referir-se ao preço. Algumas vezes eles querem dizer que você pode obter uma cópia binária sem nenhum custo; algumas vezes querem dizer que uma cópia está incluída no computador que você está comprando. Em ambos casos, isso não tem nada a ver com o que nós queremos dizer com software livre no projeto GNU.

Devido a essa potencial confusão, quando uma empresa de software disser que seu produto é “free software”, sempre verifique os termos de distribuição para ver se os usuários realmente possuem todas as liberdades que o software livre implica. Às vezes o software é mesmo livre; às vezes, não é.

Muitos idiomas possuem duas palavras diferentes para “free” (“livre”, em inglês) como em liberdade (“freedom”) e “free” como em preço zero (“gratis”). Por exemplo, o francês tem “libre” e “gratuit”. No inglês, há uma palavra “gratis” que se refere sem ambiguidade ao preço, mas não existe um adjetivo comum que se refira sem ambiguidade à liberdade. Então, se você está falando em um outro idioma, nós sugerimos que você traduza “free” para seu idioma para ficar mais claro. Veja a nossa lista de traduções do termo “free software” para várias outros idiomas.

Software livre ĂŠ frequentemente mais confiĂĄvel do que softwares nĂŁo livres.

CĂłdigo aberto (open source)

O termo software de “código aberto” é usado por algumas pessoas para dizer mais ou menos a mesma coisa que software livre. Isso não é exatamente a mesma classe de software: eles aceitam algumas licenças que nós consideramos restritivas demais, e há licenças de software livre que eles não aceitaram. Porém, as diferenças na extensão da categoria são pequenas: sabemos de apenas alguns casos em que código-fonte que é código aberto não é livre. Em princípio, pode acontecer de alguns programas livres serem rejeitados como código aberto, mas não sabemos se isso já aconteceu.

NĂłs preferimos o termo “software livre”, porque ele se refere Ă  liberdade — algo que o termo “cĂłdigo aberto” nĂŁo faz.

Software de domĂ­nio pĂşblico

Software de domĂ­nio pĂşblico ĂŠ software nĂŁo sujeito a copyright. Se o cĂłdigo fonte estiver no domĂ­nio pĂşblico, este ĂŠ um caso especial de software livre sem copyleft, o que significa que algumas cĂłpias ou versĂľes modificadas podem nĂŁo ser livres.

Em alguns casos, um programa executåvel pode estar no domínio público, mas o código-fonte não estar disponível. Isso não Ê software livre, porque software livre requer acessibilidade ao código-fonte. Enquanto isso, a maioria dos softwares livres não estå no domínio público; possui copyright, e os detentores deste copyright autorizaram legalmente permissão para que todo mundo o use livremente, usando uma licença de software livre.

Algumas vezes pessoas usam o termo “domínio público” de uma forma imprecisa para dizer “livre” ou “disponível gratuitamente”. No entanto, “domínio público” é um termo legal e significa, precisamente, “sem copyright”. Para maior clareza, recomendamos usar o termo “domínio público” para este significado apenas, e usar outros termos para transmitir os outros significados.

Sob a Convenção de Berna, da qual a maioria dos países são signatårios, qualquer coisa escrita Ê automaticamente colocada sob copyright. Isso inclui programas. Portanto, se você deseja que um programa que você escreveu esteja no domínio público, você deve tomar algumas medidas legais para renunciar o copyright sobre ele; do contrårio, o programa estarå protegido sob copyright.

Software com copyleft

Software com copyleft Ê um software livre cujos termos de distribuição asseguram que todas as cópias de todas as versþes carreguem mais ou menos os mesmos termos de distribuição. Isso significa, por exemplo, que as licenças copyleft geralmente proíbem que outros adicionem requisitos ao software (apesar de que um conjunto limitado de requisitos seguros adicionados pode ser permitido) e exigem tornar código-fonte disponível. Isto blinda o programa, e suas versþes modificadas, de algumas das formas comuns de tornar um programa privativo.

Algumas licenças copyleft, tal como a GPL versĂŁo 3, bloqueiam outros meios de tornar em software em privativo, tal como tivoização.

No projeto GNU, nós distribuímos sob copyleft praticamente todo software que escrevemos, pois nosso objetivo é dar a todo usuário as liberdades que o termo “software livre” implica. Veja o nosso artigo sobre copyleft para maior explicação sobre como o copyleft funciona e por que o usamos.

Copyleft é um conceito geral; para realmente proteger um programa com copyleft, você precisa usar um conjunto específico de termos de distribuição. Existem muitas maneiras possíveis de se escrever esses termos de distribuição, então em princípio podem haver muitas licenças de software livre do tipo copyleft. No entanto, na prática quase todo software com copyleft usa a Licença Pública Geral GNU. Duas licenças diferentes do tipo copyleft normalmente são “incompatíveis”, o que significa que é ilegal a união de código usando uma das licenças a um código usando a outra licença; portanto, é bom para a comunidade que as pessoas usem uma única licença copyleft.

Software livre sem copyleft

Software livre sem copyleft vem do autor com permissão para redistribuir e modificar, e tambÊm para incluir restriçþes adicionais a ele.

Se um programa Ê livre mas não distribuído sob copyleft, algumas cópias ou versþes modificadas podem não ser software livre. Uma empresa de software pode compilar o programa, com ou sem modificaçþes, e distribuir o arquivo executåvel na forma de um produto privativo.

O X Window System ilustra isso. O X Consortium lançou o X11 com termos de distribuição que o torna software livre sem copyleft, e desenvolvedores subsequentes em sua boa parte seguiram a mesma pråtica. Uma cópia que tem esses termos de distribuição Ê software livre. No entanto, tambÊm existem versþes não livres, e existem (ou pelo menos existiram) estaçþes de trabalho e placas gråficas populares para as quais as versþes não livres são as únicas que funcionam. Se você estiver usando este hardware, o X11 não Ê livre para você. Os desenvolvedores do X11 o tornaram não livre por um tempo; eles foram capazes de fazer isso, porque outros contribuíram seus códigos sob a mesma licença sem copyleft.

Software com licença permissiva e leniente

Licenças permissivas e lenientes incluem a licença X11 e as duas licenças BSD. Essas licenças permitem quase qualquer uso do código, incluindo distribuição de binårios privativos com ou sem alteração do código-fonte.

Software coberto pela GPL

A GNU GPL (Licença Pública Geral) Ê um conjunto específico de termos de distribuição para aplicar copyleft a um programa. O Projeto GNU a utiliza como termos de distribuição para a maior parte dos softwares GNU.

Igualar software livre a software coberto pela GPL ĂŠ, portanto, um erro.

O sistema operacional GNU

O sistema operacional GNU ĂŠ um sistema operacional no estilo Unix, porĂŠm composto inteiramente de software livre, que nĂłs, no Projeto GNU, desenvolvemos desde 1984.

Um sistema operacional no estilo Unix consiste em muitos programas. O sistema GNU inclui todos os pacotes oficiais do GNU. Ele tambĂŠm inclui muitos outros pacotes, como o X Window System e TeX, que nĂŁo sĂŁo softwares GNU.

A primeira versão de teste do sistema GNU completo foi em 1996. Isso inclui o GNU Hurd, nosso kernel, desenvolvido desde 1990. Em 2001, o sistema GNU (incluindo o GNU Hurd) começou a funcionar de maneira bastante confiåvel, mas o Hurd ainda não possuía alguns recursos importantes, então ele não era amplamente usado. Nesse meio tempo, o sistema GNU/Linux, um descendente do sistema operacional GNU que usa o Linux como kernel, em vez do GNU Hurd, se tornou um grande sucesso desde os anos 90. Como isso mostra, o sistema GNU não Ê um único conjunto eståtico de programas; usuårios e distribuidores podem selecionar pacotes diferentes de acordo com suas necessidades e desejos. O resultado ainda Ê uma variante do sistema GNU.

Como o propĂłsito do GNU ĂŠ ser livre, todo componente no sistema operacional GNU ĂŠ software livre. PorĂŠm, eles nĂŁo precisam ser todos distribuĂ­dos sob copyleft; qualquer tipo de software livre ĂŠ legalmente apropriado para inclusĂŁo se ajudar a atender requisitos tĂŠcnicos.

Programas GNU

“Programas GNU” é equivalente a softwares GNU. Um programa Foo é um programa GNU se for software GNU. Nós também dizemos que é um “pacote GNU”.

Softwares GNU

Software GNU Ê um software lançado sob os auspícios do Projeto GNU. Se um programa Ê software GNU, nós tambÊm dizemos que Ê um programa GNU ou um pacote GNU. O README ou manual de um pacote GNU deve dizer que ele Ê um; tambÊm, o Diretório de Software Livre identifica todos os pacotes GNU.

A maior parte dos softwares GNU possui copyleft, mas nem todos; contudo, todo software GNU deve ser software livre.

Alguns softwares GNU foram escritos pela equipe da Free Software Foundation, mas a maior parte dos softwares GNU vem de muitos voluntårios. (Alguns desses voluntårio são pagos por empresas ou universidades, mas eles são voluntårios para nós.) Algumas contribuiçþes possuem copyright da Free Software Foundation; outras possuem copyright dos contribuidores que as escrevem.

Softwares GNU sujeito ao copyright da FSF

Os desenvolvedores de pacotes GNU podem transferir o copyright para a FSF, ou eles podem mantĂŞ-los. A escolha ĂŠ deles.

Se eles transferiram o copyright para a FSF, o programa Ê um software GNU sujeito ao copyright da FSF, e a FSF pode impor sua licença. Se eles mantiveram o copyright, a imposição da licença Ê responsabilidade deles.

A FSF não aceita atribuiçþes de copyright de software que não Ê um pacote oficial do GNU, como uma regra.

Software nĂŁo livre

Software não livre Ê qualquer software que não Ê livre. Seu uso, redistribuição ou modificação Ê proibido, ou requer que você peça permissão, ou Ê restrito de tal forma que você não possa efetivamente fazê-lo livremente.

Software privativo

Software privativo é um outro nome para software não livre. No passado, nós subdividíamos software não livre em “software semilivre”, o qual poderia ser modificado e redistribuído não comercialmente, e “software privativo”, que não poderia. Mas nós descartamos tal distinção e agora usamos “software privativo” como sinônimo de software não livre.

A Free Software Foundation segue a regra de que nĂŁo podemos instalar qualquer programa privativo em nossos computadores, exceto temporariamente para o propĂłsito especĂ­fico de escrever um substituto livre para aquele mesmo programa. Fora isso, achamos que nĂŁo hĂĄ justificativa possĂ­vel para instalar um programa privativo.

Por exemplo, nĂłs achamos justificĂĄvel instalar Unix em nosso computador nos anos 80, porque o estĂĄvamos usando para escrever um substituto livre para Unix. Hoje em dia, que um sistema operacional livre estĂĄ disponĂ­vel, a desculpa nĂŁo ĂŠ mais aplicĂĄvel; agora usamos nenhum sistema operacional nĂŁo livre, e qualquer computador novo que instalamos precisa funcionar com um sistema operacional completamente livre.

NĂłs nĂŁo insistimos que os usuĂĄrios do GNU, ou contribuidores do GNU, tenham que viver com essa regra. Essa ĂŠ uma regra que fizemos para nĂłs mesmos. Mas esperamos que vocĂŞ decida segui-la tambĂŠm, para seu prĂłprio bem.

Freeware

O termo “freeware” não possui uma definição clara e aceita, mas é muito usada para pacotes que permitem redistribuição mas não modificação (e seu código-fonte não está disponível). Estes pacotes não são software livre, portanto não use “freeware” para referir-se a software livre.

Shareware

Shareware Ê software que vem com permissão para redistribuir cópias, mas diz que qualquer um que continue usando uma cópia Ê obrigado a pagar por uma licença.

Shareware nĂŁo ĂŠ software livre, ou mesmo semilivre. Existe duas razĂľes para isso:

Softwares privados

Software privado ou personalizado Ê um software desenvolvido para um usuårio (geralmente uma organização ou empresa). Aquele usuårio o mantÊm e o usa, e não o libera para o público como código-fonte ou como binårios.

Um programa privado ĂŠ um software livre (em algum sentido trivial) se seu Ăşnico usuĂĄrio tem as quatro liberdades. Em particular, se o usuĂĄrio tem todos os direitos ao programa privado, o programa ĂŠ livre. PorĂŠm, se o usuĂĄrio distribui cĂłpias para outros e nĂŁo fornece as quatro liberdades com aquelas cĂłpias, estas nĂŁo sĂŁo software livre.

Software livre Ê uma questão de liberdade, não de acesso. Em geral, nós não acreditamos que seja errado desenvolver um programa e não lançå-lo. Hå ocasiþes em que um programa Ê tão importante que pode-se argumentar que retê-lo do público Ê fazer errado para a humanidade. PorÊm, tais casos são raros. A maioria dos programas não são tão importantes, e recusar o lançamento deles não Ê particularmente errado. Portanto, não hå conflito entre o desenvolvimento de software privado ou personalizado e os princípios do movimento software livre.

Quase todos os empregos para programadores são em desenvolvimento de software personalizado e, portanto, a maioria dos trabalhos de programação Ê, ou poderia ser, feita em uma forma compatível com o movimento software livre.

Software comercial

“Comercial” e “privativo” não são a mesma coisa! Software comercial é software desenvolvido por uma empresa como parte de seu negócio. A maior parte dos softwares comerciais é privativa, mas existem softwares livres comerciais, e softwares não comerciais e não livres.

Por exemplo, o GNU Ada é desenvolvido por uma empresa. Ele é sempre distribuído sob os termos da GNU GPL, e toda cópia é software livre; mas seus desenvolvedores vendem contratos de suporte. Quando seus vendedores falam com clientes em potencial, algumas vezes os clientes dizem, “Nós nos sentiríamos mais seguros com um compilador comercial”. Os vendedores respondem, “GNU Ada é um compilador comercial, apenas acontece de ser um software livre”.

Para o Projeto GNU, as prioridades sĂŁo de outra ordem: o importante ĂŠ que o GNU Ada ĂŠ software livre; que ele ĂŠ comercial ĂŠ apenas um detalhe. No entanto, o desenvolvimento adicional do GNU Ada que resulta do mesmo ser comercial ĂŠ definitivamente benĂŠfico.

Por favor, ajude-nos a divulgar o fato de que software comercial livre é possível. Você pode fazer isso através de um esforço de não dizer “comercial” quando quer dizer “privativo”.