LinuxCommandLibrary

asp

TLDR

Clone a package from the Arch repositories

$ asp checkout [package]
copy
Update all checked out packages
$ asp update
copy
Export PKGBUILD files without full checkout
$ asp export [package]
copy
List available packages in a repository
$ asp list-repos
copy
Show package information
$ asp show [package]
copy
Discard local changes and reset to upstream
$ asp update -f [package]
copy

SYNOPSIS

asp command [options] [packages]

DESCRIPTION

asp (Arch Source Package) is a tool for retrieving PKGBUILDs and related build files from the official Arch Linux package repositories. It provides access to the source recipes used to build packages in the core, extra, and multilib repositories.
Unlike downloading PKGBUILDs manually, asp uses a Git-based backend that enables tracking changes, viewing commit history, and updating packages efficiently. Each package is a separate Git branch, making it easy to see modifications between versions.
Common uses include: examining how official packages are built, modifying packages with custom options, backporting patches, and learning PKGBUILD best practices from official examples.

PARAMETERS

checkout package

Clone a package's build files into a local directory.
update [packages]
Update checked-out packages to latest version.
export package
Copy PKGBUILD and related files to current directory.
list-repos
List all available repositories.
show package
Display package information.
difflog package
Show commit history for a package.
-f, --force
Force update, discarding local changes.

CAVEATS

asp only provides build files from official Arch repositories, not the AUR. The checked-out files require makepkg to actually build packages. Local modifications are overwritten by asp update -f. Requires Git to be installed for the underlying VCS operations.

HISTORY

The asp tool was created to replace the older abs (Arch Build System) tool, which downloaded a complete copy of all PKGBUILDs. Introduced around 2015, asp uses Git to provide more efficient, incremental access to individual packages. It became the recommended method for obtaining official PKGBUILDs as the Arch package repositories moved to Git-based workflows.

SEE ALSO

makepkg(8), pacman(8), yay(8), pkgctl(1)

Copied to clipboard