Baixando pacotes pré-compilados no FreeBSD

Após instalar o FreeBSD 8.0 no meu modesto computador para tarefas rotineiras, veio a necessidade de instalar alguns pacotes. O FreeBSD tem duas modalidades de instalação de pacotes:

  • O sistema de ports, que automatiza a tarefa de baixar código-fonte e compilá-lo, além de adaptar alguns pacotes ao seu gosto: o sistema ajuda você a habilitar ou desabilitar opções de vários pacotes, como suporte a Unicode, X11, bibliotecas adicionais etc.
  • Pacotes binários pré-compilados, familiares pra quem vem do Linux (como eu).

O FreeBSD possui uma ferramenta simpática chamada pkg_add que lembra o apt-get, pacman ou yum do Linux, baixando pacotes nos repositórios do FreeBSD. Porém, ao pedir pro pkg_add instalar alguns pacotes, como o Transmission, ele instalou versões mais antigas. Fuçando no FTP do FreeBSD, achei pacotes mais recentes dos pacotes. A próxima briga foi pra fazer o pkg_add usar apenas esses pacotes mais novos (dum diretório amigavelmente chamado Latest).

O truque é simples: quando você executa pkg_add -r nomedopacote, o pkg_add busca por $PACKAGESITE/nomedopacote.tbz. Se você fuçar pelos diretórios dos mirrors do FreeBSD vai perceber que os pacotes normalmente se chamam nomedopacote-versão.tbz, exceto os do diretório Latest, que instalam automaticamente a última versão disponível. Nos comandos abaixo, reparem que usei o sistema para arquitetura 64 bits (amd64), se sua instalação for para x86 32 bits, troque amd64 por i386.

Assim, pra instalar o vim, usei o seguinte comando no bash:

[root@tinhoso /home/esdras]# export PACKAGESITE="ftp://ftp4.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable/Latest/"
[root@tinhoso /home/esdras]# pkg_add -r vim

Você pode, ainda, acrescentar o comando do export no seu arquivo ~/.profile, o que fará o comando ser executado automaticamente a cada login:

[root@tinhoso ~]# echo export PACKAGESITE=\"ftp://ftp4.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable/Latest/\" >> ~/.profile

Caso você use csh (shell padrão no FreeBSD!), o comando muda:

tinhoso# setenv PACKAGESITE ftp://ftp4.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable/Latest/
tinhoso# pkg_add -r nano
Para tornar a variável permanente, acrescente esse comando no arquivo ~/.cshrc:

tinhoso# echo setenv PACKAGESITE ftp://ftp4.freebsd.org/pub/FreeBSD/ports/amd64/packages-8-stable/Latest/ >> ~/.cshrc

Fontes

Computador de baixo custo para pequenas finalidades

De 2008 pra cá, aposentei meu desktop e meu notebook virou meu computador pessoal. O problema é que em algumas noites ele ficava ligado baixando coisas, o que não é legal para a vida útil de notebooks.

Pensando nisso, ressuscitei um antigo gabinete meu, um HD e uma placa de rede sem fio que arranjei com o Eduardo Falcão e Marcelo Pazzo, respectivamente, e mais algumas peças antigas. Para completar o kit, comprei uma placa-mãe Intel D945GCLF2D.

Essa placa-mãe traz um pequeno adicional: um processador Atom 1.6GHz 64 bits já instalado, e custa cerca de R$ 250 por aí. Não é o computador mais poderoso da atualidade (longe disso), mas para pequenas finalidades quebra um galhão.

A placa vem com 4 portas USB traseiras e suporta mais 4, um slot para memória RAM DDR2 de até 2GB, um slot PCI, placa de vídeo integrada Intel Graphics Accelerator 950 e uma placa de som HD 5.1 da Realtek. Ou seja: um ótimo custo/benefício.

Pro meu brinquedo novo, escolhi como sistema operacional o FreeBSD. Fazia tempo que eu queria aprender a mexer mais a fundo nele, mas faltava uma finalidade pra me incentivar. Até agora não consegui configurar a placa de rede sem fio, uma D-Link DWL-510. O jeito foi deixar o gabinete do lado do roteador.

Aguardem dicas de FreeBSD e gambiarras pra puxar torrent. :)