Bug#798558: Bug#798557: libapache-dbi-perl: please make the build reproducible

Niko Tyni ntyni at debian.org
Thu Sep 10 16:10:27 UTC 2015


On Thu, Sep 10, 2015 at 03:56:03PM +0200, Dhole wrote:

> While working on the "reproducible builds" effort [1], we have noticed
> that libapache-dbi-perl could not be built reproducibly.
> 
> The attached patch sets the embedded date in the man pages generated by
> podman to the latest debian/changelog entry timestamp instead of local
> date. Once applied, libapache-dbi-perl can be built reproducibly in our
> current experimental framework.

> --- libapache-dbi-perl-1.12/debian/rules	2013-06-12 18:02:44.000000000 +0200
> +++ libapache-dbi-perl-1.12/debian/rules	2015-09-10 00:33:54.000000000 +0200
> @@ -1,3 +1,7 @@
>  #!/usr/bin/make -f
> +
> +SOURCE_DATE_EPOCH = $(shell date -d "$$(dpkg-parsechangelog -SDate)" +%s)
> +export POD_MAN_DATE = $(shell date -u +"%Y-%m-%d" --date="@$(SOURCE_DATE_EPOCH)")
> +
>  %:
>  	dh $@

This is a toolchain issue that potentially affects hundreds of packages
and should IMO be fixed centrally, at least for those packages that use
these debhelper short form dh rules.

The reason only a handful show up in the current reproducible.debian.net
CI setup is that it only triggers when the two builds happen on different
sides of midnight UTC. Once we start testing builds on different dates,
I expect the number of those to explode.
-- 
Niko Tyni   ntyni at debian.org



More information about the pkg-perl-maintainers mailing list