Home

Awesome

<div align="center"> <img src="/logo/medium-150x150.png">

The Aura Package Manager

img Crates.io Version img Uptime Robot ratio (30 days)

<div> :uk: :jp: :croatia: :sweden: :de: :es: :portugal: :fr: :ru: :it: :serbia: :norway: :indonesia: :cn: :netherlands: :tr: :saudi_arabia: :ukraine: :romania: :vietnam: :czech_republic: :kr: :india: :bangladesh: </div> <br> </div>

Welcome to the main repository for Aura, a multilingual package manager for Arch Linux.

Looking for help? Try:

Looking to migrate from Aura 3 to Aura 4? See the Migration Guide.

If this project is useful to you, please consider sponsoring it.

<!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-refresh-toc -->

Table of Contents

<!-- markdown-toc end -->

What is Aura?

Aura is a package manager for Arch Linux. Its original purpose was in supplementing Pacman to support the building of AUR packages, but since its creation in 2012 it has evolved to enable a variety of use cases.

The Aura Philosophy

Aura is Pacman

Aura doesn't just mimic pacman; it is pacman. All pacman operations and their sub-options are accepted, as-is.

Arch is Arch - AUR is AUR

Aura does not augment or alter pacman's commands in any way.

-S yields repository packages and <u>only</u> those. In Aura, the -A operation is introduced for obtaining AUR packages. -A comes with sub-options you're used to (-u, -s, -i, etc.) and adds new ones to enhance AUR interaction.

Downgradibility

Aura allows you to downgrade individual packages to previous versions with -C. It also handles snapshots of your entire system, so that you can roll back whole sets of packages when problems arise. The option -B will save a package state, and -Br will restore a state you select. -Au also invokes a save automatically.

Independence

Aura has its own configuration file, its own local package cache, and its own Metadata Server called the Faur. The Faur in particular helps reduce traffic to the main AUR server and allows us to provide unique package lookup schemes not otherwise available.

Multilingualism

English is the dominant language of computing and the internet. That said, it's natural that some people are going to be more comfortable working in their native language. From the beginning, Aura has been built with multiple-language support in mind, making it very easy to add new ones via the Project Fluent format.

Installation

From the AUR

The Tagged Release

The recommended package is simply named aura. It uses cargo to build a fresh binary on your machine, based on releases made to Rust's crates.io.

git clone https://aur.archlinux.org/aura.git
cd aura
makepkg -s
sudo pacman -U <the-package-file-that-makepkg-produces>

The git-based Build

If instead you'd like to directly track updates to Aura's master branch, install the git variant:

git clone https://aur.archlinux.org/aura-git.git
cd aura-git
makepkg -s
sudo pacman -U <the-package-file-that-makepkg-produces>

The Prebuilt Binary

Finally, if you don't wish to build Aura yourself or want to avoid any trace of Rust tooling on your machine, there is a prebuilt binary of Aura for x86_64 machines:

git clone https://aur.archlinux.org/aura-bin.git
cd aura-bin
makepkg -s
sudo pacman -U <the-package-file-that-makepkg-produces>

Building from Source

If you already have Rust tooling installed on your machine and/or wish to help develop Aura, you can also install it manually:

git clone https://github.com/fosskers/aura.git
cd aura/rust
cargo install --path aura-pm

This will build and install the binary to /home/YOU/.cargo/bin/.

Keep in mind that this variant of Aura won't be tracked in pacman's database, and so it will be easier to miss updates. It also does not install completions or other documentation files like manpages.

Post-installation

The first thing you should do is run check:

aura check

This will scan your system for irregularities and suggest fixes. Second, you should generate an Aura config file:

aura conf --gen > ~/.config/aura/config.toml

Consider setting the language field here, if you wish to use Aura in a language other than English. The available language codes are viewable via:

aura stats --lang

Aura will also automatically detect your locale via LANG, so you only need to set language if you want a custom combination of system language and Aura language.

Sample Usage

Full usage information can be found in Aura's man page and within The Book.

❗ Attention: As of the 4.x series, sudo is no longer necessary when running Aura. When escalated privileges are required, Aura will automatically prompt you.

> aura -A qlot
> aura -B
aura :: Saved package state.
> aura -C qlot
aura :: What version of qlot do you want?
 0) 1.5.6-1
 1) 1.5.1-1
>>
> aura -Li firefox
Name           : firefox
First Install  : 2016-05-03 08:46
Upgrades       : 176
Recent Actions : 
[2024-02-24T07:29:46+0900] [ALPM] upgraded firefox (122.0.1-1 -> 123.0-1)
[2024-03-11T16:42:37+0900] [ALPM] upgraded firefox (123.0-1 -> 123.0.1-1)
[2024-03-24T15:03:33+0900] [ALPM] upgraded firefox (123.0.1-1 -> 124.0.1-1)
> aura -O
asar 3.2.8-1
> aura check
aura :: Validating your system.
aura :: Environment
  [✓] locale -a contains LANG value? (en_US.UTF-8)
  [✓] Aura is localised to your LANG?
  [✓] EDITOR variable set?
  [✓] EDITOR value (emacs) is executable?
  [✓] Java environment set?
... etc. ...
> aura conf --gen > ~/.config/aura/config.toml
> aura deps gcc --reverse --optional --limit=3 --open
<p align="center"> <img src="book/src/gcc.png"> </p>
> aura free
adobe-source-code-pro-fonts: custom
aspell-en: custom
blas: custom
boost: custom
boost-libs: custom
cantarell-fonts: custom:SIL
... etc. ...
> aura stats
Host                 : yumi
User                 : colin
Distribution         : Arch Linux
Editor               : emacs
Installed packages   : 1144
Pacman Package Cache : 7.05GiB
Aura Package Cache   : 1.29GiB
Aura Build Cache     : 6.49GiB
/tmp Directory       : 11.31MiB

Configuration

Aura looks for a configuration file at ~/.config/aura/config.toml, but won't break if one isn't present. To generate one:

aura conf --gen > ~/.config/aura/config.toml

Configuration details can be found in The Book or within info aura.

Localisation

As mentioned in the Philosophy above, adding new languages to Aura is quite easy. If you speak a language other than those available and would like it added to Aura, please see the Localisation section of The Aura Book.

Credits

Aura has been translated by these generous people:

LanguageTranslators
Arabic"Array in a Matrix"
BengaliSaif Shahriar
ChineseKai Zhang and Alex3236
CroatianDenis Kasak and "stranac"
CzechDaniel Rosel
DutchJoris Blanken and Heimen Stoffels
EsperantoZachary "Ghosy" Matthews
FrenchMa Jiehong and Fabien Dubosson
GermanLukas Niederbremer and Jonas Platte
Hindi"yozachar"
Indonesian"pak tua Greg"
ItalianBob Valantin and Cristian Tentella
JapaneseColin Woodbury and Onoue Takuro
Korean"Nioden"
Norwegian"chinatsun"
PolishChris Warrick, Michał Kurek
PortugueseHenry Kupty, Thiago Perrotta, and Wagner Amaral
Romanian"90", "benone"
RussianKyrylo Silin, Alexey Kotlyarov, SuperSuslik312
SerbianFilip Brcic
SpanishAlejandro Gómez, Sergio Conde and Max Ferrer
SwedishFredrik Haikarainen and Daniel Beecham
TurkishCihan Alkan
UkrainianAndriy Cherniy
Vietnamese"Kritiqual"

Aura's logo is thanks to the designer Cristiano Vitorino.