python-debian
Modules to read and manipulate many file formats related to Debian packages and repositories
Decision gist · record as of 2026-08-14
Yes, if you work with Debian packaging data. Low install friction, no dependencies, production-stable, actively maintained, and no known vulnerabilities make it a straightforward choice for Debian-focused tooling. The copyleft license requires that any derivative work be open-source.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.7 or later.
- Low install friction with no runtime dependencies.
- Actively maintained with production-stable status and support for current Python versions.
License · maintenance · safety
GPL-2.0-or-later (copyleft) — GPL-2.0-or-later copyleft license means any derivative work or bundled distribution must also be open-source under compatible terms.
last release 2026-06-07 (68 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,548,228 downloads/mo, #3,777 on PyPI
Alternatives
Verify before relying
pip install python-debian
from debian.changelog import Changelog
from debian.deb822 import Deb822
# Read a changelog
with open('debian/changelog') as f:
changelog = Changelog(f)
# Parse a control file
with open('debian/control') as f:
for para in Deb822.iter_paragraphs(f):
print(para['Package'])- Whether optional python-apt integration is automatically detected or requires manual configuration.
- Performance characteristics when processing large .deb files or repository indexes.
- Which specific Debian data formats support write/edit operations versus read-only access.
What it is and what it does
python-debian provides a collection of Python modules for working with Debian-specific file formats and metadata. It handles changelogs, control files (debian/control, .changes, .dsc, Packages, Sources, Release), Debtags information, package indexes with pdiffs, and raw .deb and .ar archives. The library supports both reading and, for some formats, creating or editing these files.
The package is designed for developers who need to programmatically inspect or manipulate Debian packaging data. It has no runtime dependencies and requires Python 3.7 or later. Some modules can optionally use python-apt to speed up processing, but this is not required for basic functionality.
Use it for
- Parse debian/changelog files to extract version history and release notes from Debian packages.
- Read control files (.dsc, .changes, Packages) to extract package metadata and dependencies.
- Extract and inspect contents of .deb archive files without unpacking them to disk.
- Process Debtags information to categorize or filter Debian packages by their tags.
- Build tools that analyze Debian repository indexes or generate package metadata.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you work with Debian packaging data.
Low install friction, no dependencies, production-stable, actively maintained, and no known vulnerabilities make it a straightforward choice for Debian-focused tooling. The copyleft license requires that any derivative work be open-source.
Install
python-debian on PyPI
Before you install
Low install friction with no runtime dependencies. Actively maintained with production-stable status and support for current Python versions.
Requires Python 3.7 or later.
License in practice
GPL-2.0-or-later copyleft license means any derivative work or bundled distribution must also be open-source under compatible terms.
Quickstart
pip install python-debian
from debian.changelog import Changelog
from debian.deb822 import Deb822
# Read a changelog
with open('debian/changelog') as f:
changelog = Changelog(f)
# Parse a control file
with open('debian/control') as f:
for para in Deb822.iter_paragraphs(f):
print(para['Package'])
Verify before relying
- Whether optional python-apt integration is automatically detected or requires manual configuration.
- Performance characteristics when processing large .deb files or repository indexes.
- Which specific Debian data formats support write/edit operations versus read-only access.
Package facts
| License | GPL-2.0-or-later copyleft |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 68 days since the last release |
| First released | |
| Downloads | 1,548,228 / month, #3,777 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersOperating System :: POSIXProgramming Language :: Python |
Evidence: python_debian-1.1.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “read debian changelog”
- python-debianReads and manipulates Debian packaging metadata formats including…
- stdebConverts Python packages into Debian source and binary packages (.deb…
- keepachangelogParse, manipulate, and generate changelog files in Keep a Changelog…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also debian-inspector · stdeb · deb-pkg-tools · ar · parver · rosdistro · unix-ar · version-utils · conda-package-handling · arpy