# Projeto GNU

Projeto GNU, em computação, é um projeto lançado em 27 de setembro de 1983 pelo ativista, programador e hacker Richard Stallman. Atualmente, a Free Software Foundation (FSF) é a principal organização que patrocina o projeto. Já na década de 1980, quase todo software era proprietário, o que significa que ele possuía donos que proibiam e evitavam a cooperação dos usuários. Isso tornou o Projeto GNU necessário. O objetivo do projeto era criar um sistema operacional, chamado GNU, baseado em software livre.

## Etimologia

O nome “GNU” foi escolhido porque atende a alguns requisitos; em primeiro lugar, é um acrônimo recursivo para “GNU is Not Unix”, depois, porque é uma palavra real e, finalmente, é divertido de falar (ou Cantar).
A palavra “livre” em “software livre” se refere à liberdade, não ao preço. Você pode ou não pagar para obter software do projeto GNU. De qualquer forma, uma vez que você tenha o software, você tem quatro liberdades específicas ao usá-lo: a liberdade de executar o programa como você desejar; a liberdade de copiá-lo e dá-lo a seus amigos e colegas; a liberdade de modificar o programa como você desejar, por ter acesso total ao código-fonte; a liberdade de distribuir versões melhoradas e, portanto, ajudar a construir a comunidade. (Se você redistribuir software do projeto GNU, você pode cobrar uma taxa pelo ato físico de transferir uma cópia, ou você pode simplesmente dar cópias de graça.)

## Manifesto GNU

O Manifesto GNU foi escrito por Richard Stallman e publicado em Março de 1985 no Dr. Dobb's Journal of Software Tools. O manifesto teve o objetivo de explicar e definir os objetivos do projeto GNU e convidar pessoas para participar e ajudar no desenvolvimento do GNU. Grande parte do texto explica como a filosofia do software livre funciona e porque seria uma boa escolha para a indústria tecnológica seguí-la. O texto é tido com elevada consideração pelo movimento do software livre como uma fonte de filosofia fundamental.
No Manifesto, Stallman listou quatro liberdades essenciais para os usuários de software: 1- Liberdade para usar o programa para qualquer propósito, 2 - Liberdade para estudar a mecânica do programa e modificá-la, 3 - Liberdade para redistribuir cópias e 4 - Liberdade para modificar e melhorar versões para o uso público. Para implementar essas liberdades os usuários precisam ter acesso completo ao código do programa. Para assegurar que o código se mantenha aberto e de livre acesso, Stallman criou a GNU General Public License (Licença de Uso Público Geral), que permite que o software e suas futuras gerações derivadas se mantenham livres para o uso público.

## Projetos de software GNU

Lista de alguns programas desenvolvidos pelo projeto GNU:
* Autotools - Autoconf, Automake e Libtool.
* Bash - interpretador de comandos.
* Clisp - Ferramentas de compilaçãom para lisp.
* Bazaar - Um sistema interativo de manutenção de versões de software.
* coreutils - Caixa de ferramentas básica GNU.
* Binutils - montador, linker e ferramentas relacionadas.
* Bison - gerador de parser desenhado para substituir o yacc.
* Classpath - bibliotecas para Java.
* COBOL for gcc - Projeto para produzir um compilador de Cobol.
* DotGNU - substituto livre para o Microsoft .NET.
* Ed - Um mini editor de texto.
* Emacs - editor de texto extensível e auto-documentado.
* G++ - compilador de C++
* GCC - compilador otimizado para várias linguagens de programação, particularmente linguagem C.
* GDB - depurador de aplicações.
* GFortran - Compilador Fortran
* glibc - biblioteca para linguagem C.
* GNU fcrypt - Criptografia automática e transparente.
* Gnash - Reprodutor Média Flash.
* GMP - sistema de Cálculo com precisão multiplo.
* GNAT - O sistema completo para compilação de ADA 95.
* GNU Health - Software para a saúde.
* GNU Hurd - um micronúcleo e um conjunto de servidores que funcionam do mesmo modo que o núcleo Unix.
* GNU MDK - um conjunto de ferramentas para a programação em MIX.
* GNU Octave - programa voltado para computação numérica, similar ao MATLAB
* Gnumeric - Programa de edição de folhas de cálculo.
* GNUnet - rede descentralizada de comunicações pessoais, desenhada para resistir à censura.
* GNUstep - implementação de conjunto de bibliotecas OpenStep, assim como ferramentas para programar aplicações gráficas.
* Gpaint - Programa de edição de gráficos (pintar).
* GSL - biblioteca científica para GNU
* GTK+ - Caixa de ferramentas GNU para o sistema X Window.
* Gv - Programa para ver ghostscript (pdf).
* Gzip - aplicações e bibliotecas para compressão de dados.
* LilyPond - editor de partituras musicais.
* Maxima - um sistema para cálculos algébricos.
* Texinfo - sistema de documentação, manuais em texto ASCII, e on-line.
* Zile - Um clone leve do Emacs.
O projecto GNU também ajuda com o desenvolvimento de outros pacotes, como:
* CVS - Sistema de controle de versões para código fonte.
* DDD - Ferramentas gráficas para detecção e depuração de erros.