All Projects → archlinux → pyalpm

archlinux / pyalpm

Licence: GPL-3.0 license
Python 3 bindings for libalpm (read-only mirror)

Programming Languages

c
50402 projects - #5 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to pyalpm

Paru
Feature packed AUR helper
Stars: ✭ 1,240 (+2380%)
Mutual labels:  archlinux, pacman
Kernel Modules Hook
Keeps your Arch Linux fully functional after a kernel upgrade
Stars: ✭ 175 (+250%)
Mutual labels:  archlinux, pacman
Cylon
A CLI TUI menu driven bash shell script supporting updates, maintenance, backups and system checks for an Arch based Linux distro
Stars: ✭ 121 (+142%)
Mutual labels:  archlinux, pacman
Yay
Yet another Yogurt - An AUR Helper written in Go
Stars: ✭ 7,100 (+14100%)
Mutual labels:  archlinux, pacman
paclabel
A tiny pacman wrapper that makes possible to attach labels to packages.
Stars: ✭ 16 (-68%)
Mutual labels:  archlinux, pacman
Pacaur
[unmaintained] An AUR helper that minimizes user interaction
Stars: ✭ 818 (+1536%)
Mutual labels:  archlinux, pacman
Ansible Aur
Ansible module to manage packages from the AUR
Stars: ✭ 149 (+198%)
Mutual labels:  archlinux, pacman
Octopi
A powerful Pacman (Package Manager) front end using Qt libs
Stars: ✭ 331 (+562%)
Mutual labels:  archlinux, pacman
pacwatch
A pacman wrapper which helps you watch important package updates.
Stars: ✭ 24 (-52%)
Mutual labels:  archlinux, pacman
guzuta
Custom repository manager for ArchLinux pacman
Stars: ✭ 27 (-46%)
Mutual labels:  archlinux, pacman
Trizen
Lightweight AUR Package Manager
Stars: ✭ 696 (+1292%)
Mutual labels:  archlinux, pacman
alpm.rs
Rust bindings for libalpm
Stars: ✭ 76 (+52%)
Mutual labels:  archlinux, pacman
Aurutils
Helper tools for the AUR.
Stars: ✭ 695 (+1290%)
Mutual labels:  archlinux, pacman
Cpcache
central pacman cache
Stars: ✭ 15 (-70%)
Mutual labels:  archlinux, pacman
Pacwall
A live wallpaper that shows the dependency graph and status of installed packages.
Stars: ✭ 412 (+724%)
Mutual labels:  archlinux, pacman
Pacback
Advanced Version Control for Arch Linux
Stars: ✭ 146 (+192%)
Mutual labels:  archlinux, pacman
pacman.store
Pacman Mirror via IPFS for ArchLinux, Endeavouros and Manjaro
Stars: ✭ 65 (+30%)
Mutual labels:  archlinux, pacman
paruz
A fzf terminal UI for paru or pacman
Stars: ✭ 29 (-42%)
Mutual labels:  archlinux, pacman
ArchI0
ArchI0 : Arch-Based Distros Applications Automatic Installation Script
Stars: ✭ 26 (-48%)
Mutual labels:  archlinux, pacman
milcheck
Display the status of your pacman mirrorlist and the Arch Linux lastest news right in your terminal
Stars: ✭ 18 (-64%)
Mutual labels:  archlinux, pacman

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
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].