
Arch User Repository, popularly known as AUR, is the community-driven software repository for Arch users. Debian/Ubuntu users can think of AUR as the equivalent of PPA.
It contains packages that are not directly endorsed by Arch Linux. If someone develops software or package for Arch Linux, it can be provided through this community repositories. This enables the end-user to access more software than they get by default. For example, you can install Goole Chrome on Arch Linux this way.
So, how do you use AUR then? Well, Archβs package manager pacman doesnβt support it directly.
While you can take the longer route and use git to clone the package repo from AUR and the use makepkg
to compile it, an AUR helper tool makes things a lot easier.
What is an AUR helper?
An AUR helper is a command line tool that enables you to interact with the Arch User Repository (AUR), search for packages, install them and even update them. There are various AUR helpers that may or may not have the same command syntax.
Let me share some of the popular AUR helpers you can use to easily get access to a vast number of packages available from the Arch community.
makepkg
command. There is no easy to use 'pacman -S' way here. 1. yay
yay is the next best AUR helper written in Go to provide an interface of Pacman with minimal user input, yaourt-like search, and almost no dependencies.
Features of yay
- Provides completions for AUR packages and downloads the PKGBUILD from ABS or AUR.
- Supports search narrowing and no sourcing of PKGBUILD.
- The binary has no additional dependencies than pacman.
- Provides advanced dependency solver and removes make dependencies at the end of the build process.
- Supports colored output when you enable the Color option in the /etc/pacman.conf file.
- It can be made to support only AUR packages or only repo packages.
- Un/Vote for packages
Installing yay
You can install yay by cloning the git repo and building it. Use the below command to install yay in Arch Linux :
sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
Using yay
Use | Command |
---|---|
Searching an application | yay -Ss <package-name> |
Installing an application | yay -S <package-name> |
Present package-installation selection menu | yay <package name> |
Update system | yay because of the alias set to yay -Syu |
We have a dedicated tutorial on using yay:

