man sbuild (Commandes) - build debian packages from source

NAME

sbuild - build debian packages from source

SYNOPSIS

sbuild [ -a/--add-depends=<dependency-line> ] [ -A/--arch-all ] [ -b/--batch] [-d/--dist=<distribution> ] [ -D/--debug ] [ -f/--force-depends=<dependency-line> ] [ -m/--maintainer=<maintainer> ] [ -e/--uploader=<uploader> ] [ -k/--keyid=<key> ] [ --purge=<mode>] [ -s/--source ] [ --force-orig-source ] [ -v/--verbose ] [ -q/--quiet ] [ --make-binNMU=<entry> ] [ --nolog ] package-to-build_x.y-z(.dsc) [ ... ]

VERSION

This man page documents the packaged version of sbuild. This version is maintained by the buildd-tools project developers on Alioth (CR]https://alioth.debian.org/projects/buildd-tools/).

There is also a version maintained by Ryan Murray which is adapted to build daemon needs, with similar functionality. This version should be equally capable of working in a buildd setup, but has a number of enhancements aimed at making it suitable for use by end-users.

DESCRIPTION

sbuild rebuilds Debian binary packages from the corresponding Debian source. It is similar to dbuild and debbuild, but, unlike them, it knows about source dependencies.

sbuild can fetch the Debian source over a network, or it can use locally available sources.

sbuild mails the build logs to a user. It is configured by the configuration files /etc/sbuild.conf, /etc/sbuild.conf.local, and ~/.sbuildrc. An example sbuildrc is available in /usr/share/doc/sbuild/examples/example.sbuildrc. sbuild will not run without a valid ~/.sbuildrc.

Optionally, source dependencies are read from /var/lib/sbuild/source-dependencies-*; see that file for more information on source-dependencies. Also see README.Debian.

You can build either using a local package with its .dsc file or a remote one by specifying an explicit dpkg version.

Note: sbuild must be run in the directory (~/build by default) with the chroot-{stable,testing,unstable} symlink to the chroot or it will do the build in the base install which is not what you want. When using schroot, these requirements do not apply; the chroot having the name (or alias) of the specified distribution will be used; schroot uses a chroot named $distribution-sbuild, or $distribution, in that order of preference.

OPTIONS

-a,--add-depends=<dependency-line>
This option adds some source dependency information for a package. It can be given more than one time with accumulating effect. The argument is a line of source dependencies in the same format as in /var/lib/sbuild/source-dependencies. The given dependencies are appended to the src-deps from source-dependencies-* files or package src-deps, resp.
-A,--arch-all
Also build Architecture: all packages, i.e. use dpkg-buildpackage -b instead of -B.
-b,--batch
Operate in batchmode, i.e. write a build-progress file during execution and files on shutdown to facilitate a clean restart.
-d,--distribution=<distribution>
Fetch source packages from specified distribution.
-f,--force-depends=<dependency-line>
This option overrides source dependency information for a package. It can be given more than one time with accumulating effect. The argument is a line of source dependencies in the same format as in /var/lib/sbuild/source-dependencies.
-D,--debug
Enable debug output.
-m,--maintainer=<maintainer>
Passed to dpkg-genchanges and is used to set the Maintainer: field in the .changes file(s).
-e,--uploader=<maintainer>
Passed to dpkg-genchanges and is used to set the Changed-by: field in the .changes file(s).
-k,--keyid=<maintainer>
Passed to dpkg-genchanges and is used to set the key to sign the .changes file(s). Default is not using any key.
-n,--nolog
Do not create a package log file in the $log_dir directory and no build log file, but print everything to stdout. Also do not send any log mails.
-p,--purge=<mode>
mode decides if to delete the build directory. Possible values are always, never, and successful.
-s,--source
Also build source package, i.e. use dpkg-buildpackage without -B.
--force-orig-source
When used with in conjunction with -s, this option forces the inclusion of the orig.tar.gz file in the generated .changes file, even in cases where it would not normally be included, i.e. use dpkg-buildpackage -sa.
-v,--verbose
Be verbose, i.e. all information goes to stdout as well as to the log files.
-q,--quiet
Be quiet. This is the opposite of --verbose.
--make-binNMU=<entry>
With this option, sbuild will create a new changelog entry in debian/changelog of every package built. The version number will be in the format for binary-only NMUs (three dotted parts in the Debian revision); the maintainer is set to the maintainer name configured for sbuild. The entry parameter will be used as a changelog entry after a fixed one [lq]Binary-only non-maintainer upload for ARCH -- no source changes[rq]. Please note that the versions in the package-to-build arguments still have to be the unmodified (non-NMU ones) so that sources can be found. The version number in log files and mails will be modified by sbuild automatically.

ENVIRONMENT VARIABLES

The following environment variables are used by sbuild:

HOME
The home directory of the user.
LOGNAME
Used in lockfiles.
sourcebase
A URL for a Debian source distribution; generated by sbuild for scripts in source-dependencies.
binarybase
A URL for a Debian binary distribution; generated by sbuild for scripts in source-dependencies.

FILES

/etc/sbuild.conf
Global configuration, maintained by the sbuild maintainer.
/etc/sbuild.conf.local
Global configuration, maintained by the system administrator. This may be used to override the defaults in sbuild.conf.
~/.sbuildrc
User specific configuration
/var/lib/sbuild
Build statistics, source dependencies and lock files.

AUTHORS

Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>.

sbuild is based on debbuild, written by James Troup <james@nocrew.org> and has been modified by

Ben Collins <bcollins@debian.org>,
Ryan Murray <rmurray@debian.org>,
Francesco Paolo Lovergine <frankie@debian.org>,
Michael Banck <mbanck@debian.org>, and
Roger Leigh <rleigh@debian.org>

SEE ALSO