Antes de tudo deixa eu contar uma historinha: Eu comecei a usar Linux com o Slackware e era completamente apaixonado por ele. Foi graças ao Slack que eu aprendi muita coisa, mas depois de sugar tanto conhecimento me deu uma vontade tremenda de começar a contribuir e foi aí que a coisa começou a desandar para mim.
Na época o Slack era muito burocrático e era realmente complicado contribuir com algo. Tinha um pessoal do GUS-BR que já fazia bastante coisa, mas só. Quando o Patrick adoeceu a coisa só piorou. Foi nesta época que eu percebi que estava na hora de EU começar a procurar uma distribuição mais comunitária (no meu ponto de vista), com um desenvolvimento mais aberto e menos dependente de uma pessoa só.
Testei o Debian, mas não gostei muito da comunidade (nada pessoal, galera. vocês fazem um bom trabalho) e gentoo, que apesar de ótimo não era exatamente o que eu queria. Fique neste último durante algum tempo até que conheci o Arch (saiba mais sobre ela) e o AUR.
O AUR (Arch Linux User Repository) é um repositório de pacotes alimentado pelos próprios usuários do Arch. É lá que se encontram os pacotes mais desconhecidos e/ou que ainda não estão disponíveis nos repositórios oficiais da distribuição. Por causa disso o AUR acabou se tornando o berço dos pacotes do Arch. Quando um pacote se encontra no AUR as pessoas podem votar à favor, ou contra, do mesmo baseando-se na qualidade, utilidade, estruturação e, claro, segurança do seu pacote enviado.
Se um pacote receber vários votos positivos, um Trusted User poderá adotá-lo e movê-lo para o repositório [community]. Desta forma seu pacote estará em um repositório oficial e, consequentemente, poderá ser instalado pelo pacman e/ou ABS.
Os Trusted Users são os responsáveis por manter o AUR em ordem. Eles podem adotar pacotes, remover, colocar algum como orfão, gerenciar usuários, ajudar a melhorar os padrões dos PKGBUILDs, evitar código malicioso, participar de questões administrativas etc.
Qualquer usuário pode se tornar um Trusted User, mas para isso ele precisa se canditar, passar por um período de discussão e análise de suas constribuições (pacotes no AUR e contribuições com o software livre em geral) e, por último, por um processo de votação. Todo o processo está descrito aqui. Atualmente existem 26 TUs, sendo dois brasileiros (eu e o Douglas Soares)
O AUR é bem aberto e qualquer pessoa pode contribuir com o AUR. Qualquer pessoa, mesmo. Se você tiver tempo e gostar de empacotar este será seu playground inicial. À seguir eu mostro algumas coisas que você pode fazer no AUR:
Os repositórios principais do Arch possuem quase cinco mil pacotes e quase tudo que a maioria dos usuários precisam. Apesar disso, cedo ou tarde você precisará de um pacote que não se encontra lá. Quando isto acontecer não se desespere, vá ao AUR. É quase certeza que você o encontrará lá.
Entre em http://aur.archlinux.org. Você será apresentado à interface do AUR, com a lista dos últimos pacotes atualizados, formulário de login, estatísticas do projeto e algumas outras coisas. No momento o que lhe interessa é o link "packages" que se encontra na barra azul.
Ao clicar no link você terá um formulário de busca e filtro de pacotes à sua disposição. Coloque o nome pacote que você deseja instalar no campo de busca (keywords). Aqui vamos usar como exemplo o pacote thunderbird-spell-pt-br (um dicionário pt_BR para o thunderbird).
Depois de pesquisar pelo pacote, você será apresentado a uma lista com um ou vários pacotes (isso vaí depender do nome que você usou na busca). Clique exatamente no pacote que deseja que uma tela com as informações do mesmo será mostrada.
Uma breve descrição das informações:
Aqui o link que interessa é o "tarball". Clique nele e salve o arquivo no seu disco. Em seguida descompacte-o com o comando:
$ tar xvf arquivo.tar.gz
Exemplo:
$ tar xvf thunderbird-spell-pt-br.tar.gz
Dentro do diretório criado você verá vários arquivos como, por exemplo: PKGBUILD, pacote.install, pacote.patch etc. O único arquivo realmente obrigatório é o PKGBUILD. Como já foi dito, é ele que possui as instruções de construção do pacote. Os outros arquivos são opcionais e não estão presentes apenas em alguns pacotes e quando necessário.
Para criar o pacote basta fazer, dentro do diretório criado:
$ makepkg
Isso verificará as dependências (incluindo as necessárias para a construção do pacote), baixará os sources, checará o md5, compilará o programa e criará o pacote para você. Tudo automaticamente e, claro, se o PKGBUILD estiver correto (o que acontece quase sempre).
Se tudo der certo você verá uma mensagem como esta:
==> Finished making: thunderbird-spell-pt-br 2.0.0.16-1 i686 (Mon Sep 1 22:53:39 BRT 2008)
Isso significa que seu pacote foi criado com sucesso. Agora é só instalá-lo com o pacman:
# pacman -U pacote.pkg.tar.gz
Exemplo:
# pacman -U thunderbird-spell-pt-br-2.0.0.16-1-i686.pkg.tar.gz
Pronto. Você acabou de construir e instalar um pacote do AUR. :)
Você já vota e usa pacotes do AUR muito bem, gostou tanto da ferramenta que começou a construir seus próprios pacotes (aprenda aqui e aqui) e agora quer disponibilizá-los no AUR. Como fazer? Fácil:
A primeira coisa que você precisa fazer é criar um tarball com todos os arquivos necessários para a construção do seu pacote. Vamos supor que você esteja criando um pacote foobar. Você deve ter uma estrutura de diretórios parecida com isso:
foobar/
foobar/PKGBUILD
foobar/foobar.install
foobar/foobar.patch
Ou seja, realmente tudo que precisa pro pacote. Você NÂO deve colocar nenhum source e nenhum binário aí dentro. Se tiver algum (resto de uma compilação anterior, por exemplo) apague. Lembrando que o único arquivo realmente necessário é o PKGBUILD. Sabendo disso tudo crie um tarball desta sua árvore:
$ tar cvzf arquivo.tar.gz diretorio
Exemplo:
$ tar cvzf foobar.tar.gz foobar/
Com o tarball em "mãos" entre em aur.archlinux.org e logue-se. Em seguida vá em submit. Aqui selecione corretamente a categoria do seu pacote (lib, multimedia, gnome etc) e clique em browse. Agora é só selecionar o tarball criado anteriormente e clicar em upload.
Voilá, você acabou de submeter seu pacote ao AUR. Agora ele está disponível para toda a comunidade do Arch e pode ser votado, baixado e usado por todos.
E o que fazer quando eu quero atualizar um pacote que submeti anteriormente? Bem, o processo é exatamente o mesmo. Você vai em submit, seleciona a categoria do seu pacote, clica em browse, seleciona seu pacote e clica em upload. O AUR é inteligente o suficiente para saber que aquele pacote já existe e que você está tentando atualizá-lo.
Só três observações:
Se você sabe que um pacote se encontra no AUR, mas você gostaria muito de vê-lo no [community] então vote no pacote. Basta você entrar no aur, buscar o pacote que deseja e, na tela de informações do mesmo, clicar em vote. Simples assim. :) Depois é só esperar que outras pessoas também façam o mesmo para que o pacote seja movido para o repositório oficial.
Bem, é isso. O AUR tem outras opções e vale a pena explorá-lo um pouco. Recomendo! :D
[...] http://hdoria.archlinux-br.org/blog/2008/09/01/aur-arch-linux-user-repository/pt/ [...]
Olá, gostaria de saber se tem alguma maneira de utilizar a árvore do aur no gerenciador de pacotes do Arch Linux, daí eu poderia instalar os pacotes e suas dependências automaticamente e não ficar quebrando a cabeça baixando todas as dependências dos pacotes na marra.
Sempre que tento compilar algum pacote recebo essa mensagem, mas não encontro nada na internet pra resolver o problema:
==> ERROR: firefox-branded is not available for the ” architecture.
Note that many packages may need a line added to their PKGBUILD
such as arch=(”).
Alguma idéia?
@m0ska: existe uma ferramenta ótima pra isso, o yaourt.
@m0ska
A melhor maneira de fazer isso é, como o Rodrigo falou, usando o yaourt:
http://archlinux.fr/yaourt-en
@Rafael
Isso acontece porque o makepkg agora obriga que um PKGBUILD possua um campo indicando a licença do software. Antigamente isso não era obrigatório e, por isso, você vê essas mensagens em PKGBUILDs mais antigos.
A solução é abrir o arquivo PKGBUILD no seu editor preferido e adicionar a seguinte linha:
arch=(’i686′ ‘x86_64′)
Hugo, qual seria a diferença do ABS e do AUR?
Caramba depois de ler isso já me tenho vontade de usar o Arch, eu já passei um tempo usando Slackware o que foi legal, mas essa idéia do Arch é muito útil e muito legal, pois estou usando o openSuse (que por sinal é muito bom), mas fazer um pacote para ele é um sacrifício, por enquanto vou ficar só observando o Arch, pois ainda não devo mudar de distribuição agora.
Realmente o yaourt é uma ótima ferramenta pra trabalhar com aur. recomendo.
[...] ficam os pacotes mais populares da comunidade. Além disso, eles também são responsáveis pelo AUR, por ajudar a melhorar a qualidade dos pacotes, treinar novos TUs e podem participar de algumas [...]
[...] ficam os pacotes mais populares da comunidade. Além disso, eles também são responsáveis pelo AUR, por ajudar a melhorar a qualidade dos pacotes, treinar novos TUs e podem participar de algumas [...]
[...] Por motivos de licença, o wingide não está disponível nos repositórios oficiais do Arch. Se vocẽ não comprar, a solução é instalar este pacote do AUR (versão trial de 30 dias). Se você ainda não sabe como instalar um pacote do AUR veja este tutorial. [...]