An open API service indexing awesome lists of open source software.

https://github.com/resslr/aurc

Fast Arch Linux Package Manger
https://github.com/resslr/aurc

arch-linux archlinux aur-packages linux package-manager

Last synced: 26 days ago
JSON representation

Fast Arch Linux Package Manger

Awesome Lists containing this project

README

          

# aurc

> A fast, secure package manager wrapper for Arch Linux with automatic AUR fallback.



 [
Install
](#installation) 
 [
Usage
](#usage) 
 [
Commands
](#commands) 
 [
Building
](#building-from-source) 




## Features

- Wraps `pacman` for official repo packages
- Full AUR support — download, inspect PKGBUILD, build with `makepkg`
- **Smart install** — `aurc install ` checks official repos first, falls back to AUR automatically
- PKGBUILD review prompt before every AUR installation
- Built-in `self-update` — keeps aurc current without any third-party tools
- Configure your preferred editor for mirrorlist editing

## Requirements

**Platform:** Arch Linux

**Runtime dependencies:**

| Dependency | Purpose |
|---|---|
| `pacman` | Official repo operations |
| `sudo` | Privilege escalation |
| `base-devel` | `makepkg` for building AUR packages |
| `git` | Cloning repos |
| `curl` | AUR HTTP requests |
| `json-c` | AUR API response parsing |
| `less` | PKGBUILD viewer |

**Build dependencies:** `gcc`, `make`, `libarchive`

## Installation

**Via PKGBUILD** (recommended):

```bash
curl -L https://github.com/resslr/aurc/releases/latest/download/aurc-pkgbuild.tar.gz -o aurc-pkgbuild.tar.gz
tar xzf aurc-pkgbuild.tar.gz && cd aurc-pkgbuild
makepkg -si
```

**Via pre-built binary:**

```bash
# Replace ${version} with the release tag, e.g. 1.2.3
wget https://github.com/resslr/aurc/releases/latest/download/aurc-${version}-x86_64.pkg.tar.zst
sudo pacman -U aurc-${version}-x86_64.pkg.tar.zst
```

**From source:**

```bash
sudo pacman -S gcc make base-devel curl json-c libarchive git
git clone https://github.com/resslr/aurc.git
cd aurc/src && sudo make install
```

## Updating

Once installed, aurc can update itself:

```bash
aurc self-update
```

This clones the latest source, rebuilds, and reinstalls automatically.

## Usage

```
aurc [command] [package(s)]
```

Running `aurc` with no arguments performs a full system upgrade — equivalent to `pacman -Syyu` followed by an AUR packages update check.

### Shorthands

Every command has a short flag alias — same position as the action word:

| Short | Full command |
|---|---|
| `-S` | `install` |
| `-Sa` | `install-aur` |
| `-Sl` | `install-local` |
| `-Sf` | `install-force` |
| `-R` | `remove` |
| `-Rs` | `remove-dep` |
| `-Rdd` | `remove-force` |
| `-Rdds` | `remove-force-dep` |
| `-Ro` | `remove-orp` |
| `-Ss` | `search` |
| `-Ssa` | `search-aur` |
| `-Q` | `query` |
| `-Syu` | `update` |
| `-Su` | `self-update` |
| `-Syy` | `refresh` |
| `-Me` | `modify-repo` |
| `-C` | `clear-aur-cache` |

```bash
aurc -S neovim # same as: aurc install neovim
aurc -Sa spotify # same as: aurc install-aur spotify
aurc -Ssa python # same as: aurc search-aur python
aurc -R firefox # same as: aurc remove firefox
aurc -Q git # same as: aurc query git
```

### Commands

**Installation**

| Command | Description |
|---|---|
| `install ` | Install packages — checks official repos first, falls back to AUR automatically |
| `install-aur ` | Install AUR packages directly |
| `install-local ` | Install a local `.pkg.tar.zst` file |
| `install-force ` | Force install, skipping dependency checks |

**Removal**

| Command | Description |
|---|---|
| `remove ` | Remove packages |
| `remove-dep ` | Remove packages and their dependencies |
| `remove-force ` | Force remove, even if other packages depend on it |
| `remove-force-dep ` | Force remove with dependencies |
| `remove-orp` | Remove orphaned packages |

**Search & Query**

| Command | Description |
|---|---|
| `search ` | Search official repositories |
| `search-aur ` | Search AUR — results sorted by relevance, interactive filter prompt after results |
| `search-aur -s ` | Show only the exact package name match |
| `list-aur ` | List all installed AUR packages, optionally filtered by name |
| `query ` | Check if a package is installed |

**System**

| Command | Description |
|---|---|
| *(no args)* | Full upgrade — system packages + all AUR packages |
| `update` | Update system packages only (`pacman -Syyu`) |
| `self-update` | Update aurc to the latest version |
| `refresh` | Refresh repository databases |
| `modify-repo` | Edit `/etc/pacman.d/mirrorlist` in your configured editor |
| `clear-aur-cache` | Clear the AUR build cache (`~/.cache/aurc/`) |
| `config -e ` | Set the default editor for `modify-repo` |

**Options**

| Flag | Description |
|---|---|
| `-h`, `--help` | Show help |
| `-v`, `--version` | Show version |

### Example

```bash
# Smart install — finds in repos, or falls back to AUR
aurc install neovim

# Inspect and install an AUR package directly
aurc install-aur spotify

# Search AUR with interactive filter
aurc search-aur python

# Remove multiple packages
aurc remove firefox thunderbird

# Keep aurc up to date
aurc self-update
```