Skip to main content

libalpm bindings for Python 3

Project description

pyalpm - python bindings for the libalpm library

Build Status Documentation Status

pyalpm is a C extension for Python 3 that give access to the libalpm API for package management, which is used, for example in the Arch Linux distribution.

Requirements

  • Python 3 or later

  • libalpm 13

  • python-setuptools

  • python-pkgconfig

  • python-sphinx (optional, to build the docs)

Building

Building is as easy as running make

make

Building the docs:

make -C doc html

Testing

Required test dependency:

  • python-pytest
  • gcovr (optional, generating C coverage)

Unit tests can be run with:

make test

Coverage for Python code can be generated as following:

make open-coverage

Coverage for the CPython code can be generated as following:

make open-ext-coverage

Releasing

  1. Bump version in setup.py
  2. commit
  3. git tag

Uploading to PyPI

  1. python3 setup.py sdist
  2. twine upload -s dist/* --verbose

Pacman development compatibility

The master branch tracks the most recent pacman release and thus libalpm release, the next branch follows pacman's master branch.

Building against pacman-git is as simple as:

git clone https://gitlab.archlinux.org/pacman/pacman.git
mkdir build
cd build && meson .. && ninja
PKG_CONFIG_PATH=/path/to/pacman/build/meson-uninstalled make build

Running tests against pacman-git:

LD_LIBRARY_PATH=/path/to/pacman/build/ make test

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyalpm-0.10.6.tar.gz (51.9 kB view details)

Uploaded Source

File details

Details for the file pyalpm-0.10.6.tar.gz.

File metadata

  • Download URL: pyalpm-0.10.6.tar.gz
  • Upload date:
  • Size: 51.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for pyalpm-0.10.6.tar.gz
Algorithm Hash digest
SHA256 99e6ec73b8c46bb12466013f228f831ee0d18e8ab664b91a01c2a3c40de07c7f
MD5 2215140b0bfd9bdb4639dc8bb48625de
BLAKE2b-256 c12cf147d2652854505ac65e8618bb3c12c5fc6c2ec6b6794b48a181c59fe69c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page