Se ha presentado el lanzamiento del proyecto Aura 4.0.0, desarrollando un administrador de paquetes para la distribución Arch Linux, ampliando las capacidades del administrador de paquetes estándar Pacman. El proyecto fue creado en 2012 e inicialmente tenía como objetivo proporcionar herramientas para la construcción de paquetes para el repositorio AUR (Arch User Repository), utilizado para que desarrolladores externos distribuyan sus paquetes que no están incluidos en los repositorios principales de la distribución Arch Linux. El código del proyecto se distribuye bajo la licencia GPLv3.
Además de las funciones específicas de AUR, Aura también proporciona otras funciones que amplían la funcionalidad de Pacman (actualmente sólo 1/3 de las funciones avanzadas de Aura son específicas de AUR). Por ejemplo, hay herramientas disponibles para analizar visualmente dependencias, trabajar con instantáneas de conjuntos de paquetes (para guardar y restaurar el estado), administrar dependencias residuales y revertir paquetes individuales o todo el sistema a versiones anteriores.
El administrador de paquetes Aura es totalmente compatible con Pacman y admite todos sus comandos y opciones (Aura se puede utilizar como reemplazo de Pacman con funciones avanzadas). Las funciones adicionales relacionadas con AUR se activan especificando la opción de línea de comando "-A", y las herramientas para trabajar con instantáneas y versiones se activan a través de las opciones "-B" y "-C", que no se superponen con las opciones de Pacman. . También se ofrecen comandos adicionales como "check", "conf", "free", "stats" y "deps" para verificar la integridad del sistema, trabajar con la configuración, analizar licencias, ver estadísticas y analizar dependencias.
La funcionalidad de Pacman se recrea utilizando la biblioteca libalpm, que ofrece las capacidades básicas de administración de paquetes utilizadas en el administrador de paquetes Pacman. El proyecto también mantiene su propio servidor con metadatos de paquetes, lo que puede acelerar significativamente las búsquedas de paquetes y la resolución de dependencias.
La nueva versión se destaca por la reescritura completa del código base, que se traduce del lenguaje Haskell al lenguaje Rust. Cambiar el idioma hizo posible aumentar significativamente la productividad, simplificar la instalación, utilizar enlaces Rust listos para usar para libalpm, hacer que el proyecto sea más atractivo para los nuevos desarrolladores, mejorar la interfaz de la línea de comandos y reducir 4 veces el tamaño del archivo ejecutable.
Se agregó el comando “aura deps”, que le permite generar imágenes con una representación visual de las dependencias. Por ejemplo, para ver los paquetes que dependen de gcc, puede ejecutar "aura deps gcc -reverse -optional -open", y para ver los paquetes de los que depende gcc, puede ejecutar "aura deps gcc -limit=3 -open":


Fuente: opennet.ru
