Arch User Repository
Overview
Although Manjaro is 100% Arch compatible - being based on Arch itself - it is not possible access the official repositories of the Arch System to download software. Manjaro instead uses its own official repositories in order to ensure that any software packages provided (e.g. system updates and applications) have been fully tested and are completely stable before release.
However, it is still possible to access additional software packages from the Arch User Repository (AUR), which is managed by the Arch community (i.e. users) themselves. Although this repository is unofficial, software packages first placed here are known to make their way into Arch's official repositories if they become popular enough. Unfortunately, as a community maintained repository, using the AUR does still present potential risks and problems. These include the AUR providing:
- Multiple versions of the same packages
- Out of date packages
- Broken or only partially working packages
- Improperly configured packages (e.g. downloading unnecessary dependencies, and/or not downloading necessary dependencies)
- Malicious packages (although extremely rare)
As such, although much of the software packages provided by the AUR should work, do not expect the installation process to always be quite as straightforward as when using the official repositories. On occasion, it may be necessary to manually identify and install dependencies yourself after an aborted installation attempt, for example. In addition, there is no guarantee that any installed software will work properly, if at all.
Accessing the AUR
Two packages are required in order to access the AUR, which can be installed using the terminal:
1. The base-developer group package: Rather than downloading pre-compiled software packages for installation, you will instead be downloading the instructions for Manjaro to build and compile them on your system. The base-developer group package is required to do this. This should be pre-installed on Manjaro 0.8.1 onwards.
2. Either yaourt or packer: Either of these are used to search and download from the AUR, rather like pacman is used to search and download from from Manjaro's official repositories. Both will also automatically find and download the necessary dependencies for downloads as well, provided that the software packages to be installed properly state which dependencies are needed. Which of these tools you may chose is entirely down to personal preference. However, yaourt (an acronym for Yet AnOther User Respository Tool) seems to be the most popular choice for users.
- To install the base developer group package and yaourt, enter the command:
sudo pacman -S base-devel yaourt
- To install the base developer group package and packer, enter the command:
sudo pacman -S base-devel packer
Once entered, follow the (simple) on-screen prompts to complete the installation process.
Searching for and Installing Software From the AUR
Both yaourt and packer are automatically configured to search the AUR for software packages; there is no need to configure any files or such after installation to make them work. They are also very similar to pacman to use. Furthermore, as with pacman, it is not necessary to specify precise or complete package names to search for or download packages. For example, if wishing the download the Avant Window Navigator (a popular dock/toolbar), simply entering 'avant' will yield a list of potential matches to browse and select from.
While the use of the sudo command is a convention when using pacman to install files (e.g. sudo pacman -S [software package name]), it is not necessary to use this with yaourt or packer. Instead, to search for and install software packages from the AUR, the syntax is:
[yaourt or packer] [software package name]
As illustrated, a search for the Avant Window Navigator was undertaken with yaourt using the command yaourt avant. This has resulted in ten possible matches being listed. Any combination of listed packages can be downloaded by simply entering their numbers. For example, entering 3 would install the package avant-window-navigaor-bzr. Adding 5 after this would also install extra applets for for this package (e.g. 3 5).
Once the number(s) of your chosen software package(s) have been entered, and the installation process has begun, user comments from the AUR website may be displayed if using yaourt. You may also be presented with a standard warning that the download package is unsupported and potentially dangerous.
You may also be asked if you wish to Edit PKGBUILD. Unless you know what you are doing, always type n for 'no' when asked. The purpose of this option is to allow experienced users to inspect the instructions that will be used to build the package(s) to be installed. As dependencies may also have to be installed first in the process, it is possible to be prompted to edit these as well. Although you should just keep entering 'no' to these prompts, be aware that you will also be prompted on occasion to continue the installation as well. So make sure you read each prompt properly before entering anything, else you could end up aborting the installation by accident!