BUILDD.CONF(5)

NAME
buildd.conf - configuration file for buildd

DESCRIPTION
buildd.conf is a Perl script which is sourced by buildd to permit configuration. It is run in a sandbox and restricted to setting a small number of variables, detailed below, which may be set to configure the behaviour of buildd. Each variable has an internal name, shown in all caps, and a perl variable showing the default setting. Note that the internal name is not accessible within buildd.conf; only the variable may be assigned. Also note that some of the defaults are set to be unique for each build, and so some of the defaults shown here are unique to the user and system used to build sbuild, and will be different for your system.

While buildd permits many aspects of its behaviour to be configured, this should not normally be required. The defaults should be adequate for most uses, and should only be changed if you are doing something more advanced, or have specialist requirements.

CONFIGURATION

  Build environment

PATH
    STRING type. PATH to set when running dpkg-buildpackage.

    Related sbuild(1) command line options:

    --use-snapshot

    Default:

    $path = '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games';

  Build options

DISTRIBUTION
    STRING type. Default distribution. By default, no distribution is defined, and the user must specify it with the -d option. However, a default may be configured here if desired. Users must take care not to upload to the wrong distribution when this option is set, for example experimental packages will be built for upload to unstable when this is not what is required.

    Related sbuild(1) command line options:

    -d
    --dist

    Default:

    $distribution = undef;

HOST_ARCH
    STRING type. Host architecture (Arch we are building for)

    Related sbuild(1) command line options:

    --arch
    --host

    host_arch = ...;

BUILD_ARCH
    STRING type. Build architecture (Arch we are building on).

    Related sbuild(1) command line options:

    --arch
    --build

    build_arch = ...;

NICE_LEVEL
    NUMERIC type. Nice level to run sbuild. Dedicated build daemons should not be niced.

    Default:

    $nice_level = 10;

DISTRIBUTIONS
    ARRAY:HASH:SCALAR type. List of distributions that buildd should take packages from

    Example:

    $distributions = [
        {
        # name of the suite to build (also used to query wanna-build)
        dist_name => ["unstable", "testing"],
        # architecture to be built (will be passed to sbuild and can be
        # used to compute wanna_build_db_name)
        built_architecture => undef,
        # host on which wanna-build is run
        wanna_build_ssh_host => "buildd.debian.org",
        # user as who we are going to connect to the host running wanna-build
        wanna_build_ssh_user => "buildd_arch",
        # SSH control socket path for ssh -S option
        wanna_build_ssh_socket => "",
        # Additional SSH options used when connecting
        wanna_build_ssh_options => [],
        # database used for wanna-build
        wanna_build_db_name => "arch/build-db",
        # Username to use for wanna-build.
        wanna_build_db_user => $Buildd::username,
        # Local queue directory where binaries are stored before uploaded
        # by dupload. You need to configure this directory in
        # @upload_queues to get packages uploaded from there.
        dupload_local_queue_dir => "upload",
        # list of packages which shouldn't be picked up by buildd
        no_auto_build => [],
        # list of packages which should only be taken if there absolutely
        # nothing else to do (probably packages included in no_auto_build
        # because they take too long)
        weak_no_auto_build => [],
        # regex used to filter out unwanted packages:
        #no_build_regex => "^(contrib/|non-free/)?non-US/",
        # regex used to filter packages to build:
        #build_regex => "",
        # mail addr of buildd admin handling packages from this distribution
        logs_mailed_to => $admin_mail,
        # schroot name (or alias) of the chrooted environment to use for
        # building (will be passed to sbuild). sbuild's default is
        # the first of $distribution-$arch-sbuild, $distribution-sbuild,
        # $distribution-$arch and $distribution.
        sbuild_chroot => undef,
        }
    ];

    distributions = ...;

  Core options

BUILD_USER
    STRING type. Username used for running dpkg-buildpackage. By default the user running sbuild and `sbuild` for the unshare mode is used within the chroot as well but that might allow a process from within the chroot to break out of the chroot by attaching to a process running outside the chroot with eg. gdb and then becoming root inside the chroot through schroot and thus be able to leave the chroot.

    build_user = ...;

  Daemon

DAEMON_LOG_FILE
    STRING type. Main buildd daemon log file

    daemon_log_file = ...;

DELAY_AFTER_GIVE_BACK
    NUMERIC type. Time to avoid packages that have automatically been given back by sbuild (in minutes)

    Default:

    $delay_after_give_back = 480;

IDLE_SLEEP_TIME
    NUMERIC type. Time to sleep when idle (in seconds) between wanna-build --list=needs-build calls)

    Default:

    $idle_sleep_time = 300;

MAX_SBUILD_FAILS
    NUMERIC type. Maximum number of times sbuild can fail before sleeping

    Default:

    $max_sbuild_fails = 2;

MIN_FREE_SPACE
    NUMERIC type. Minimum free space (in KiB) on build filesystem

    Default:

    $min_free_space = 51200;

NO_DETACH
    BOOL type. Disable becoming a daemon, for debugging purposes. Set to 1 to stop daemonising, otherwise set to 0 to become a daemon.

    Default:

    $no_detach = 0;

PIDFILE
    STRING type. PID file to identify running daemon.

    pidfile = ...;

SHOULD_BUILD_MSGS
    BOOL type. Should buildd send "Should I build" messages?

    Default:

    $should_build_msgs = 1;

  Logging options

