DEBCRAFT(1)

NAME
Debcraft - Easy, fast and secure way to build Debian packages

DESCRIPTION
usage: debcraft <build|improve|test|release|update|shell|logs|prune> [options] [<path|pkg|srcpkg|dsc|git-url>]

Debcraft is a tool to easily build .deb packages. The 'build' argument accepts any of the following:

    * path to directory with program sources including a debian/ subdirectory with

    the Debian packaging instructions

    * path to a .dsc file and source tarballs that can be built into a .deb

    * Debian package name or source package name that apt can download

    * git http(s) or ssh URL that can be downloaded and built

The command 'improve' will try to apply various improvements to the package based on tools in Debian that automate package maintenance. The command 'test' will run the Debian-specific regression test suite if the package has autopkgtest support, and drops to a shell for investigation if tests fail to pass. The command 'release' uploads a package that is ready to be released and the command 'update' tries to update the package to the latest upstream version if the package git repository layout is compatible.

The command 'shell' can be used to explore the container and 'prune' will clean up temporary files created by Debcraft.

In addition to parameters below, anything passed in DEB_BUILD_OPTIONS will also be honored. Successful builds include running './debian/rules clean' to clean up artifacts, while failed builds will leave them around for inspection.

Note that Debcraft builds never runs as root, and thus packages with DEB_RULES_REQUIRES_ROOT are not supported.

  optional arguments:

--build-dirs-path
    Path for writing build files and artifacts (default: ~/.cache/debcraft)

--distribution
    Linux distribution to build in (default: debian:sid)

--container-command
    Container command to use (default: podman)

--host-architecture
    Host architecture to use when performing a cross build

--skip-sources
    Build only binaries and skip creating a source tarball to make the build slightly faster ('debcraft build' only)

--with-binaries
    Create a release with both source and binaries, for example with the intent to upload to NEW ('debcraft release' only)

--pull
    Ensure container base is updated

--copy
    Perform the build on a copy of the package directory

--clean
    Ensure sources are clean before and after build (only needed for packages with incomplete 'debian/clean' or 'debian/.gitignore' definitions)

--extra-repository
    Use directory as local package repository for builds

--config
    Path to debcraft configuration file

--release-to
    After build or release, copy artefacts to specified dir

--debug
    Emit debug information

-h, --help
    Display this help and exit

--version
    Display version and exit

To learn more, or to contribute to Debcraft, see project page at ]8;;https://salsa.debian.org/debian/debcraftsalsa.debian.org/debian/debcraft]8;;

To gain more Debian Developer knowledge, please read ]8;;https://www.debian.org/doc/manuals/developers-reference/www.debian.org/doc/manuals/developers-reference/]8;; and ]8;;https://www.debian.org/doc/debian-policy/www.debian.org/doc/debian-policy/]8;;