LinuxCommandLibrary

aura

Manage Arch Linux packages from the AUR

TLDR

Search for packages from the official repositories and AUR

$ aura --aursync --both --search [keyword|regex]
copy

Install a package from the AUR
$ aura --aursync [package]
copy

Update all AUR packages in a verbose mode and remove all make dependencies
$ aura --aursync --diff --sysupgrade --delmakedeps --unsuppress
copy

Install a package from the official repositories
$ aura --sync [package]
copy

Synchronize and update all packages from the official repositories
$ aura --sync --refresh --sysupgrade
copy

Downgrade a package using the package cache
$ aura --downgrade [package]
copy

Remove a package and its dependencies
$ aura --remove --recursive --unneeded [package]
copy

Remove orphan packages (installed as dependencies but not required by any package)
$ aura --orphans --abandon
copy

SYNOPSIS

aura [global options] <operation> [package(s)...]

Common operations:
aura -Syu (Sync and upgrade official and AUR packages)
aura -S <package(s)> (Install official packages)
aura -A <package(s)> (Install/build AUR packages)
aura -R <package(s)> (Remove packages)
aura -Ss <query> (Search for packages)
aura -Qi <package> (Display package information)
aura -Cc (Clean package cache)

PARAMETERS

-S, --sync
    Synchronize packages. Used for installing, upgrading, and querying the official repositories. Often combined with -y and -u.

-A, --aur
    Operate specifically on AUR packages. This implies fetching PKGBUILDs, building, and installing.

-R, --remove
    Remove specified packages from the system.

-U, --upgrade
    Upgrade or install local packages (e.g., .pkg.tar.zst files).

-Q, --query
    Query the package database for installed packages or specific package information.

-Ss, --search
    Search the official repositories and AUR for packages matching a query.

-Qi, --info
    Display comprehensive information about a specific package.

-C, --cache
    Manage the package cache, e.g., to clean old packages with -Cc.

--foreign
    Restrict operations to packages installed from the AUR (foreign packages).

--orphans
    Manage orphaned packages (installed as dependencies but no longer required).

--noconfirm
    Bypass all confirmation prompts. Use with caution.

--ignore
    Do not upgrade or install the specified package(s).

-h, --help
    Display help information for aura or a specific subcommand.

-V, --version
    Display the current version of aura.

DESCRIPTION

aura is a command-line utility designed to simplify the management of packages on Arch Linux, with a primary focus on the Arch User Repository (AUR). Written in Haskell, it aims to provide a fast, reliable, and user-friendly experience, mirroring the syntax and feel of pacman, the official Arch Linux package manager.

aura allows users to seamlessly install, update, remove, search for, and query information about both official repository packages and those from the AUR. It handles the process of fetching PKGBUILDs, resolving dependencies, compiling software, and installing the resulting packages, significantly streamlining the use of the community-driven AUR. Beyond basic package management, aura offers features like cache cleaning, orphan package management, and a dedicated interface for managing Haskell packages.

CAVEATS

aura operates on the Arch User Repository (AUR), which is a community-driven collection of PKGBUILDs. Packages from the AUR are user-contributed and not officially supported by Arch Linux. Users should exercise caution and review PKGBUILDs before building and installing AUR packages, as they involve compiling and installing software from potentially untrusted sources.

aura requires pacman and base-devel (for build tools like make and gcc) to function correctly. While aura simplifies the process, the underlying security considerations of using the AUR remain.

THE ARCH USER REPOSITORY (AUR)

The AUR is a community-driven repository for Arch Linux users. It contains PKGBUILDs, which are shell scripts that allow users to compile software from source and install it via pacman. It's a vast source for software not available in the official repositories, but requires user vigilance regarding package integrity.

PKGBUILDS

A PKGBUILD is a build script that makepkg (and thus aura) uses to create pacman packages. It defines package metadata, dependencies, build instructions, and installation procedures. Users are encouraged to inspect PKGBUILDs for safety before building AUR packages.

HISTORY

aura was created by Jonathon Foss (Fosskers) and is written entirely in Haskell. Its development aimed to provide an alternative AUR helper that was fast, reliable, and offered a user interface consistent with pacman. It has been actively maintained, gaining a reputation for its clear output, robust error handling, and dedicated features like Haskell package management, which are a nod to its underlying language.

SEE ALSO

pacman(8), makepkg(8), yay(8), paru(8)

Copied to clipboard