Arch Linux is the kind of Linux distro that gives you a scalpel and says, “have at it” without much of the hand-holding that other distros like Debian/Fedora provide. Its initial toolset, including the core/extra/community repositories provided by its signature package manager, may be limited, but that is intentional.
It’s up to you to add what you want to it, and that is where the Arch User Repository (AUR) comes in useful. It is a repository that allows users to make their own PKGBUILD scripts and create packages that are not included in the official repositories. If you’ve ever wondered how you could get WhatsApp for Linux, Session, Slack, or other apps working on Arch, the AUR is where all of these are located.
The quickest way to install packages from the AUR is to get the PKGBUILD from the repository yourself and compile it with Arch’s
makepkg utility. However, a lot of people prefer not to go through this headache. This is where AUR clients (or AUR helpers) step in. They make the process of installing your apps super easy.
There are quite a few AUR helpers out there. Here are 4 of the most popular ones.
Written in Go, Yay (Yet Another Yogurt) is a powerful helper that solves dependencies for you and provides you with quick and automated access to the AUR. Anyone accustomed to using Pacman can immediately pick up Yay and use it out of the box. This is why Arch-based distros like EndeavourOS and Garuda Linux use this little helper as their standard window into Arch’s AUR.
Its powerful dependency resolution makes it perhaps the best utility for beginners.
All that being said, it does come with one caveat: Unless you configure it to answer some of its prompts automatically (check the manual for
--answerupgrade flags), it will constantly ask you whether you’d like to see more details regarding the package you’re installing every time you use it. On the other hand, some could consider this an advantage as it offers them more granular control over the package installation/upgrade process.
To install Yay in Arch Linux, use the following command:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/yay-git.git cd yay-git makepkg -si
Is Vim your go-to editor? Do you like having the ability to edit scripts in a quick and easy manner before installing? Are you the kind of person who likes to tinker your way out of bad situations? If you answered “yes” to all the above, you might like Paru more than Yay.
It’s worth mentioning that Paru and Yay are functionally the same tool (save for the fact that Paru is written in Rust), but Paru involves fewer steps in the process. It first finds the package in the AUR, prompts you to pick which version you’d like (much like how Yay lets you pick between the binary, the compiled version, and the “git” version in active development), then spills the content of the PKGBUILD script for you to review.
It may not be as granular, but it presents everything Yay does in a no-nonsense manner that’s relevant to the context with which you’re using it.
To install Paru in Arch Linux, use the following command:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/paru.git cd paru makepkg -si
Pacaur is an AUR helper that uses cower as a backend. It’s one of the more complex Arch User Repository helpers, and is commonly picked by advanced users looking to completely automate repetitive tasks. For example: Do you have a ton of AUR packages installed? Are you dreading having to sit at the keyboard entering options? With this you’ll be able to just enter your password and tell the program everything it needs to know. After that everything is smooth sailing.
To install Pacaur in Arch Linux, use the following command:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/pacaur.git cd pacaur makepkg -si
Not interested in Pacaur but still looking for something lightweight? Check out Trizen. It’s an AUR helper written in Perl instead of Bash (which gives it more flexibility). Compared to Pacaur, it offers a simpler syntax with most flags shortened to one single letter (
-U for upgrade,
-R for removal,
-S for sync). If you’re already accustomed to Pacman, don’t fret! Like every other AUR helper in this list, Trizen also lets you use Pacman’s flags.
Since the program is written in Perl instead of Bash, it is impossible to execute code silently, thus increasing the overall security of installing packages from the Arch User Repository.
What probably sets Trizen apart from the rest on this list, however, is the insane level of granularity it offers you. Not only does it let you edit the PKGBUILD script for each package you install on the spot, but it also lets you edit the desktop entry and any other executable shell scripts that come with it.
This program isn’t as well known as most of the others on this list, but it’s definitely worth a shot.
To install Trizen in Arch Linux, use the following command:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/trizen.git cd trizen makepkg -si
If you think that package managers on Arch are only terminal-based, think again! Made by Manjaro for its ease-of-use-oriented distro, Pamac offers a GUI front-end to package management for everything from Arch’s official repositories to the AUR. Its AUR-inclusive editions come in two flavors:
- pamac-aur – Includes just accessibility for the AUR.
- pamac-all – Allows you to access not only the AUR but also flatpak and snap repositories.
If you are extremely new to Arch and really don’t want to glue your eyes to a terminal constantly whenever you want to manage your installed applications, Pamac will offer you the best GUI-based experience.
The only real caveat to Pamac is that it isn’t as flexible when it comes to fixing broken PKGBUILD scripts. If you want to have the possibility of fixing things that go wrong during a package installation, I’d recommend installing one of the other fine AUR helpers in this list alongside Pamac.
To install Pamac in Arch Linux, use the following command:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/pamac-all.git cd pamac-all makepkg -si
Frequently Asked Questions
1. Are AUR helpers safe to use?
It’s worth noting that the AUR isn’t made to be inherently safe. Although bad packages get voted into oblivion quickly, it’s not malicious packages you should be wary of. Not every package maintainer is capable of managing a perfect update. As of the writing of this article, for example, Balena Etcher’s PKGBUILD has a problem with its epoch and people updating their AUR packages will be prompted to update the “balena-etcher” package until the issue is fixed.
That being said, aside from the occasional hilarity that happens with improperly maintained package, you shouldn’t expect to break your system because of this. What does present some level of danger is the possibility of executing partial upgrades. If your AUR helper crashes in the middle of updating the official arch repos, you might get some instability in your system until you execute a proper full upgrade.
To avoid this, always upgrade using Pacman first (
pacman -Syu), then use the AUR helper for upgrading your AUR packages!
2. Is it safe to use multiple AUR helpers?
As long as you’re not trying to use them simultaneously (i.e., opening two terminals and running Pacaur on one and Yay on the other), your computer won’t explode if you have both of them installed. AUR helpers should be viewed more as wrappers for Pacman that add AUR capabilities on top of it. Because they query the same files on your system, they generally won’t interfere with each other. The only issue I can conceive of is that you’ll be maintaining a cache for each AUR helper, which isn’t great when you’re working with limited storage space.
3. Which AUR helper is the most user-friendly?
The more beginner-friendly Yay or Paru are probably your best bets. They both achieve a good balance of allowing you a great degree of control over how you explore the AUR while avoiding the information overload that could be overwhelming to people newer to Linux/Arch.
Our latest tutorials delivered straight to your inbox