Está en la página 1de 7

Arch User Repository

Arch User Repository (AUR) es un repositorio promovido por los usuarios de la comunidad de Arch. Este contiene descripciones de los paquetes (PKGBUILD) que le permiten compilar un paquete desde el cdigo fuente con makepkg y luego instalarlo a travs de pacman. AUR fue creado para organizar y compartir paquetes nuevos de la comunidad y ayudar a acelerar la inclusin de los paquetes ms populares en el repositorio [community]. Este documento explica cmo los usuarios pueden acceder y utilizar AUR. Un buen nmero de paquetes nuevos que entran en los repositorios oficiales tienen su origen en AUR. En AUR, los usuarios pueden aportar sus propias compilaciones de paquetes (PKGBUILD y los archivos relacionados). La comunidad de AUR tiene la posibilidad de votar a favor o en contra de los paquetes de AUR. Si un paquete llega a ser lo suficientemente popular siempre que tenga una licencia compatible y la tcnica de un buen empaquetado puede ser introducido en el repositorio [community] (directamente accesible por pacman o abs). Los usuarios pueden buscar y descargar PKGBUILD desde la Interfaz Web de AUR. Estos PKGBUILD se pueden compilar en paquetes instalables usando makepkg, y luego instalarlos con pacman.

Instalar paquetes
La instalacin de paquetes desde AUR es un proceso relativamente simple. En esencia consiste en: 1. Adquirir el tarball que contiene los PKGBUILD y posiblemente otros archivos necesarios.

2. Extraer el tarball (preferentemente en una carpeta reservada solo para las compilaciones de AUR) con tar xzf foo.tar.gz.

3. Ejecutar makepkg en el directorio donde se guardan los archivos (makepkg -s resuelve automticamente las

dependencias con pacman). Esto descargar el cdigo, lo compilar y lo empaquetar.

4. Buscar el archivo README en src/ el cual puede contener informacin adicional til para el futuro.

5. Instalar el paquete resultante con pacman: # pacman -U /path/to/pkg.tar.xz

Los AUR Helpers aaden un acceso transparente para AUR. Los mismos varan en sus caractersticas, pero pueden facilitar la bsqueda, descarga, compilacin e instalacin de los PKGBUILD que se encuentran en AUR. Todos estos scripts se pueden encontrar en AUR. Nota: Nunca habr un mecanismo oficial para la instalacin del material precompilado de AUR. Por tanto, todos los usuarios deben estar familiarizados con el proceso de compilacin. Lo que sigue es un ejemplo detallado de la instalacin de un paquete llamado foo. Prerrequisitos Primero, asegrese de que las herramientas necesarias estn instaladas. El grupo de paquetes base-devel debe ser suficiente; incluye make y otras herramientas necesarias para compilar desde el cdigo fuente. Advertencia: Los paquetes disponibles en AUR asumen que tiene instalado el grupo base-devel, por lo que los paquetes de AUR no listan los elementos de este grupo como dependencias, incluso si el paquete no se puede compilar sin ellos. Por tanto, asegrese que este grupo est instalado para prevenir que arroje errores sobre fallo al compilar.

# pacman -S base-devel A continuacin, elija un directorio de compilacin apropiado. Un directorio de compilacin es simplemente una carpeta en la que se construir el paquete o se compilar, y puede ser cualquier carpeta. Un ejemplo de carpeta comnmente utilizada es: ~/builds o si se utiliza ABS (Arch Build System): /var/abs/local Para obtener ms informacin sobre ABS, lase el artculo sobre Arch Build System. En el ejemplo que se sigue, la carpeta ~/builds ser el directorio de compilacin. Adquirir archivos compilados Localice el paquete en AUR. Esto se realiza utilizando la funcin de bsqueda (esto es, el recuadro de texto de la parte superior de la pgina principal de AUR). Al pulsar sobre el nombre de la aplicacin en la lista de bsqueda, nos llevar a una pgina de informacin sobre el paquete. Lea la descripcin para confirmar que este es el paquete deseado, observe si el paquete ha sido actualizado y lea los comentarios.

Descargue los archivos necesarios de compilacin. Desde la pgina de informacin del paquete, descargue los archivos de compilacin pulsando el tarball que aparece en el lado izquierdo, cerca del final de los detalles del paquete. Este archivo debe ser guardado en el directorio de compilacin o una copia del archivo en dicho directorio despus de la descarga. En este ejemplo, el archivo se llama foo.tar.gz (el formato estndar es nombredelpaquete.tar.gz, si ha sido debidamente enviado). Otra posibilidad consistira en descargar el archivo tar desde el terminal, cambiando los directorios al primer archivo de

compilacin: $ cd ~/builds $ curl -O https://aur.archlinux.org/packages/fo/foo/foo.tar.gz Compilar el paquete Extraiga el tarball. Para ello, cambie el archivo a la carpeta de compilacin, si no est ya all y, una vez en dicho directorio, extraiga los archivos de compilacin. $ cd ~/builds $ tar -xvzf foo.tar.gz

Esto debera crear una nueva carpeta llamada foo en el directorio de compilacin. Advertencia: Revise cuidadosamente todos los archivos. Ejecute la orden cd para desplazarse a la carpeta (foo) recin creada y revise con cuidado elPKGBUILD y cualquier archivo .installpara advertir rdenes maliciosas. Los PKGBUILD son scripts de bash que contienen funciones para ser ejecutadas por makepkg: estas funciones pueden contener cualquier orden vlida o con la sintaxis que interpreta Bash, por lo que es totalmente posible que un PKGBUILD pueda contener rdenes peligrosas introducidas por malicia o ignorancia del autor. Use makepkg en un entorno fakeroot (y no lo ejecute nunca como root), lo cual le da un cierto nivel de proteccin, pero nunca se debe confiar del todo con ello. En caso de duda, no compile el paquete y consulte en los foros o listas de correo. $ cd foo $ nano PKGBUILD $ nano foo.install Construya el paquete. Despus de confirmar manualmente la integridad de los archivos, ejecute makepkg como un usuario normal en el directorio de compilacin.

$ makepkg -s La opcin -s utilizar sudo para instalar eventuales dependencias. Si no se desea utilizar sudo, se deber probar a instalar manualmen te las dependencias de antemano y posteriormente ejecutar la orden anterior, omitiendo la opcin -s.