Inhaltsverzeichnis

Debian-Paket aus Python-Anwendung erstellen

Verzeichnisstruktur

myproject/
├── src/
│   ├── myproject/
│   │   ├── __init__.py
│   │   ├── entry.py
│   │   └── module1.py
├── setup.py
├── README.md

Build setup

setup.py

from setuptools import setup, find_packages

setup(
    name="myproject",
    version="0.1.0",
    packages=find_packages(where="src"),
    package_dir={"": "src"},
    entry_points={
        "console_scripts": [
            "myproject=myproject.entry:main",
        ],
    },
)  

Important notes:

Build

  1. Create source distribution
    python3 setup.py sdist
  2. Convert to Debian package format
    py2dsc dist/myproject-0.1.0.tar.gz
  3. Build the actual .deb
    cd deb_dist/myproject-0.1.0-1
    dpkg-buildpackage -us -uc