Guia AUR

De Arch Linux Comunidad Hispana

Tabla de contenidos

[editar] Propósito

AUR es una comunidad compuesta por usuarios de ArchLinux. Este documento te explica como acceder a AUR y trabajar con él.

[editar] El usuario y AUR

El usuario normal juega un papel esencial en AUR y sin la ayuda, la implicación y la contribución de la comunidad de usuarios, AUR no alcanza su potencial. El ciclo de vida de un paquete AUR comienza y termina con el usuario, y requiere que el usuario contribuya de varias maneras.

[editar] Compartiendo PKGBUILDs en UNSUPPORTED

Los usuarios pueden compartir PKGBUILDs usando el área "Unsupported" de AUR. El área "Unsupported" no contiene paquetes binarios, sino que permite a usuarios subir PKGBUILDs que se pueden descargar otros usuarios. Se permite a los usuarios poner comentarios a las subidas para facilitar el envió de sugerencias y el arreglo de bugs. Se ha introducido un nuevo sistema que marca los paquetes que contienen código malicioso. Sin embargo, estos paquetes siguen estando ahí, y se deben usar con precaución y bajo tu propio riesgo. Hasta ahora no hay un mecanismo oficial para descargar los paquetes de Unsupported, pero algunos scripts se pueden encontrar en la wiki en inglés o se pueden instalar mediante la aplicación yaourt.

[editar] [community]

El repositorio [community] es un suplemento de los repositorios [current] y [extra], donde los paquetes mas populares de "UNSUPPORTED" son mantenidos por un grupo de personas elegidas. [community], a diferencia de UNSUPPORTED, contiene paquetes binarios que pueden ser instalados con Pacman y los archivos build pueden ser accedidos con ABS. Algunos de estos paquetes eventualmente pueden ser añadidos a [current] o a [extra], por considerarlos los desarrolladores cruciales para la distribución.

Los usuarios pueden acceder al repositorio [community] añadiendo/descomentando esta linea en /etc/pacman.conf

Include = /etc/pacman.d/community

Si /etc/pacman.d/community no existe, deberia ser creado y que contenga lo siguiente:

[community]
Server = ftp://ftp.archlinux.org/community/os/i686/

Los usuarios pueden acceder a los ficheros build de [community] editando /etc/abs/abs.conf con lo siguiente:

SUPFILES=(arch extra !unstable community)

[editar] Votando

Una de las actividades mas faciles de los usuarios de Arch es navegar por la pagina de AUR y votar por los paquetes favoritos usando la interfaz online. Los paquetes con mas votos pueden ser incluidos en el repositorio [community].

[editar] Como usar AUR

[editar] Usando paquetes de UNSUPPORTED

[editar] Instalando paquetes desde UNSUPPORTED con Yaourt

Yaourt es una interfaz de línea de comandos que completa a pacman, posee muchas más funcionalidades (como el soporte a AUR) para instalar software sobre Archlinux.

Funciones:

  • Búsqueda en el repositorio de pacman como en AUR.
  • Salida coloreada de los resultados de búsqueda con indicación de software ya instalado.
  • Instalación de paquetes desde los repositorios y desde AUR con un único mando.
  • Modo interactivo de búsqueda (búsqueda y selección, tecleando el número de paquete).
  • Opción: instalación de software desde los fuentes (abs) con srcpac.
  • Eliminación de los paquetes inútiles:
  • Actualización global de todos los paquetes de AUR.
  • Totalmente compatible con pacman/pacman-drive/pacman-cage.
  • Reutilización de las opciones de pacman (véase el pacman - help).
  • Detección de los paquetes que han quedado huérfanos después de una actualización .
  • Editor de fichero de configuración (véase pacdiffviewer-h).
  • Búsqueda mejorada para encontrar de dónde proviene un archivo.

Todos las opciones de pacman son reconocidas, utiliza los mismos parámetros.

Búsqueda e instalación:

Yaourt [cadena]: búsqueda rápida + instalación.
Yaourt -S [paquete]: instala el paquete, lo compila desde AUR si es necesario.
Yaourt -Ss [cadena]: búsqueda en repositorios y en AUR (con aviso de los paquetes ya instalados)
Yaourt -Sb [paquete]: instala un paquetes por compilación desde fuentes (abs).
Yaourt -Sl [repositorio]: muestra los paquetes seleccionados de los repositorios (subrayar los ya instalados).
Yaourt -Qs [cadena]: Salida coloreada de los paquetes instalados y los repositorios de donde provienen.
Yaourt -Qo [nombre del programa] o [nombre de archivo]: muestra el paquete de donde proviene el programa o el archivo.

Actualización:

Yaourt -Syu: Actualización completa del sistema, repositorios y paquetes. (solo de repositorios)
Yaourt -Syu - aur: Actualización completa del sistema, incluso los paquetes provenientes de AUR.
Yaourt -Sybu - aur: Actualización completa del sistema por compilación (repositorios y AUR).
Yaourt -Su --devel: Actualización y renovación de paquetes de cvs/svn/mercurial/git.

Limpieza:

Yaourt -C: edición y fusión de .pacnew/.pacsave .
Yaourt -CC: eliminación de todos los .pacnew/.pacsave .
Yaourt -Qt: búsqueda de paquetes huérfanos.
Yaourt- Cd: búsqueda de repositorios obsoletos.

Otras opciones:

--export [directorio]: exportación de los paquetes compilados para gensync.
Yaourt -S - aur [paquete]: fuerzas la compilación desde AUR de paquetes que se encuentra también en los repositorios.
Yaourt -G [paquete]: retrive PKGBUILD and local sources in current directory.
Yaourt -B: copia de seguridad de la base de datos de pacman.