2. Paru
Paru is a feature-packed AUR helper, written in Rust language. It's been developed by one of the developers of yay AUR helper and both are under active development and maintenance. It offers a lot of features and minimal interaction.
Features of Paru
- Print the PKGBUILD File with syntax highlighting
- AUR comment support
- Local repo and chroot support
- Verbose search with
-Sss
- Flag to download AUR packages via SSH
- Option to keep older packages in the local repo
- Print news on upgrade
- Support for signing packages
- Interactively search for packages
Installing Paru
sudo pacman -S --needed base-devel
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si
Using Paru
Use | Command |
---|---|
To search for packages | paru -Ss <package name> |
To install a package | paru -S <package name> |
To interactively search for packages | paru <package name> |
Update your system | paru because of the alias set to paru -Syu |
3. Pakku
Pakku is another pacman wrapper. Although its original creator went busy with other projects, the package is maintained by Pakku users and the Nim community. It does its job pretty nicely, and searching and installing applications from AUR removes dependencies after a build.
Features of pakku
- Searching and installing packages from Arch User Repository.
- Viewing files and changes between builds.
- Building packages from official repositories and removing make dependencies after a build.
- PKGBUILD retrieving and Pacman integration.
- Pacman-like user interface and pacman options support.
- Pacman configuration supports and no PKGBUILD sourcing.
Installing pakku
git clone https://aur.archlinux.org/pakku.git
cd pakku
makepkg -si
Using pakku
Use | Command |
---|---|
Search for an application | pakku -Ss <package name> |
Install a package | pakku -S <package name> |
Only work with AUR packages | pakku -Sz |
Query all "dependency islands" | pakku -Qdttt |
4. aurutils
aurutils is basically a collection of scripts that automates the usage of the Arch User Repository. It can search AUR, check updates for different applications installed, and settle up dependencies issues.
Features of aurutils
- aurutils uses a local repository which gives it the benefit of pacman file support, and all packages work with βasdeps.
- There can be multiple repos for different tasks.
- Update local repository in one go with aursync -u.
- pkgbase, long format and raw support for aursearch.
- Ability to ignore package.
Installing aurutils
git clone https://aur.archlinux.org/aurutils.git
cd aurutils
makepkg -si
Using aurutils
Once installed aurutils, you need to configure it for use. You can find a detailed guide on configuring aurutils here.
Use | Commands |
---|---|
Download and build AUR package and place it in the custom repository | aur sync <name> |
Installing a package from AUR | use sudo pacman -S <name> to install downloaded aur package |
Update all installed AUR packages | aur sync -u |
List AUR packages | aur pkglist |
These packages can be installed directly if you are already using Yaourt or any other AUR helper.
5. Pamac
Pamac is a gtk frontend for libalpm. It is the default package manager in Manjaro but you may also install Pamac on Arch Linux.
Pamac GUI allows to use packages from Snap, Flatpak and AUR. There is a CLI version as well and you can use it as an AUR helper.
Features of Pamac
- CLI package management with pamac-cli
- A GTK-3 GUI
- Library to access package infos and run transactions
- Flatpak and Snap support
- Tray appindicator which notifies you about updates
Installing pamac
git clone https://aur.archlinux.org/pamac-aur.git
cd pamac-aur
makepkg -si
Using pamac
Pamac can be used either through the terminal or the GUI. I'll go with the command line here.
Use | Command |
---|---|
Search for a package | pamac search <package> |
To install a package | pamac install <package> |
To uninstall a package | pamac remove <package> |
To display a list of all installed packages | pamac list -i |
For a detailed guide to pamac, you can refer to its Manjaro Wiki page.
6. Trizen
Trizen is a lightweight wrapper for AUR, written in Perl. Yes, Perl is still being used, don't be too surprised.
Features of Trizen
- Search and install packages from AUR
- Reading AUR comments for packages
- Recursive resolve AUR dependencies
- Built-in interaction with 'pacman'
- Upgrade support for AUR packages
Install Trizen
git clone https://aur.archlinux.org/trizen.git
cd trizen
makepkg -si
Using Trizen
Use | Command |
---|---|
To search for packages | trizen -Ss <package name> |
To install a package | trizen -S <package name> |
To display AUR comments | trizen -C <package name> |
To remove a package | trizen -R <package name> |
7. Pikaur
Pikaur is an AUR helper written in python, with minimal dependencies. It allows you to review the PKGBUILD all at once and build them without user interaction.
Pikaur wraps all the pacman options accurately except for -Syu
which is being split into -Sy
(to refresh package list first) and -Su
(to install upgrades after the user confirmed the package list or altered it via Manual package selection).
Features of Pikaur
- Retrieve PKGBUILDs from AUR and ABS
- Build local PKGBUILDs with AUR deps
- Show unread Arch news before sysupgrade
- AUR package names in shell completion (bash, fish, zsh)
- Interactively handle common build problems (like untrusted GPG key or checksum mismatch, wrong architecture)
Install Pikaur
sudo pacman -S --needed base-devel git
git clone https://aur.archlinux.org/pikaur.git
cd pikaur
makepkg -fsri
Using Pikaur
Use | Command |
---|---|
To search for packages | pikaur -Ss <package name> |
To install a package | pikaur -S <package name> |
To display package info | pikaur -Si <package name> |
To upgrade system | pikaur -Syu |
Which one to use?
For a long time, Yaourt (Yet AnOther User Repository Tool) was my goto tool for AUR. It was a wrapper for Pacman tand used the same syntax as Pacman. After Yaourt discontinued, I have switched to Yay. It serves the purpose.
To an average user like me, any AUR helper with a similar syntax as the Pacman command is more than sufficient.
Arch Linux has some more AUR helpers that can automate specific tasks for the Arch User Repository. In case you want to check them out.
π¬ What do you think? Which AUR helper do you want to use? Share it in the comments, please.