Arch Linux aura¶
- ID
aura- Links
- Upstream stars
⭐ 1,918
- Last commit
2026-01-13
- Version requirement
>= 4
- Platforms
🅱️ BSD · 🐧 Linux · ⨂ Unix
- Operations
installed·outdated·orphans·search·install·upgrade·upgrade_all·remove·sync·cleanup·doctor- purl types
pkg:alpm/·pkg:aura/- CLI name
aura- Every call
aura --noconfirm <command>- Issues and PRs
- Source
AUR helper wrapping pacman, driven through the aura binary.
Aura reuses every parser and query of Pacman unchanged, but not its
forced arguments and not its outdated(): those are the two places
where a v4 aura differs from the helpers around it.
Note
Every v4 subcommand answers to a long name, a pacman letter and a long
pacman flag alike, so aura --query --upgrades and aura -Qu are one
command. That is what lets this class inherit Pacman’s operations
verbatim rather than restating them against a clap-only vocabulary.
Important
Repository upgrades and AUR upgrades are two commands here, where yay and
paru fold both into one --query --upgrades. Aura’s -Qu reads the
local ALPM database against the sync databases, so it reports the official
repositories alone and an out-of-date AUR package stays invisible to it.
The AUR half lives behind --aursync --sysupgrade --dryrun, which reports
without acting. outdated() runs both and concatenates them, so mpm
reports what an aura -Syu followed by an aura -Au would actually
upgrade.
What mpm adds to aura¶
Through mpm, aura gains:
a one-command
cleanup --orphansthat removes every orphaned dependency at once--extendedsearch, to match against package descriptions
Bigger still, mpm reaches across every manager at once: mpm installed and mpm outdated cover aura alongside dkp-pacman, pacaur, pacman, pamac, paru, pikaur, shelly, trizen, yay and any other manager you run in one table, mpm upgrade --all updates them together, and mpm sbom exports the whole machine as one bill of materials.
Every mpm command also gains --dry-run and --plan previews, cross-scheme version comparison and purl identifiers. See manager augmentations for how each one is built.
Your aura commands, in mpm¶
You already know aura: each operation maps one-to-one onto mpm, in an interface shared by every manager.
To… |
With |
With |
|---|---|---|
List what’s installed |
|
|
List outdated packages |
|
|
Search for a package |
|
|
Install a package |
|
|
Upgrade one package |
|
|
Upgrade everything |
|
|
Remove a package |
|
|
List orphaned dependencies |
|
|
Clear caches |
|
|
Run health checks |
|
|
Prefix any command above with --dry-run to simulate the underlying manager calls without touching the system: the safe way to watch what mpm would do before trusting it.
Operations¶
Operation |
Supported |
Notes |
|---|---|---|
|
✅ |
|
|
✅ |
Only packages tracked in a sync database are reported; foreign packages (AUR builds, |
|
✅ |
|
|
✅ |
Extended search backfilled by |
|
✅ |
A package already installed as a dependency is marked explicit by |
|
✅ |
|
|
✅ |
|
|
✅ |
The |
|
✅ |
|
|
✅ |
The |
|
✅ |
Configuration¶
Ignore
auraon thempmCLI by passing the--no-auraoption.Ignore it for every run in your configuration:
[mpm] aura = false
Raise the timeout of all
auracalls:[mpm.overrides.aura] timeout = 900
Run
mpm config-template aurato print all overridable settings for your configuration file:[mpm.overrides.aura] cli_names = [ "aura", ] cli_search_path = [] dry_run = false ignore_auto_updates = true plan = false post_args = [] pre_args = [ "--noconfirm", ] pre_cmds = [] requirement = ">=4.0.0" stop_on_error = false unmaintained = false version_cli_options = [ "--version", ] version_regexes = [ "aura\\s+(?P<version>\\S+)", ]
The arguments and environment variables listed in the box atop this page are forced on every aura call, so runs stay quiet, non-interactive and reproducible: the defaults you would set in CI anyway.
Recipes¶
A few jobs you would otherwise script around aura, one mpm command each:
Snapshot and clone a machine:
mpm --aura dump aura.toml, thenmpm restore aura.tomlon the next one.Export a compliance SBOM:
mpm --aura sbom(CycloneDX by default,--spdxfor SPDX).Gate CI on health:
mpm --aura doctorrelays Arch Linux aura’s own diagnosis and exits non-zero on trouble.
Privilege escalation¶
Arch Linux aura runs sudo from inside its own commands: mpm never wraps it, keeps an already-warm credential cache alive for those internal escalations, and warns when a mutating call goes silent on a terminal with a cold cache and no prompt on screen, since a password prompt may be hiding in the stream.
See privilege escalation for the full policy.
Concurrency¶
mpm never runs aura at the same time as pacaur, pacman, pamac, paru, pikaur, trizen or yay: they all reach the pacman database (/var/lib/pacman/db.lck), and two of them mutating at once fail to init their transaction. Each mutating operation waits for the previous one, even with a higher --jobs, while managers outside this group keep running in parallel.
Only mutations are held back. The read-only queries (installed, outdated, search) take no backend lock and stay fully concurrent.
Cooldown¶
State of Arch Linux aura’s release-age gating, from the cooldown support table:
Status: ❌ None (Arch AUR helper; could take paru’s probe)
A cooldown only pays off where a compromised release can be withdrawn while the clock runs, and can only be emulated where the registry dates its releases. From the retraction table:
Registry: AUR
Retraction: None at the version level: an AUR package is a git repository with no per-version artifact to withdraw, so remediation is a maintainer push or deletion of the whole package
Publish date: ✅ server-set
LastModified, the push timestampmpm’syayoverlay andparuprobe gate on. Git commit dates are client-set (GIT_COMMITTER_DATE), forgeable, and never consulted
With --cooldown set, mpm skips this manager’s install and upgrade operations rather than run them unguarded (fail-closed); --cooldown best-effort opts back in.
Reference traces¶
A collection of raw native outputs captured from the manager’s own CLI and recorded in the manager source. If you know Arch Linux aura well and a transcript below looks wrong, or a newer release changed its output format, report it.
$ aura --noconfirm --query --upgrades
kmscon-terminfo 10.0.2-2 -> 10.0.3-1
python-platformdirs 4.11.5-1 -> 4.11.7-1
$ aura --noconfirm --aursync --sysupgrade --dryrun
yay-bin :: 12.6.0-1 -> 13.0.1-1
Version check¶
The version is probed by running:
$ aura --version
aura 4.2.0
and extracted with:
r"aura\s+(?P<version>\S+)"
Upstream project¶
Metrics |
|
|---|---|
Activity |
|
Popularity |
|
Metadata |
|
Changelog¶
8.1.2(2026-10-12)Run
syncandcleanuplast and without a spinner on a coldsudocache, so the tool’s own password prompt can be answered.
8.0.0(2026-09-20)Mark a package already installed as a dependency as explicitly installed when
mpm installormpm restorenames it, sompm cleanup --orphanskeeps it.Add the aura AUR helper, reporting repository and AUR upgrades together.