Instalando aplicativos no Linux

A instalação de aplicativos no Linux é uma tarefa que pode variar para cada distribuição, pois cada uma fornece uma ferramenta para instalação e atualização de aplicativos e um formato de pacotes de software.

Os pacotes de software

Os pacotes de software foram criados pelas distribuições Linux para facilitar o processo de instalação e atualização do sistema operacional. Esses pacotes contêm software já compilado em formato binário, pronto para ser instalado e usado na distribuição.

Algumas distribuições disponibilizam todos os pacotes de software em DVDs, enquanto outras selecionam em um CD os pacotes mais usados, colocando o restante em repositórios de software na Internet.

Atualmente, os pacotes de software de Linux mais comuns são RPM, originalmente criado para a distribuição Red Hat, e DEB, criado para a distribuição Debian. Distribuições derivadas da Red Hat também utilizam o formato RPM - caso das distribuições Mandriva, Fedora e Suse. Distribuições derivadas da Debian utilizam o formato DEB, como a Ubuntu e a própria Debian.

Dependências

A principal finalidade de um pacote é ajudar a distribuição Linux a resolver problemas de dependência de software.

A dependência de software acontece quando o usuário precisa instalar um programa, mas para que ele funcione corretamente um outro programa ou biblioteca já devem estar instalados no sistema.

Além do software compilado, um pacote de software contém informações extras, como a lista de dependências de que o software necessita. Para ser executado em Linux, o navegador de internet Mozilla Firefox necessita que a biblioteca gráfica GTK esteja instalada. Neste caso, o pacote de software Firefox inclui em sua lista de dependências uma referência para o pacote libgtk2.0-0, com outras bibliotecas que são necessárias.

packages.ubuntu.com­
Clique na imagem para ampliar
©2008 HowStuffWorks

O site pacakages.ubuntu.com lista os pacotes disponíveis em seus repositórios, incluindo a lista de dependência de cada um


Ferramentas para instalação, remoção e atualização de software

Para facilitar o download de pacotes e suas dependências e a atualização e remoção dos aplicativos instalados, algumas distribuições desenvolveram ferramentas gerenciadoras de pacotes.

Estas ferramentas automatizam o processo de instalação de novos softwares, incluindo suas dependências e removendo as dependências desnecessárias. Elas também informam ao usuário quando uma nova versão dos softwares que ele já tem instalado está diponível, atualizando assim todo o sistema.

Em distribuições derivadas da Debian, como a Ubuntu, os aplicativos de linha de comando apt-get e aptitude são usados para o gerenciamento dos pacotes do sistema. Em distribuições derivadas da Red Hat, é possível encontrar as ferramentas yum, up2date e urpmi, todas de linha de comando. Há no entanto front-ends gráficos que auxiliam usuários leigos na instalação de novos aplicativos, privando-os de usar o terminal texto para isso.

Synaptic
©2008 HowStuffWorks
A ferramenta gráfica Synaptic é o front-end gráfico para o gerenciador de pacotes apt-get, usado na distribuição Ubuntu


Compilando um software manualmente

O que fazer quando você quer instalar um software que a sua distribuição não fornece nem em seus repositórios oficiais, ou que ainda não há pacotes de software em outros sites no formato que a sua distribuição suporta? A última alternativa é a compilação do código fonte.

Para compilar um código fonte é necessário que o usuário já saiba quais são as suas dependências e já tenha instalado todas elas no sistema. Também é necessário ter instaladas as bibliotecas de código e os compiladores das linguagens de programação em que o software em questão foi desenvolvido.

Esse tipo de instalação é a mais complexa e era a única forma de se instalar programas no Linux quando ainda não existiam os pacotes de software. No entanto, muitas pessoas ainda a utilizam quando querem testar versões beta de softwares que a sua distribuição ainda não lançou.

A compilação normalmente é feita com os comandos de terminal texto:

  • ./configure, que analisa o sistema e a lista de dependências que o software exige,
  • make, que compila o código fonte e
  • make install, que instala a aplicação compilada. A instalação por compilação não garante atualizações automáticas de segurança, levando o usuário a fazê-la manualmente sempre que houver uma nova versão.

A remoção de um aplicativo instalado por compilação pode ser feita com o comando make uninstall ou manualmente, removendo os arquivos executáveis do disco rígido.

­