Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/archlinux/pyalpm
Python 3 bindings for libalpm (read-only mirror)
https://github.com/archlinux/pyalpm
archlinux pacman python
Last synced: 9 days ago
JSON representation
Python 3 bindings for libalpm (read-only mirror)
- Host: GitHub
- URL: https://github.com/archlinux/pyalpm
- Owner: archlinux
- License: gpl-3.0
- Created: 2017-06-16T21:38:05.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2021-11-20T09:04:20.000Z (about 3 years ago)
- Last Synced: 2024-10-27T21:51:40.676Z (3 months ago)
- Topics: archlinux, pacman, python
- Language: C
- Homepage: https://gitlab.archlinux.org/archlinux/pyalpm
- Size: 512 KB
- Stars: 58
- Watchers: 8
- Forks: 15
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pyalpm - python bindings for the libalpm library
[![Build Status](https://travis-ci.org/archlinux/pyalpm.svg?branch=master)](https://travis-ci.com/archlinux/pyalpm) [![Documentation Status](https://readthedocs.org/projects/pyalpm/badge/?version=latest)](https://pyalpm.readthedocs.io/en/latest/?badge=latest)
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](https://gitlab.archlinux.org/archlinux/pyalpm/-/tree/next) branch
follows [pacman's master branch](https://gitlab.archlinux.org/pacman/pacman.git).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 buildRunning tests against pacman-git:
LD_LIBRARY_PATH=/path/to/pacman/build/ make test