Rudix: pacotes GNU e para UNIX adicionais para o Mac

Augusto Campos em 24/02/2011

Por Rudá Moura*

O Rudix procura estender as funcionalidades presentes no ambiente UNIX do Mac OS X, através de um conjunto de softwares pré-compilados e prontos para usar.

Estes softwares estão disponíveis no formato package (.pkg), que é uma das formas de instalação recomendadas pela Apple.

Quem veio do Ubuntu ou Red Hat pode entender o Rudix como se fosse uma espécie de “distribuição Linux” para Mac, e quem veio de algum BSD certamente verá o Rudix como algo semelhante às ferramentas de buildsystem e ports do FreeBSD ou OpenBSD.

Mas para o usuário final, pouco importa que seja um buildsystem ou uma distribuição, pois o objetivo primordial do Rudix é facilitar a instalação de softwares UNIX para Mac, de maneira rápida, segura e sempre “do jeito Mac”.

Estes são alguns dos programas que podem ser instalados através do Rudix:

  • Midnight Commander;
  • GNU Wget (wget), GNU sed, GNU findutils;
  • Ferramentas de desenvolvimento como Mercurial, Bazaar e Git;
  • Serviços como Memcached, Varnish e NGINX;
  • Recentemente incorporados: Node.js, Terminal multiplexor (tmux).

História

A história do Rudix começa no ano de 2005 em um iBook G3 e o meu know-how anterior com desenvolvimento em Linux.

Procurei por soluções que me entregassem o GNU Wget compilado, mas não gostei do que achei na época: Fink e Darwin Ports - atual Mac Ports, pois mantinham as complicações de empacotamento herdadas do Linux.

Mesmo com opções mais amigáveis como o Homebrew, o Rudix continua mais vibrante e original que os outros. O Rudix ganhou maturidade na versão 2010 e agora desponta para mais uma versão.

O Diferencial

E o que diferencia o Rudix dos outros sistemas? O Rudix procura manter fidelidade aos padrões de comportamento que o Mac OS X exige. Em primeiro lugar, os softwares são instalados como pacotes independentes e auto-suficientes. Isso quer dizer que não existem dependências de outras bibliotecas, a não ser as nativas do próprio Mac.

Importante: o Rudix nunca substitui os componentes originais do Mac e não “contamina” a instalação original. Procuro manter a instalação dos pacotes dentro do consagrado diretório /usr/local/ em vez de inventar uma opção maluca, como /opt/rudix/.

Por manter o jeito “Mac OS X friendly” de ser, acredito que o Rudix tem um espaço garantido para um público exigente mas ao mesmo tempo, que não gosta de perder muito tempo pensando em dependências e compilações.

Rudix 2011

A nova versão do Rudix encontra-se em fase de desenvolvimento e caminha para um estado alfa de desenvolvimento. O projeto está hospedado no site de código do Google.

A maioria dos pacotes do Rudix já foram atualizados para a versão 2011. O gerenciador de pacotes está em fase de estabilização, pois recentemente adquiriu algumas características novas, como instalação de software através da internet.

O site do projeto ainda necessita ser atualizado para as versões novas de pacote, pois ainda encontra-se na versão 2010, que confesso que ficou um pouco “fora de moda”.

Gerenciando pacotes

A maneira mais fácil de começar a usar o Rudix 2011 é instalar primeiro o gerenciador de pacotes Rudix, pois através dele fica mais fácil ir acrescentando os softwares conforme for sentindo necessidade.

A última versão do gerenciador de pacotes está disponível na área de downloads do Rudix. No momento que escrevo este artigo, a versão do gerenciador é a 11.2 (Leia-se fevereiro de 2011).

Uma maneira rápida de fazer o “bootstrap” do Rudix na linha de comando é através das seguintes linhas:

curl -O http://rudix.googlecode.com/hg/Ports/rudix/rudix.py
sudo python rudix.py install rudix

Ou em uma linha só

curl http://rudix.googlecode.com/hg/Ports/rudix/rudix.py | sudo python - install rudix

A partir desse ponto, fica fácil instalar novos programas, por exemplo, para instalar o GNU Wget, eu faço:

sudo rudix install wget

Simples, não é?


Instalação direta de pacotes

