Use o checkinstall para criar pacotes gerenciáveis dos aplicativos que você compila no seu sistema.

Compilar softwares a partir do código fonte, é um método de instalação que possibilita obter a versão mais atual do seu aplicativo.
Outra vantagem, é poder construir automaticamente software feito sob medida para o seu sistema.
Este texto complementa o artigo Como Compilar Código Fonte de Programas no Linux.
Na maioria das vezes, é muito fácil compilar software. Mas esta abordagem traz algumas desvantagens ou riscos que convém enumerar:

  • O software compilado não participa das atualizações automáticas do sistema. Se o objetivo era ter a versão mais atual, com o tempo, você pode acabar com uma versão desatualizada do seu aplicativo favorito.
    Isto significa também que ele não receberá correções para novos bugs, à medida em que são descobertos. Tampouco receberá patches de segurança.
    Resumindo, você terá que fazer as atualizações manualmente, se quiser.
  • Em alguns casos, pode ser complicado remover software instalado através deste método. Se você não sabe exatamente aonde foi gravado cada arquivo associado do aplicativo principal, pode acabar com um sistema cheio de coisas que não usa mais.
  • Pode haver perda de dados, em casos (embora raros) de conflito com o restante do sistema.

No texto Como Preservar a Integridade e a Estabilidade da sua Instalação Debian, são enumeradas as várias armadilhas que podem quebrar o seu sistema. Entre elas, compilar softwares do código fonte.

Como usar o checkinstall

Para solucionar parte destes problemas, use o checkinstall.
Este utilitário pode ajudar a rastrear softwares locais e a produzir arquivos binários que podem ser manipulados pelo seu aplicativo de gestão de pacotes.

O checkinstall produz um pacote binário que pode ser gerenciado pelo sistema de gestão de pacotes — facilitando, entre outras coisas, a futura desinstalação.

Trata-se de um programa que monitora o processo de instalação feito por ‘make install’ ou por um script ‘install.sh’ e cria um pacote padrão para a sua distribuição.
Atualmente, o checkinstall suporta pacotes deb, rpm e tgz — que podem ser usados, respectivamente, pelos gestores dpkg, rpm e installpkg.
Na maioria dos casos, o checkinstall precisa ser executado com privilégios administrativos, para ser realmente útil.
Sua sintaxe segue o padrão de linha de comando GNU:
checkinstall opções comando-de-instalação
Seu funcionamento segue os seguintes passos:

# entre no diretório em que se encontra o código fonte
./configure
make
sudo checkinstall

Se você prefere gerar pacotes .deb, para o seu sistema Debian/Ubuntu, use a opção ‘-D’:

sudo checkinstall -D 

Se preferir gerar pacotes RPM, use a opção ‘-R’; ou ‘-S’, para criar um pacote Slackware.
Use a opção ‘–install=no’ para evitar a instalação automática do pacote.
O exemplo, abaixo, cria um pacote RPM e sai, sem instalar nada:

sudo checkinstall -R --install=no

O novo pacote criado, ficará disponível no mesmo local em que você executou o comando. Basta usar o comando ls, para encontrá-lo.

Referências

https://manpages.debian.org/cgi-bin/man.cgi?sektion=8&query=checkinstall&apropos=0&manpath=sid&locale=en.
https://wiki.debian.org/CheckInstall.

Como compilar e instalar o Redshift no Linux

O Redshift é um programa que protege os seus olhos e o seu sono através de algumas configurações automáticas do seu monitor — o aplicativo aquece a temperatura das cores do display, variando a intensidade de acordo com o horário do dia.
entardecer
Neste artigo, expliquei como instalar o Redshift no Ubuntu e dei várias dicas de configuração, para ajustar melhor o funcionamento do aplicativo às suas necessidades.
Neste post, vou mostrar o passo a passo para compilar o Redshift em seu sistema.
A vantagem de compilar seus programas é que você normalmente vai usar código mais atual e mais ajustado.
Mesmo não sendo um “usuário avançado”, você pode se beneficiar ao baixar e compilar o código fonte — isto não é complicado.

  • Software compilado, roda melhor no seu computador.
  • É possível obter versões mais novas do software, no site do desenvolvedor, ainda não disponíveis nos repositórios da sua distro.

Não bagunce o seu sistema: Se o Redshift já estiver instalado, você deve removê-lo, antes de prosseguir.
Se estiver afim, baixe o código do redshift e prossiga na leitura.
Após baixar o pacote com o código do Redshift, note que há um arquivo de texto, chamado HACKING, que contém as instruções para compilar.
Ao final deste arquivo, há uma relação de bibliotecas de desenvolvimento que precisam estar instaladas para você poder compilar o Redshift.
São as dependências:

* autotools, gettext
* libdrm (Optional, for DRM support)
* libxcb, libxcb-randr (Optional, for RandR support)
* libX11, libXxf86vm (Optional, for VidMode support)
* geoclue (Optional, for geoclue support)

Acima, eu destaquei, com fundo mais escuro, as dependências que vou instalar no meu sistema (XUbuntu 14.04).
Além destas, vou ter que instalar o autoconf e o gettext, pacotes de ferramentas necessárias para compilar código em C.
Veja o processo, passo a passo:

sudo apt-get install autotools-dev libxcb1-dev libxcb-randr0-dev gettext autoconf autopoint
./bootstrap
./configure --enable-ubuntu --enable-gui --enable-randr
make
sudo make install

Se o processo for bem sucedido, já dá pra rodar o Redshift.
Se você quiser, pode remover parte dos pacotes instalados:

sudo apt-get purge autotools-dev libxcb1-dev libxcb-randr0-dev gettext autoconf autopoint

Uma vez instalado o programa, eles já não são mais necessários.
Se você tiver interesse em saber como usar as funções básicas do Redshift e como editar o arquivo de configuração do programa, leia este artigo.
Tenha noites/madrugadas produtivas! — e aproveite para compartilhar o post nas redes sociais. 🙂

Referências

Fonte: blog do Jon Lund Steffensen, um dos desenvolvedores.
Leia mais sobre como compilar seus programas no Linux.
Dicas de configuração no Wiki do ArchLinux.
Wikipedia: verbete sobre melatonina.