Debian packaging tools
The Python package
deb-pkg-tools is a collection of functions to work with
Debian packages and repositories. Some of those functions have a command line
interface (see below) because they’re very convenient to use in shell scripts,
while other functions are meant to be called directly from Python code.
On the one hand the
deb-pkg-tools package is based on my experiences with
Debian packages and repositories over the past couple of years, on the other
deb-pkg-tools itself is quite young. Then again most functionality is
covered by automated tests; at the time of writing coverage is around 90% (some
of the error handling is quite tricky to test if we also want to test the
non-error case, which is of course the main focus :-)
Installation and usage
You can install the
deb-pkg-tools package using the following command:
$ pip install deb-pkg-tools
After installation you’ll have the deb-pkg-tools program available:
$ deb-pkg-tools --help Usage: deb-pkg-tools [OPTIONS] Supported options: -i, --inspect=FILE inspect the metadata in a *.deb archive -b, --build=DIR build a Debian package with `dpkg-deb --build' -u, --update-repo=DIR create/update a trivial package repository -a, --activate-repo=DIR enable `apt-get' to install packages from a trivial repository (requires root/sudo privilege) -d, --deactivate-repo=DIR cleans up after --activate-repo (requires root/sudo privilege) -w, --with-repo=DIR CMD... create/update a trivial package repository, activate the repository, run the positional arguments as an external command (usually `apt-get install') and finally deactivate the repository -v, --verbose make more noise -h, --help show this message and exit
One thing to note is that the operation of deb-pkg-tools --update-repo can be influenced by a configuration file. For details about this, please refer to the documentation on deb_pkg_tools.repo.select_gpg_key().
If you’re interested in using
deb-pkg-tools as a Python module, please refer
to the function reference on Read the Docs.
deb-pkg-tools package depends on the python-debian package for control
file parsing. The following external programs are also required (depending on
which functionality you need of course):
The latest version of
deb-pkg-tools is available on PyPI and GitHub. The
documentation is hosted on Read the Docs. For bug reports please create an
issue on GitHub. If you have questions, suggestions, etc. feel free to send me
an e-mail at firstname.lastname@example.org.
This software is licensed under the MIT license.
© 2014 Peter Odding.