This is a convenience option that can be passed to either
debian/bootstrap.sh or to debian/util.sh to include a module in the
build that would normally be excluded. This option, -p, can be passed
multiple times.
If -t is passed to debian/util.sh, then we will import the
/etc/apt/sources.list mirrors and all apt keys into the
pbuilder/cowbuilder build environment.
This is useful e.g. when the FS build depends on a library not
available in Debian yet.
Normally we override the config of each pbuilder/cowbuilder image when
we update the image before using it for the build. Passing this
option allows for using an existing cowbuilder image (assuming it's in
the correct location) with some existing desirable configuration.
Sometimes while the debian repositories are updating there are
sporadic signature failures. It's annoying to have these break the
build, and the only thing to do is to retry, so we'll retry here
automatically. We were already retrying on the update operation that
can fail in a similar manner.
./debian/util.sh build-all will do a number of builds in sequence or
parallel. We now track if any of those builds fail to return a
.changes file and exit non-zero.
This lets us set the suite name in the changelog file to
e.g. sid-experimental. This way we can share a single debian repo URL
for all versions, but make sure that incoming files are directed to
the correct distro.
Apparently the Raspberry Pi blows up (out of memory) if you call
dpkg-source -z9 as it implicitly calls xz -9. Thanks to Ken Rice for
running headlong into this.
Also note that while xz takes -0, dpkg-source won't take -z0, so we
check for this and make sure we call dpkg-source correctly.
If updating the base image fails, retry a few times. If that doesn't
work, simply move on; the update usually fails because Debian is
updating its mirrors; it's not important that we be absolutely up to
date.
Debian nightlies created with debian/util.sh now have the version set
in the same format as Makefile.am produces. Unlike Makefile.am,
however, we show the orig packaging date rather than the date of the
latest commit, as the latter could legitimately regress and we need
this to always increment.