Get started

Add Chaotic-AUR to pacman in five steps, then learn how builds and reviews work.

Setup

  1. Import the primary key

    Retrieve and locally sign the primary key. It lets pacman trust our keyring and mirror list.

    $ sudo pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
    $ sudo pacman-key --lsign-key 3056513887B78AEB
    shell
  2. Install the keyring and mirror list

    This installs chaotic-keyring and chaotic-mirrorlist.

    $ sudo pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
    $ sudo pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
    shell
  3. Add the repository to pacman

    Append the following to the end of /etc/pacman.conf:

    [chaotic-aur]
    Include = /etc/pacman.d/chaotic-mirrorlist
    ini
  4. Sync and update

    Run a full system update, which also syncs our mirror list.

    $ sudo pacman -Syu
    shell
  5. Install packages

    The repository is ready to use.

    $ sudo pacman -S firedragon
    shell

Reporting bugs

Report package bugs to our bug tracker or comment on the AUR first. Report upstream only after you confirm that the issue is not a packaging issue. This gets bugs fixed faster.

Package builds

The deploy log shows whether a package was deployed after its last AUR update. Report build failures or broken packages as an issue in our GitHub repository.

Our main repository is on GitLab, because the build system uses its CI pipelines extensively.

Requesting new packages

Submit package requests as an issue in our GitHub repository. We prefer GitHub for historical reasons, so requests on GitLab can go unnoticed.

Before you submit a request:

  • Search the existing issues. We possibly handled or removed the package before, for a reason.
  • Make sure that the license permits redistribution.
  • Make sure that the package is not on our ban list.

Recommendations

To keep a locally built version of a package (for example with native optimizations), ignore its updates in /etc/pacman.conf:

IgnorePkg = ...
ini

To install a package from a specific repository, prefix it with the repository name:

$ sudo pacman -S chaotic-aur/mesa-tkg-git
shell

AUR helpers like paru support the same syntax:

$ paru -S chaotic-aur/firefox-nightly
shell

Update review process

Some AUR updates change more than pkgver, pkgrel or checksums. For these, our build system opens a merge request against the pkgbuilds repository. Packages that build from a git branch update automatically when only their upstream commit changes. The state branch tracks these commits. AUR updates that change the PKGBUILD are the exception.

The system flags suspicious changes automatically. Then a maintainer inspects each diff for malicious changes. A merge request is merged and deployed only after a human approves it.

The review queue shows the pending updates.

AUR package scan

Screen AUR packages before you install them with our AUR scanner. It fetches the PKGBUILD and its sources and inspects them with our static security rules.

It also shows maintainer insights, such as novice maintainers and orphaned packages. Always read the source code and PKGBUILD before you install a package. The scanner shows them next to the findings.

Public API

Chaotic-AUR has a public JSON API to query packages, builds, metrics and repository state. The interactive API documentation lists all endpoints and schemas.

Further information

The Chaotic Manager documentation explains the build system in depth.