• Re: dh_python or pybuild

    From Andrey Rahmatullin@21:1/5 to c.buhtz@posteo.jp on Mon Oct 11 14:40:02 2021
    On Mon, Oct 11, 2021 at 12:23:31PM +0000, c.buhtz@posteo.jp wrote:
    I am not sure if I misunderstand something or if the documentation is inconsistent.

    The PythonPolicy
    https://www.debian.org/doc/packaging-manuals/python-policy/
    tells me that dh_python should be the preferred tool for packaging (https://www.debian.org/doc/packaging-manuals/python-policy/#versions)
    You indeed should use dh_python3, this is normally done by passing "--with python3" to dh(1).

    But the LibraryStyleGuide
    https://wiki.debian.org/Python/LibraryStyleGuide
    tells me it is pybuild (https://wiki.debian.org/Python/LibraryStyleGuide#Overview).
    pybuild is a build system, it's used to make actual setup.py calls. You
    indeed should use it, this is normally done by passing
    "--buildsystem=pybuild" to dh(1).
    That page even says "What's important to note here is that both of the dh_python2 and dh_python3 helpers are being invoked, and also that the
    build system that dh will use is pybuild." when showing the correct dh(1)
    line.

    And the DPT policy https://salsa.debian.org/python-team/tools/python-modules/-/blob/master/policy.rst
    tells me something about git-buildpackage and gbp.
    gbp is not Python-specific and, strictly speaking, is not a part of Debian packaging, but a tool to store Debian source paclages in git.

    --
    WBR, wRAR

    -----BEGIN PGP SIGNATURE-----

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmFkLyQtFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh fEEP/3gPPc/y9JmMb6VV+uPmmthT2T2cDIEyd/sPZY+IXVrlmcyIXQknnP+CaKWR PZl4kCcEw0ZSksq4UtgSotFxssUzOmR0IOvtrhNtpPnws/hnCiuH5VA6FMFvOAha Avw6vm3PEGqeSeHP+sB+xAvHQd2LOytFzNIBtDNaF1Jnu9xQmmjTzy6LklH+daxm uA0lETZaVg1CgEcJHgs0+XLs3AE6Xhgab+N3a++ptr+sTHjxLmgksIANUkD+UG7+ k6lME+AcOMPvjmrOcvxT2yglIWIzMldu/6XQyy3sG0HEGngTHIJsYJmsjFNlZmx1 aI6dq25fjtSfX77fby6Yssv5mYQ22RRKKw6PyjiGCVQkkHcUuUgd1WwnvQypbvHa LSDTlux5b6tbIQxfMnwMdhkN5+5YVXQyHDBKMpnBvfi5A4U+L131kX0+uDtxO2Gk AB6YpwO/DFn4SgmkXjpxBFw2Ujae0b24FdKAiw13rMtBs/dsZ5b+PByBjA6MF8D2 FGpS4lHRpkbaNspvFYNPO+ITzpiMhAg3Oe2O59fWsJcjuVBlVok891Z9QYmZU5PD aI84FkLwyaU5lncTIMXEHJWn/8yeOBAqw54B67Kk7cSwozHR3ioL23Etd7LG28Qe AkFfVVuKvtdSKXH04zdCXpejVU+X6DPLg8VBtLTytoHt8QDh
    =d/7U
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Dominik George@21:1/5 to All on Mon Oct 11 14:40:03 2021
    Hi,

    I am not sure if I misunderstand something or if the documentation is inconsistent.

    The PythonPolicy
    https://www.debian.org/doc/packaging-manuals/python-policy/
    tells me that dh_python should be the preferred tool for packaging (https://www.debian.org/doc/packaging-manuals/python-policy/#versions)

    But the LibraryStyleGuide
    https://wiki.debian.org/Python/LibraryStyleGuide
    tells me it is pybuild (https://wiki.debian.org/Python/LibraryStyleGuide#Overview).

    And the DPT policy https://salsa.debian.org/python-team/tools/python-modules/-/blob/master/policy.rst
    tells me something about git-buildpackage and gbp.

    the three components work together, or better, are used at different
    stages.

    * git-buildpackage (which is the same as gbp) is used to manage the
    sources of your package in git

    * pybuild is the toolchain that does the building process itself, and
    knows how to run setup.py or other tools, etc.

    * dh_python is the debhelper chain, the glue between the package
    building process and pybuild

    dh_python can use several different build systems, of which pybuild is
    the preferred one. When debhelper calls, e.g. dh_auto_build,
    dh_auto_build calls all chains that support the build
    target. dh_python does, so it is called, and in turn calls pybuild to
    do its magic of figuring out how to do the build for your specific
    package at hand.

    HTH,
    Nik

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)