Há algumas semanas, depois de anos de tentativas, passei a usar o Linux no meu notebook. Desta vez foi diferente, pois não o instalei em dual-boot com o Windows: o desktop qual utilizo todos os dias é apenas o Debian. É uma experiência interessante, pois como muitos de vocês sabem, sempre me posicionei contra o uso do Linux no desktop, embora o utilize corriqueiramente nos servidores quais administro (que correspondem pelo menos a uma meia dúzia). Porém, minha vontade de abandonar todo e qualquer software pirata (e também evitar de pagar pelas suas versões originais) falou mais alto.

Como não tenho mais idade (nem tempo, diferente da época em que utilizava o Windows 98 e formatava o PC toda semana) para perder um dia inteiro consertando o computador quando alguma atualização de software deu errado, optei por instalar o Debian “Squeeze” (6.0), dada sua largamente conhecida estabilidade. Como é de se esperar, esta dita estabilidade tem um preço: nem sempre os softwares estão disponíveis em sua última versão ou mesmo todos quais você precisa estão no repositório oficial da distribuição, mesmo com quase 30 mil pacotes presentes por lá. Pensando justamente nestes casos, surgiu o (hoje incorporado como repositório oficial de pacotes) Debian Backports.

O propósito do projeto é basicamente portar as versões dos pacotes presentes no repostório “testing” (que corresponde à próxima versão do Debian, hoje apelidada de “Wheezy”) para a árvore “stable” (a versão corrente, que atualmente é o já citado “Squeeze”). Tem muita coisa bacana e útil por lá. Foi assim que pude instalar o Iceweasel (versão verdadeiramente livre do Firefox) 10.0 (que é a versão “ESR”, de suporte extendido - a padrão no “Squeeze” é a extremamente velha 3.5, de 2009) e o LibreOffice (ao invés do zumbi OpenOffice.org - único disponível sem os backports). O problema é que nem todos os softwares que preciso estão disponíveis por lá - apenas os quais a procura é muito grande.

Para resolver este problema, foi criado o projeto Myhro Ports, mantido por mim (como vocês poderiam imaginar) e patrocinado pela Aptans, pois o processo de recompilação dos pacotes pode ser bem demorado e para isso estou utilizando um dos servidores parrudos (pense num Core i7 com 16 GB de RAM) carinhosamente disponibilizado pela empresa. Para utilizá-lo, basta adicionar a seguinte linha no seu “/etc/apt/sources.list”:

deb http://ports.myhro.info/ squeeze-backports main

Adicionar a chave pública do repositório às conhecidas do APT:

[[email protected]:~]# wget -q -O - http://ports.myhro.info/myhroports.gpg | apt-key add -

E instalar normalmente o que você precisa com o seu gerenciador preferido, como o apt-get ou aptitude, após atualizar sua lista de pacotes. Cabem ainda algumas observações:

  • Estou tentando manter o repositório o mais parecido possível com o repositório de backports oficial: o sufixo dos pacotes segue a linha “~bpo${debian_release}+${build_int}”, como “~bpo60+1” e a árvore do repositório é a “squeeze-backports”. Não há absolutamente nenhuma modificação nos pacotes além das que se fizerem necessárias para a correta instalação/execução do mesmo na versão atual do Debian.
  • Ao mesmo tempo, o Myhro Ports não é um substituto para o backports oficial e sim um complemento com o propósito de disponibilizar os pacotes que não estão lá disponíveis. Sendo assim, não existirão pacotes redundantes: só está no Myhro Ports o que não existe no Debian Backports.
  • É possível fazer pedidos de pacotes quais você gostaria de utilizar mas não estão disponíveis ainda, seja aqui nos comentários desde post, via tweet ou e-mail (ports arroba myhro ponto info). Lembre-se apenas que o pacote deve estar no repositório “testing”. Sem isso, as chances do pacote quebrar a atualização de uma versão do Debian para a outra seriam maiores.
  • Pacotes que tragam grandes modificações, principalmente os que requerem a atualização de bibliotecas essenciais ao sistema, como a libc6, serão evitados.
  • Apenas as arquiteturas i386 e amd64 são suportadas atualmente. Como o objetivo do mesmo é portar pacotes voltados para o desktop, isto provavelmente não vai fazer muita diferença.

Caso você esteja se perguntando o porque de se criar um novo repositório ao invés de contribuir com o backports oficial, a resposta é muito simples: as regras lá são muito mais rígidas. Entretanto, nada impede que no futuro, quem sabe, os repositórios sejam mesclados.