Home

libalpm

libalpm (Arch Linux Package Management Library) is a C library that provides a stable, high-level interface to Arch Linux's package management system. It serves as the core backend for pacman, the Arch package manager, and can be used by other tools to manipulate Arch packages and databases.

Its responsibilities include managing the local package database, synchronizing with remote databases, querying packages and dependencies,

API and architecture: Libalpm provides a C API with opaque handle types such as alpm_handle_t, alpm_db_t, alpm_pkg_t,

Development and licensing: Libalpm is part of the Arch Linux packaging ecosystem and is maintained by the

See also: pacman, Arch Linux, package management.

and
planning
and
executing
package
transactions
such
as
installations,
removals,
and
upgrades.
Libalpm
handles
dependency
resolution
and
conflict
detection
at
the
transaction
level,
and
coordinates
with
signing
and
verification
processes
during
package
installation.
It
abstracts
the
details
of
package
files,
databases,
and
cache
storage,
presenting
a
uniform
API
to
front-ends.
alpm_pkglist_t,
and
alpm_transaction_t.
The
library
is
designed
to
be
used
by
front-ends
to
implement
custom
package
management
workflows,
while
pacman
uses
libalpm
as
its
interface
to
the
package
database
and
to
perform
install
operations.
Arch
community.
It
is
licensed
under
the
GNU
General
Public
License.