Re: [Reproducible-builds] Bug#782380: mailman-api: please make the build reproducible

2015-04-11 Thread Reiner Herrmann

On 04/11/2015 04:10 PM, Antonio Terceiro wrote:
> Nothing against the patch, but wouldn't it be better to handle this
> issue in one of the above layers such as debhelper, dpkg-dev, or
> something else? After all you are just setting an environment variable,
> and having to patch every single package out there is certainly not
> going to be sustainable.
> 
> $ grep-dctrl -F Build-Depends python-sphinx -n -s Package 
> /var/lib/apt/lists/http.debian.net_debian_dists_unstable_main_source_Sources 
> | wc -l
> 404
> 

I agree that it would be nice if debhelper or so already exported variables
like the build date. But different tools want to have the date in different 
formats
(in the patch I used the default format of Sphinx), or also want to have the 
time etc.

Patching packages would still be required to pass the date to the Sphinx call 
(some packages
I saw today call sphinx-build directly in d/rules instead of make).
We also hope that in the future more maintainers fix their packages when they 
see in DDPO
that it is unreproducible, which should then be more sustainable.

Regards,
 Reiner



signature.asc
Description: OpenPGP digital signature
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] Bug#782380: mailman-api: please make the build reproducible

2015-04-11 Thread Antonio Terceiro
Control: tag -1 + moreinfo

On Sat, Apr 11, 2015 at 01:29:38PM +0200, Reiner Herrmann wrote:
> Source: mailman-api
> Version: 0.2.9-1
> Severity: wishlist
> Tags: patch
> User: reproducible-builds@lists.alioth.debian.org
> Usertags: timestamps
> X-Debbugs-CC: reproducible-builds@lists.alioth.debian.org
> 
> Hi!
> 
> While working on Debian's “reproducible builds” effort [1], we have
> noticed that mailman-api doesn't build reproducibly.
> It embeds the current date into the manpage.
> 
> The attached patch fixes this by using the last changelog date
> as a timestamp that will be embedded.
> 
> Regards,
>  Reiner
> 
> [1]: https://wiki.debian.org/ReproducibleBuilds
> 

> diff --git a/debian/rules b/debian/rules
> index 0443b6f..2f9931f 100755
> --- a/debian/rules
> +++ b/debian/rules
> @@ -3,13 +3,16 @@
>  # This file was automatically generated by stdeb 0.8.2 at
>  # Thu, 23 Oct 2014 15:53:01 -0200
>  export PYBUILD_NAME=mailman-api
> +export LAST_CHANGE=$(shell dpkg-parsechangelog -S Date)
> +export BUILD_DATE=$(shell LC_ALL=C date -u "+%B %d, %Y" -d "$(LAST_CHANGE)")
> +
>  %:
>   dh $@ --with python2 --buildsystem=pybuild
>  
>  
>  override_dh_auto_build:
>   dh_auto_build
> - make man -C docs/
> + make man -C docs/ SPHINXOPTS="-D today=\"$(BUILD_DATE)\""
>   cp init/sysv/mailman-api debian/mailman-api.init
>  
>  override_dh_auto_clean:

Nothing against the patch, but wouldn't it be better to handle this
issue in one of the above layers such as debhelper, dpkg-dev, or
something else? After all you are just setting an environment variable,
and having to patch every single package out there is certainly not
going to be sustainable.

$ grep-dctrl -F Build-Depends python-sphinx -n -s Package 
/var/lib/apt/lists/http.debian.net_debian_dists_unstable_main_source_Sources | 
wc -l
404

-- 
Antonio Terceiro 


signature.asc
Description: Digital signature
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#782380: mailman-api: please make the build reproducible

2015-04-11 Thread Reiner Herrmann
Source: mailman-api
Version: 0.2.9-1
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-CC: reproducible-builds@lists.alioth.debian.org

Hi!

While working on Debian's “reproducible builds” effort [1], we have
noticed that mailman-api doesn't build reproducibly.
It embeds the current date into the manpage.

The attached patch fixes this by using the last changelog date
as a timestamp that will be embedded.

Regards,
 Reiner

[1]: https://wiki.debian.org/ReproducibleBuilds

diff --git a/debian/rules b/debian/rules
index 0443b6f..2f9931f 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,13 +3,16 @@
 # This file was automatically generated by stdeb 0.8.2 at
 # Thu, 23 Oct 2014 15:53:01 -0200
 export PYBUILD_NAME=mailman-api
+export LAST_CHANGE=$(shell dpkg-parsechangelog -S Date)
+export BUILD_DATE=$(shell LC_ALL=C date -u "+%B %d, %Y" -d "$(LAST_CHANGE)")
+
 %:
 	dh $@ --with python2 --buildsystem=pybuild
 
 
 override_dh_auto_build:
 	dh_auto_build
-	make man -C docs/
+	make man -C docs/ SPHINXOPTS="-D today=\"$(BUILD_DATE)\""
 	cp init/sysv/mailman-api debian/mailman-api.init
 
 override_dh_auto_clean:


signature.asc
Description: OpenPGP digital signature
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds