[HowTo] Use the AUR

Difficulty: ★★☆☆☆

What is AUR?

The Arch User Repository is an online repository, managed by the Arch community rather than the Arch packagers.

:warning: AUR differs from the Manjaro repositories by multiple, important key points:

  • AUR does not contain packages, but PKGBUILDs. See below for details.
  • AUR is not managed by Manjaro.
    • There is thus no official support for AUR packages.
    • Package compatibility is not ensured for all points in time. See below for details.
  • AUR is not managed by Arch packagers either.
    • pacman, Arch’s official package manager, does not manage AUR packages (directly). See below for details.
  • AUR packages are maintained by the Arch community.
    • Although limited to Trusted Users, PKGBUILDs in AUR are managed by people outside the Arch team, and are thus more loosely controlled.
    • Arch users are the target audience of AUR. They don’t officially support any Arch derivative.

For more details, see:

Why do i have AUR packages installed?

Unless installed explicitly from AUR, such packages may have been originally installed, either explicitly or as dependencies, when they were still in the main repositories.
Indeed, some packages in AUR were formerly in Arch’s repositories – and thus in Manjaro’s. Arch maintainers regularly check for packages to drop from their repositories; those packages are then removed from their repositories – and thus later from Manjaro’s – and moved to AUR.

:information_source: Packages dropped to AUR can, usually, be safely removed from your system.

  • No package in Manjaro’s repositories have a mandatory dependency with AUR packages. They may have optional dependencies there though, in order to add functionalities.
  • An AUR package may require another AUR package.
  • Before removing an AUR package, you can look for installed packages requiring it:
pactree -r <package_name>

How do i install an AUR package?

Globally speaking, installing an AUR package takes three steps:

The detailed procedure is described there: Arch User Repository - ArchWiki
If you have trouble building a package, see: [HowTo] Fix a failing AUR package build

What package to install?

It is not uncommon to find several packages with a same base name, but different suffixes. That suffix, by convention, defines the source used:

  • (no suffix) : Usually takes the source code from the latest release.
  • -bin : Takes an already compiled binary source from the latest release. It can be an official release binary or a package in another format (DEB, RPM…).
  • -git : Takes the source code from the ongoing development version.

How do i update an AUR package?

Updating an AUR package is roughly similar, the only difference being that you must use the up-to-date PKGBUILD.

:warning: Since AUR is maintained by Arch users for Arch users, updates in AUR and in Manjaro’s repositories are usually not synchronized:

  • You may need to delay an AUR package update in order to comply with its dependencies from Manjaro’s repositories.
  • You may need to manually start a rebuild of an AUR package after a dependency update from Manjaro’s repositories.

How do i rebuild an AUR package?

Rebuilding an AUR package is the same as (re)installing it. The only difference is usually that (build) dependencies have changed, and the package thus needs to be rebuilt in order to stay compatible with the system.

Can i automate the process?

Manjaro develops pamac as an alternative for Arch’s pacman and, contrarily to the latter, supports AUR management. Utilities with this functionality are called AUR helpers; see the link for more alternatives.

:information_source: AUR support is disabled by default in pamac. You first need to disable its Software mode, and then enable AUR support in its settings.

:warning: Despite this, AUR packages installed through pamac are still not officially supported by Manjaro. It makes their management easier, that’s it. :palm_tree:

6 Likes

One thing I might add is that new users likely should not replace system components with AUR packages. Applications are usually safe, but if an update lags and an app stops working its just a problem with that app. If a system component lags it could make the system unusable.

1 Like