[arch-projects] [ABS] [RFC] ABS(7)
mfm at muteddisk.com
Mon Jun 13 22:35:13 EDT 2011
:man source: ABS
:man manual: ABS Manual
:man version: %%ABS_VERSION%%
ABS - the Arch Build System
The 'Arch Build System', or *ABS*, is a ports-like system for building binary
packages from source code. With a collection of tools for package creation and
management, it provides a complete package management system for *Arch Linux*.
Typically, the process of building a program from source code would consist of
downloading, unpacking, patching, compiling, and installing the program. Of
course a few key steps were left out, such as building the required dependencies
and configuring the software for your system. The *ABS* does 'all' of this for
you! And it also creates a package that can be installed and tracked via
To build a package from source code, the ABS uses *makepkg*(8) and a
*PKGBUILD*(5). '`makepkg`' is a package creation tool that automates the build
process, and a '`PKGBUILD`' is a build description file that contains the
information necessary for building the package. When run, `makepkg` reads the
PKGBUILD in the current directory, or the build script given with the `-p`
option, and follows the instructions therein to build the package. This will
result in *`<pkgname>-<pkgver>.pkg.tar.xz`*, which can then be installed with
*abs*(8) is the utility that facilitates building packages from source code. It
utilizes the other package management tools to accomplish its function.
Fetches and creates the directory tree of PKGBUILDs for the official
repositories. This hierarchy of directories is known as the *``ABS
tree''* and has the same structure as the package database. It is
created under '%%ABS_ROOT%%'.
Compiles and builds a package that can be installed with `pacman`.
Dependency handling is built-in and can be controlled through
command-line options. A PKGBUILD is required to provide the build
The official package manager for 'Arch Linux'. Install or update a
package after it is built by running either *`pacman -U <pkg>`* or
A build description file that contains the URL of the source code as
well as instructions for compilation and packaging.
ABS tree configuration file.
Build related configuration file.
Package management configuration file.
*abs*(8), *makepkg*(8), *pacman*(8), *PKGBUILD*(5), *abs.conf*(5),
More information about the arch-projects