Skip to content

floppym/pkgcore

 
 

Repository files navigation

pypi test coverage Documentation Status

What is pkgcore?

pkgcore is a framework for package management; via the appropriate class plugins, the design should allow for any underlying repository/config/format to be used; slackware's tgzs being exempted due to lack of any real metadata, and autopackage format being exempted due to the fact they effectively embed the manager in each package (pkgcore does require being able to treat the pkg as data, instead of autopackage's method of handing resolution/all manager ops off to the package script).

What does pkgcore require?

At least python version 2.7, and snakeoil — a utility library with misc optimizations split out of pkgcore for others to use. For unittests, mock is required if you're using anything less than python 3.3.

Who to contact if I find a bug?

Please submit an issue via Github. You can also stop by at #pkgcore on Freenode.

Tools

pclonecache: clone a repository cache

pebuild: low-level ebuild operations, go through phases manually

pinspect: generic utility for inspecting repository related info

pmaint: generic utility for repository maintenance (syncing, copying...)

pmerge: generic utility for doing dependency resolution, fetching, (un)merging, etc.

pquery: generic utility for querying info about repositories, revdeps, pkg search, vdb search, etc.

Documentation

The official documentation can be found on readthedocs with alternative formats also available for download.

Tests

A standalone test runner is integrated in setup.py; to run, just execute:

python setup.py test

In addition, a tox config is provided so the testsuite can be run in a virtualenv setup against all supported python versions. To run tests for all environments just execute tox in the root directory of a repo or unpacked tarball. Otherwise, for a specific python version execute something similar to the following:

tox -e py27

Installing

Installing pkgcore in a virtualenv should work as expected. One thing to note is that pkgcore's setup script uses snakeoil so it needs to be manually installed before pkgcore.

Installing latest pypi release in a virtualenv:

pip install snakeoil
pip install pkgcore

Installing from git in a virtualenv:

pip install https://github.com/pkgcore/snakeoil/archive/master.tar.gz
pip install https://github.com/pkgcore/pkgcore/archive/master.tar.gz

For manually installing from a tarball or repo checkout see the commands below.

To build:

tar jxf pkgcore-0.XX.tar.bz2
cd pkgcore-0.XX
python setup.py build

To install:

cd pkgcore-0.xx
python setup.py install
pplugincache

About

a framework for package management

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 91.2%
  • C 5.6%
  • Shell 3.2%