Instalación de yaourt:

Agregar las siguiente líneas al fichero /etc/pacman.conf .

[archlinuxfr]

Server = http://repo.archlinux.fr/i686

Luego:

pacman -Sy yaourt

En el fichero /etc/pacman.conf tienen que comentar todas las líneas de los repositorios oficiales y dejarlos de la siguiente manera:

[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist

Volver a actualizar pacman:

pacman -Sy

y ya es posible utilizar yaourt.

[editar] Instalar un paquete desde UNSUPPORTED manualmente:

  • Localiza la aplicación en AUR usando el motor de búsqueda (nosotros usaremos foo como ejemplo) y haz clic en el nombre del paquete, en la lista de resultados. Esto te devolverá la pagina de información del paquete. En la parte izquierda puedes ver dos links juntos.
Archivo TAR :: Ficheros
  • Clic en "Archivo TAR" para descargar los archivos build necesarios a nuestro disco duro. El archivo se debería llamar 'foo.tar.gz'.
  • Copia el archivo 'foo.tar.gz' al directorio donde va a ser descomprimido, p.ej. /var/abs/local y descomprímelo. Esto debería crear un nuevo directorio, /var/abs/local/foo que contiene los archivos necesarios para compilar el paquete.
  • IMPORTANTE: Entra al nuevo directorio que se ha creado y comprueba el archivo PKGBUILD y cualquier .install en busca de código malicioso. Si tienes alguna duda, no instales el paquete y busca informacion en foros o listas de correo.
  • Se recomienda que uses fakeroot para compilar paquetes (véase abajo). Los paquetes seran descargados e instalados como usuario normal.
  • makepkg debería crear un archivo llamado foo.pkg.tar.gz que puede ser instalado con pacman
# pacman -U foo.pkg.tar.gz

[editar] Usando fakeroot

fakeroot simplemente permite a un usuario normal tener los privilegios de root necesarios para compilar paquetes sin alterar el sistema. Si el proceso de compilación intenta alterar ficheros fuera del entorno del usuario, entonces se empiezan a generar errores. Esto es muy útil para conocer la integridad/seguridad/calidad de los PKGBUILDs para su distribución. Por defecto; export USE_FAKEROOT="y" esta incluido en /etc/makepkg.conf asi que si no se ha editado, esta activado.

[editar] Enviando paquetes a UNSUPPORTED

Despues de identificarse en la interfaz web de AUR, un usuario puede enviar paquetes (tar.gz) de un directorio que contenga los archivos para la compilación. El directorio debe contener un PKGBUILD y los .install (prohibidos archivos binarios). Un ejemplo de como debe ser el directorio lo tenemos en /var/abs

Cuando enviamos un paquete, debemos tener en cuenta las siguientes reglas:

  • Comprobar [extra], [current], [unstable], UNSUPPORTED y [community]. Si el paquete esta incluido de alguna forma en algún repositorio, no lo mandaremos. (Si el paquete esta roto, o no incluye alguna característica, lo debemos comunicar en FlySpray
  • Verificar cuidadosamente que la subida sea correcta. Todos los contribuidores deben leer y adherirse a los estándares de empaquetado de ArchLinux al crear los PKGBUILDs. Esto es fundamental para el buen funcionamiento de AUR. Recordar que no vas a ganar ningún crédito o respeto de tus pares haciéndoles perder el tiempo con un mal PKGBUILD.
  • Los paquetes mal escritos o con binarios pueden ser borrados sin previa advertencia.
  • Si no estas seguro que el paquete sea correcto, envíalo a la lista de correo de AUR o a los foros oficiales para que sea revisado antes de incluirlo en AUR.
  • asegúrate que el paquete sea útil. ¿Cualquier persona deseara usar este paquete? ¿Es extremadamente especializado? Si hay suficientes personas que quieran usarlo, esta listo para ser enviado.
  • Gana suficiente experiencia antes de enviar los paquetes a AUR. Construye algunos paquetes para aprender el proceso antes de enviarlo.

[editar] Manteniendo paquetes en UNSUPPORTED

  • Comprueba los comentarios de los usuarios e intenta incorporar las mejoras que te sugieran. Considéralo un proceso de aprendizaje.
  • No envíes un paquete y te olvides de el. Es trabajo del usuario mantener y actualizar el PKGBUILD.
  • Si no deseas seguir manteniendo el paquete, exponlo en la lista de correo de AUR.

[editar] AUR-DMS (Descarga y Manejo de Scripts)

[editar] Lista de AUR-DMS

  1. aur-sync (Perl) - para bajar todos los tarballs de AUR
  2. aur-install (bash)
  3. aurup (bash) - para subir paquetes a AUR
  4. aurscripts (bash):
    1. aurcreate - Para crear paquetes listos y preparados para subirse en AUR
    2. aurdownload - descarga y extrae todos los paquetes de AUR
    3. aurupdate - actualiza versiones de paquetes especificados y sus md5sums
  5. autoaur (bash, depende de aurscripts, actualiza automáticamente todos los paquetes de AUR)
  6. aurbuild (Python *descontinuado*)
  7. yaourt (bash, basado en srcpac con soporte para AUR y mas)
  8. qpkg (Python, funciona también con aplicaciones que no están en AUR, *discontinuado*)
  9. autarchy (bash) - para crear un comprimido incluyendo todos los archivos requeridos por el PKGBUILD (mejor que aurcreate)


Todos estos scripts se encuentran en UNSUPPORTED.

Herramientas personales