VERBOSE
    NUMERIC type. Verbose logging level

    Default:

    $verbose = 0;

DEBUG
    NUMERIC type. Debug logging level

    Default:

    $debug = 0;

  Mail

ADMIN_MAIL
    STRING type. email address for admin

    Default:

    $admin_mail = 'root';

ERROR_MAIL_WINDOW
    NUMERIC type. If more than five error mails are received within the specified time (in seconds), do not forward (to avoid possible mail loops)

    Default:

    $error_mail_window = 28800;

LOG_QUEUED_MESSAGES
    BOOL type. Log success messages from upload queue daemon?

    Default:

    $log_queued_messages = 0;

  Programs

MAILPROG
    STRING type. Program to use to send mail

    Default:

    $mailprog = '/usr/sbin/sendmail';

APT_GET
    STRING type. Path to apt-get binary

    Default:

    $apt_get = 'apt-get';

DPKG_FILE_SUFFIX
    STRING type. Value for the sbuild dpkg-file-suffix option, to be passed on to sbuild

    Default:

    $dpkg_file_suffix = '';

SUDO
    STRING type. Path to sudo binary

    Default:

    $sudo = 'sudo';

SSH STRING type. Path to ssh binary

    Default:

    $ssh = 'ssh';

  Uploader

UPLOAD_QUEUES
    ARRAY:HASH:SCALAR type. Package upload queues

    Example:

    $upload_queues = [
        {
        # Local queue directory where binaries are stored before uploaded
        # by dupload.
        dupload_local_queue_dir => "upload",
        # Upload site for buildd-upload to pass to dupload(1); see
        # /etc/dupload.conf for possible values.
        dupload_archive_name => "anonymous-ftp-master",
        },
        {
        # Local queue directory where binaries are stored before uploaded
        # by dupload.
        dupload_local_queue_dir => "upload-security",
        # Upload site for buildd-upload to pass to dupload(1); see
        # /etc/dupload.conf for possible values.
        dupload_archive_name => "security",
        }
    ];

    upload_queues = ...;

  Watcher

BUILD_LOG_KEEP
    NUMERIC type. Number of days until build logs are archived

    Default:

    $build_log_keep = 2;

DAEMON_LOG_KEEP
    NUMERIC type. Number of days until old daemon logs are archived in a .tar.gz file

    Default:

    $daemon_log_keep = 7;

DAEMON_LOG_ROTATE
    NUMERIC type. Number how many days until daemon logs are rotated (one is kept as daemon.log.old, others are moved to old-logs and gzipped)

    Default:

    $daemon_log_rotate = 1;

DAEMON_LOG_SEND
    BOOL type. email rotated daemon logs to the admin?

    Default:

    $daemon_log_send = 1;

NO_WARN_PATTERN
    STRING type. Don't complain about old files if they match the regexp.

    Default:

    $no_warn_pattern = '^build/(SKIP|REDO|SBUILD-GIVEN-BACK|buildd\.pid|[^/]*.ssh|chroot-[^/]*|current-[^/]*)$';

PKG_LOG_KEEP
    NUMERIC type. Number of days until to package logs are archived

    Default:

    $pkg_log_keep = 7;

STATISTICS_MAIL
    STRING type. email address for statistics summaries

    Default:

    $statistics_mail = 'root';

STATISTICS_PERIOD
    NUMERIC type. Period for statistic summaries (days)

    Default:

    $statistics_period = 7;

WARNING_AGE
    NUMERIC type. Age (in days) after which a warning is issued for files in upload and dirs in build

    Default:

    $warning_age = 7;

  wanna-build client

WANNA_BUILD_SSH_USER
    STRING type. Username for SSH connection

    Default:

    $wanna_build_ssh_user = '';

WANNA_BUILD_SSH_HOST
    STRING type. Host for SSH connection

    Default:

    $wanna_build_ssh_host = '';

WANNA_BUILD_SSH_SOCKET
    STRING type. Socket for SSH connection

    Default:

    $wanna_build_ssh_socket = '';

WANNA_BUILD_SSH_OPTIONS
    ARRAY:STRING type. SSH options. Note this is an array reference.

    Default:

    $wanna_build_ssh_options = [];

WANNA_BUILD_DB_NAME
    STRING type. Database name

    Default:

    $wanna_build_db_name = undef;

WANNA_BUILD_DB_USER
    STRING type. Database user

    wanna_build_db_user = ...;

BUILT_ARCHITECTURE
    STRING type. Architecture for database

    wanna_build_built_architecture = ...;

FILES

/etc/buildd/buildd.conf
    Configuration, maintained by the system administrator. This may be used to override the defaults.

~/.builddrc
    User-specific configuration.

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>

COPYRIGHT
Copyright © 1998-2000 Roman Hodek <roman@hodek.net>
Copyright © 1998-1999 James Troup <troup@debian.org>
Copyright © 2003-2006 Ryan Murray <rmurray@debian.org>
Copyright © 2001-2003 Rick Younie <younie@debian.org>
Copyright © 2003-2004 Francesco Paolo Lovergine <frankie@debian.org>
Copyright © 2005      Michael Banck <mbanck@debian.org>
Copyright © 2005-2009 Roger Leigh <rleigh@debian.org>

SEE ALSO
buildd(1), sbuild(1),