Mas se tudo o que você precisa do Rudix for um pequeno conjunto de pacotes (ou o próprio GNU Wget), então nem perca tempo com os passos acima.

Vá até o mesmo endereço de download, baixe só os pacotes desejados diretamente e instale, sem complicação alguma, seguindo apenas o roteiro de instalação de qualquer software para Mac, como na imagem acima.

O Inferno das Dependências (NOT)

Os mais atentos podem querer me perguntar agora: e como resolver as dependências?

A resposta é: não se resolve ou melhor, não há dependências a resolver, pois tudo que é dependência externa e que não é nativo do Mac OS X é resolvido através de compilação estática.

O pacote do GNU Wget é um bom exemplo, pois durante a compilação ele necessita do GNU GetText, que é compilado estaticamente e inserido no GNU Wget para distribuição.

Não pense que o pacote do wget vai ficar enorme! Não é que toda a biblioteca vai fazer parte do pacote e deixar o software mais gordo, apenas o que o wget necessita do gettext é incorporado. O resultado final é um bom equilíbrio entre o tamanho do programa e a comodidade de evitar dependências!

Mais informações

Para mais informações, visite rudix.org e code.google.com/p/rudix.

O Rudix está no Facebook e com o twitter @rudix4mac.

Sou o autor original do Rudix, e o meu twitter é @ruda_moura. Desde o final de 2010, o Rudix conta também com a participação e a contribuição de Leonardo Santagada (@santagada).

* O autor convidado Rudá Moura é entusiasta da linguagem Python, desenvolvedor UNIX e aficcionado por Macs.
 

Comentar

Comentários arquivados

Comentário de dclobato em 24/02/2011 às 15:11:02

Parabéns ao Ruda pelo Rudix. Uso vários programas do Rudix no dia-a-dia desde 2007 e eles são, realmente, absurdamente fáceis de instalar. Futuro longo e próspero ao Rudix!

Comentário de Enderson Maia em 24/02/2011 às 15:21:40

Nunca usei o Rudix, qnd iniciei com o Mac OS X eu usava o MacPorts, mas a pouco tempo conheci o HomeBrew e tem me atendido muito bem. http://mxcl.github.com/homebrew/

Comentário de Leonardo Santagada em 24/02/2011 às 16:03:41

obs: Eu ajudo o ruda com o rudix. O Homebrew é muito bem feito, e em comparação com o macports os programas nele realmente funcionam :). O que eu acho a grande vantagem do rudix é que os pacotes já vem compilados e são universais, o q no fundo quer dizer, nada de esperar um longo tempo para executar um programa que tu precise e destruir com a bateria caso tu não esteja conectado na tomada. Tem o fato também de ficar compilando a mesma coisa 10 mil vezes em várias maquinas iguais parecer um desperdicio de energia eletrica e de tempo de processamento.

Comentário de Fabiano Carvalho em 24/02/2011 às 16:12:56

A certeza de sempre encontrar o pacote que preciso, mesmo tendo que compilá-lo, não me deixam trocar o Macports. http://www.macports.org/

Comentário de Alexandre Gorges em 24/02/2011 às 16:38:45

venho usando a algum tempo o Rudix. é excelente, ajuda um monte aqui. parabéns aos criadores.

Comentário de Ruben Tavares de Moura em 01/03/2011 às 19:58:21

Parabéns pelo artigo (continue sempre assim que você vai longe!) Belém-Pará-Brasil

Comentário de Kyrii em 02/03/2011 às 19:31:57

Um bom projeto! Uma das coisas que usuários do Linux que mudam para o Mac sempre procuram e acham no Rudix!

Comentário de Rudá Moura em 03/03/2011 às 16:09:29

Muito obrigado! Rudix 2011 vai ser “o cara”.

Comentário de Gustavo Reis em 20/11/2011 às 00:09:39

Olá Augusto! Tenho um problema sério com o terminal. Depois que eu instalei o Rudix e o Wget, e quando eu abri o terminal, o terminal não exibe o meu usuário nem o comando, eu tentei deinstalar o Rudix, o terminal continua a mesma coisa. Como reoslvo esse problema? Uso o Mac OS Snow Leopard 10.6.8. Obrigado pela atenção e pela compreensão! Gustavo Reis

Comentário de Augusto Campos em 20/11/2011 às 12:12:54

Você pode descrever a situação com mais detalhes?