[Reproducible-builds] [PATCH] Reproducible U-Boot build support, using SOURCE_DATE_EPOCH

2015-07-20 Thread Paul Kocialkowski
In order to achieve reproducible builds in U-Boot, timestamps that are defined
at build-time have to be somewhat eliminated. The SOURCE_DATE_EPOCH environment
variable allows setting a fixed value for those timestamps.

Simply by setting SOURCE_DATE_EPOCH to a fixed value, a number of targets can be
built reproducibly. This is the case for e.g. sunxi devices.

However, some other devices might need some more tweaks, especially regarding
the image generation tools.

Signed-off-by: Paul Kocialkowski 
---
 Makefile  |  7 ---
 tools/default_image.c | 21 -
 2 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/Makefile b/Makefile
index 37cc4c3..71aeac7 100644
--- a/Makefile
+++ b/Makefile
@@ -1231,9 +1231,10 @@ define filechk_version.h
 endef
 
 define filechk_timestamp.h
-   (LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"'; \
-   LC_ALL=C date +'#define U_BOOT_TIME "%T"'; \
-   LC_ALL=C date +'#define U_BOOT_TZ "%z"')
+   (SOURCE_DATE="$${SOURCE_DATE_EPOCH:+@$$SOURCE_DATE_EPOCH}"; \
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_DATE "%b %d 
%C%y"'; \
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TIME "%T"'; 
\
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TZ "%z"' )
 endef
 
 $(version_h): include/config/uboot.release FORCE
diff --git a/tools/default_image.c b/tools/default_image.c
index cf5c0d4..18940af 100644
--- a/tools/default_image.c
+++ b/tools/default_image.c
@@ -88,6 +88,9 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
int ifd,
struct image_tool_params *params)
 {
uint32_t checksum;
+   char *source_date_epoch;
+   struct tm *time_universal;
+   time_t time;
 
image_header_t * hdr = (image_header_t *)ptr;
 
@@ -96,9 +99,25 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
int ifd,
sizeof(image_header_t)),
sbuf->st_size - sizeof(image_header_t));
 
+   source_date_epoch = getenv("SOURCE_DATE_EPOCH");
+   if (source_date_epoch != NULL) {
+   time = (time_t) strtol(source_date_epoch, NULL, 10);
+
+   time_universal = gmtime(&time);
+   if (time_universal == NULL) {
+   fprintf(stderr, "%s: SOURCE_DATE_EPOCH is not valid\n",
+   __func__);
+   time = 0;
+   } else {
+   time = mktime(time_universal);
+   }
+   } else {
+   time = sbuf->st_mtime;
+   }
+
/* Build new header */
image_set_magic(hdr, IH_MAGIC);
-   image_set_time(hdr, sbuf->st_mtime);
+   image_set_time(hdr, time);
image_set_size(hdr, sbuf->st_size - sizeof(image_header_t));
image_set_load(hdr, params->addr);
image_set_ep(hdr, params->ep);
-- 
1.9.1


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


Re: [Reproducible-builds] [U-Boot] [PATCH] build: create time and date independent binary

2015-07-20 Thread Paul Kocialkowski
> Did you see my v2 patch [1] for u-boot?
> 
> It also builds now u-boot images created with mkimage reproducible ...
> 
> If I interpret your patch from above correct, you add with
> SOURCE_DATE_EPOCH a specific fix timestamp?
> 
> I think, this could be included to my approach too ...
> 
> If SOURCE_DATE_EPOCH is defined, use it, fi not defined
> define U_BOOT_DATE, U_BOOT_TIME and U_BOOT_TZ
> with my default settings from [1] ...
> 
> All only if CONFIG_SYS_EXACT_BINARY is set in the u-boot
> config of course ...
> 
> What do you think?

I think adding a config option adds all sorts of unnecessary
complications. SOURCE_DATE_EPOCH is sufficient for what we want.

Thanks a lot for your work, it has been a great base for the patch I
just sent: http://patchwork.ozlabs.org/patch/497577/

Feel free to add your signed-off-by line since it's inspired by your
patch.

-- 
Paul Kocialkowski, Replicant developer

Replicant is a fully free Android distribution running on several
devices, a free software mobile operating system putting the emphasis on
freedom and privacy/security.

Website: http://www.replicant.us/
Blog: http://blog.replicant.us/
Wiki/tracker/forums: http://redmine.replicant.us/


signature.asc
Description: This is a digitally signed message part
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] [PATCH] Reproducible U-Boot build support, using SOURCE_DATE_EPOCH

2015-07-20 Thread Paul Kocialkowski
Le lundi 20 juillet 2015 à 10:01 +0200, Paul Kocialkowski a écrit :
> In order to achieve reproducible builds in U-Boot, timestamps that are defined
> at build-time have to be somewhat eliminated. The SOURCE_DATE_EPOCH 
> environment
> variable allows setting a fixed value for those timestamps.
> 
> Simply by setting SOURCE_DATE_EPOCH to a fixed value, a number of targets can 
> be
> built reproducibly. This is the case for e.g. sunxi devices.
> 
> However, some other devices might need some more tweaks, especially regarding
> the image generation tools.

Lunar, since you have contributed to this patch, feel free to add your
Signed-Off-By line here before it's merged!

Heiko, since this is based on your original patch, feel free to do the
same!

It would be nice to have this tested on as many boards as possible to
spot other areas that make the binaries not reproducible. However, I
doubt this patch will evolve much and other fixes should be sent in
subsequent patches.

> Signed-off-by: Paul Kocialkowski 
> ---
>  Makefile  |  7 ---
>  tools/default_image.c | 21 -
>  2 files changed, 24 insertions(+), 4 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 37cc4c3..71aeac7 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1231,9 +1231,10 @@ define filechk_version.h
>  endef
>  
>  define filechk_timestamp.h
> - (LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"'; \
> - LC_ALL=C date +'#define U_BOOT_TIME "%T"'; \
> - LC_ALL=C date +'#define U_BOOT_TZ "%z"')
> + (SOURCE_DATE="$${SOURCE_DATE_EPOCH:+@$$SOURCE_DATE_EPOCH}"; \
> + LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_DATE "%b %d 
> %C%y"'; \
> + LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TIME "%T"'; 
> \
> + LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TZ "%z"' )
>  endef
>  
>  $(version_h): include/config/uboot.release FORCE
> diff --git a/tools/default_image.c b/tools/default_image.c
> index cf5c0d4..18940af 100644
> --- a/tools/default_image.c
> +++ b/tools/default_image.c
> @@ -88,6 +88,9 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
> int ifd,
>   struct image_tool_params *params)
>  {
>   uint32_t checksum;
> + char *source_date_epoch;
> + struct tm *time_universal;
> + time_t time;
>  
>   image_header_t * hdr = (image_header_t *)ptr;
>  
> @@ -96,9 +99,25 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
> int ifd,
>   sizeof(image_header_t)),
>   sbuf->st_size - sizeof(image_header_t));
>  
> + source_date_epoch = getenv("SOURCE_DATE_EPOCH");
> + if (source_date_epoch != NULL) {
> + time = (time_t) strtol(source_date_epoch, NULL, 10);
> +
> + time_universal = gmtime(&time);
> + if (time_universal == NULL) {
> + fprintf(stderr, "%s: SOURCE_DATE_EPOCH is not valid\n",
> + __func__);
> + time = 0;
> + } else {
> + time = mktime(time_universal);
> + }
> + } else {
> + time = sbuf->st_mtime;
> + }
> +
>   /* Build new header */
>   image_set_magic(hdr, IH_MAGIC);
> - image_set_time(hdr, sbuf->st_mtime);
> + image_set_time(hdr, time);
>   image_set_size(hdr, sbuf->st_size - sizeof(image_header_t));
>   image_set_load(hdr, params->addr);
>   image_set_ep(hdr, params->ep);



signature.asc
Description: This is a digitally signed message part
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] reminder: Next IRC meeting: 2015-07-21 17:00 UTC

2015-07-20 Thread Holger Levsen
Hi,

quoting https://wiki.debian.org/ReproducibleBuilds/Meetings

Agenda for the fifth meeting, 2015-07-21 17:00 UTC

discuss todays agenda
go though last meetings summary and look for unactioned action items
package/issue updates + r.a.d.o repo state
can we move old unneeded packages out of the way? (a /old/ directory?) 
rp.d.n updates+issues
GSoC updates
any other business
announce next meeting 


See you on #debian-reproducible on irc.oftc.net!


cheers,
Holger


signature.asc
Description: This is a digitally signed message part.
___
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#791823: debhelper: set SOURCE_DATE_EPOCH env var for reproducible builds

2015-07-20 Thread Ximin Luo
On 12/07/15 12:03, Jérémy Bobbio wrote:
> Hi!
> 
> Dhole:
>> Also, in order to help reproducible builds, a fixed timezone is exported
>> (TZ=UTC).
> 
> I am not convinced this change is a good idea. While reviewing new uploads
> to the Debian archive, I have at least spotted these lines in
> exim4/4.86~RC4-1 changelog [1]:
> 
>>   * unexport/undefine TZ in debian/rules for reproducible build. It
>> would be used as default value for TIMEZONE_DEFAULT.
> 
> The `TZ` environment variable is not usually set in a build environment.
> It is a reproducibility problem if a package produce different binaries
> when it is, but that's all. I am afraid that some packages, like exim4,
> would silently start behaving differently if we set `TZ` in debhelper.
> 
> If we don't set the variable in debhelper, we can use the
> reproducibility tests to spot packages who are building differently
> depending on the timezone or the value of TZ and propose fixes to
> maintainers. This enables them to review their impact. It is indeed more
> work, but it's less likely to unknowingly introduce any weird behavior.
> 
>  [1]: https://tracker.debian.org/news/694090
> 

I also had some reservations about setting TZ in this way, but wasn't quite 
sure how to express it. But here's a more general, abstract version of the 
scenario Lunar pointed out.

- Imagine that upstream thinks it's reasonable to e.g. generate certain locale 
data based on the TZ variable at build time.
- Setting TZ=UTC would make the build appear "reproducible", and the package 
maintainer may not even realise that there's something missing, especially if 
this locales thing is buried deep in the build scripts.
- The correct solution would be for upstream to generate such data for all TZs. 
For sure, setting TZ=UTC would not interfere with this fix, but it makes such 
issues harder to detect.

I suggest we drop this particular aspect from this patch and just focus on 
SOURCE_DATE_EPOCH instead.

X

-- 
GPG: 4096R/1318EFAC5FBBDBCE
git://github.com/infinity0/pubkeys.git



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

[Reproducible-builds] Bug#792932: cpl-plugin-amber: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-amber
Version: 4.3.3+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-amber could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-amber can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index d9ece20..65bb6ff 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792933: cpl-plugin-fors: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-fors
Version: 5.0.11+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-fors could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-fors can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index b9f9096..9272342 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792935: cpl-plugin-giraf: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-giraf
Version: 2.14+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-giraf could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-giraf can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index 3c283da..0336111 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792938: cpl-plugin-muse: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-muse
Version: 1.0.4+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-muse could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-muse can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index 03a56b0..a94cf81 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -150,7 +150,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792937: cpl-plugin-kmos: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-kmos
Version: 1.3.12+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-kmos could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-kmos can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index 9107b16..e7bf499 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792936: cpl-plugin-hawki: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-hawki
Version: 1.8.18+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-hawki could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-hawki can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index cf72d4e..bb0f300 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792941: cpl-plugin-vimos: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-vimos
Version: 2.9.15+dfsg-4
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-vimos could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-vimos can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index 3a9492a..fd87529 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -145,7 +145,7 @@ recipes_oca = [name for name in recipes if name in oca]
 index = [ oca.find(name) for name in recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 recipes_x = [name for name in recipes if not name in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792939: cpl-plugin-sinfo: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-sinfo
Version: 2.6.0+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-sinfo could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-sinfo can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index 170b470..96d7a04 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792942: cpl-plugin-visir: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-visir
Version: 3.5.1+dfsg-2
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-visir could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-visir can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index a694f8a..f132ea8 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792940: cpl-plugin-uves: please make the build reproducible

2015-07-20 Thread Chris Lamb
Source: cpl-plugin-uves
Version: 5.5.2+dfsg-3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

While working on the "reproducible builds" effort [1], we have noticed
that cpl-plugin-uves could not be built reproducibly.

The attached patch removes randomness from the build system. Once
applied, cpl-plugin-uves can be built reproducibly in our reproducible
toolchain.

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


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/debian/create_sphinx.py b/debian/create_sphinx.py
index 558a57c..a04e821 100644
--- a/debian/create_sphinx.py
+++ b/debian/create_sphinx.py
@@ -146,7 +146,7 @@ index = [ oca.find(recipe.__name__) for recipe in 
recipes_oca ]
 recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))]
 
 recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca]
-recipes_x.sort()
+recipes_x.sort(lambda x: x.__name__)
 
 def par(recipe, template, delimiter = "", count = None):
 return delimiter.join(template.format(
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] authbind : please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: authbind
Version: 3.0.3.5
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 the “reproducible builds” effort [1], we have noticed
that authbind could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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

diff -Nru authbind-2.1.1/debian/changelog authbind-2.1.1+nmu1/debian/changelog
--- authbind-2.1.1/debian/changelog 2012-06-11 00:17:19.0 +0200
+++ authbind-2.1.1+nmu1/debian/changelog2015-07-15 23:42:10.0 
+0200
@@ -1,3 +1,10 @@
+authbind (2.1.1+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Wed, 15 Jul 2015 23:40:51 +0200
+
 authbind (2.1.1) unstable; urgency=low
 
   * Manpage has an example of which files will be checked and read
diff -Nru authbind-2.1.1/debian/rules authbind-2.1.1+nmu1/debian/rules
--- authbind-2.1.1/debian/rules 2012-06-03 02:45:04.0 +0200
+++ authbind-2.1.1+nmu1/debian/rules2015-07-15 23:37:33.0 +0200
@@ -29,6 +29,8 @@
 
 arch = $(shell dpkg --print-architecture)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 INSTALL = install
 INSTALL_FILE= $(INSTALL) -p-o root -g root  -m  644
 INSTALL_PROGRAM = $(INSTALL) -p-o root -g root  -m  755
@@ -90,6 +92,8 @@
dpkg-gencontrol -isp
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792945: authbind : please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: authbind
Version: 3.0.3.5
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 the “reproducible builds” effort [1], we have noticed
that authbind could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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

diff -Nru authbind-2.1.1/debian/changelog authbind-2.1.1+nmu1/debian/changelog
--- authbind-2.1.1/debian/changelog 2012-06-11 00:17:19.0 +0200
+++ authbind-2.1.1+nmu1/debian/changelog2015-07-15 23:42:10.0 
+0200
@@ -1,3 +1,10 @@
+authbind (2.1.1+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Wed, 15 Jul 2015 23:40:51 +0200
+
 authbind (2.1.1) unstable; urgency=low
 
   * Manpage has an example of which files will be checked and read
diff -Nru authbind-2.1.1/debian/rules authbind-2.1.1+nmu1/debian/rules
--- authbind-2.1.1/debian/rules 2012-06-03 02:45:04.0 +0200
+++ authbind-2.1.1+nmu1/debian/rules2015-07-15 23:37:33.0 +0200
@@ -29,6 +29,8 @@
 
 arch = $(shell dpkg --print-architecture)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 INSTALL = install
 INSTALL_FILE= $(INSTALL) -p-o root -g root  -m  644
 INSTALL_PROGRAM = $(INSTALL) -p-o root -g root  -m  755
@@ -90,6 +92,8 @@
dpkg-gencontrol -isp
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792947: cvs-mailcommit: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: cvs-mailcommit
Version: 1.19-2
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 the “reproducible builds” effort [1], we have noticed
that cvs-mailcommit  could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u cvs-mailcommit-1.19/debian/changelog 
cvs-mailcommit-1.19/debian/changelog
--- cvs-mailcommit-1.19/debian/changelog
+++ cvs-mailcommit-1.19/debian/changelog
@@ -1,3 +1,10 @@
+cvs-mailcommit (1.19-2.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 16:35:27 +0200
+
 cvs-mailcommit (1.19-2) unstable; urgency=medium
 
   * Added the missing dependency to RCS *sigh*
diff -u cvs-mailcommit-1.19/debian/rules cvs-mailcommit-1.19/debian/rules
--- cvs-mailcommit-1.19/debian/rules
+++ cvs-mailcommit-1.19/debian/rules
@@ -24,6 +24,8 @@
 version = $(shell grep "^$(source) " debian/changelog|head -n 1 |sed 
's/.*(\(.*\)\-[^\-]*).*/\1/g')
 revision = $(shell grep "^$(source) " debian/changelog|head -n 1 |sed 
's/.*([^\-]*\-\(.*\)).*/\1/g')
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 installbin = install -g root -o root -m 755
 installdoc = install -g root -o root -m 644
 
@@ -67,6 +69,8 @@
# dpkg-shlibdeps debian/tmp/usr/bin/*
dpkg-gencontrol -isp
chown root.root debian/tmp/DEBIAN/control
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792949: chimera2: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: chimera2
Version: 2.0a19-8
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 the “reproducible builds” effort [1], we have noticed
that chimera2 could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u chimera2-2.0a19/debian/rules chimera2-2.0a19/debian/rules
--- chimera2-2.0a19/debian/rules
+++ chimera2-2.0a19/debian/rules
@@ -9,6 +9,8 @@
 
 package=chimera2
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 ifneq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALLOPT=
 else
@@ -63,6 +65,8 @@
dpkg-gencontrol -isp
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 define checkdir
diff -u chimera2-2.0a19/debian/changelog chimera2-2.0a19/debian/changelog
--- chimera2-2.0a19/debian/changelog
+++ chimera2-2.0a19/debian/changelog
@@ -1,3 +1,10 @@
+chimera2 (2.0a19-8.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 16:05:52 +0200
+
 chimera2 (2.0a19-8) unstable; urgency=low
 
   * Fix segfault with font handling - Thanks to Flos Lonicera for patch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792955: dput: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: dput
Version: 0.9.6.4
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 the “reproducible builds” effort [1], we have noticed
that dput could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru dput-0.9.6.4/debian/changelog dput-0.9.6.4+nmu1/debian/changelog
--- dput-0.9.6.4/debian/changelog   2013-07-19 13:08:40.0 +0200
+++ dput-0.9.6.4+nmu1/debian/changelog  2015-07-17 17:40:02.0 +0200
@@ -1,3 +1,10 @@
+dput (0.9.6.4+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 17:39:50 +0200
+
 dput (0.9.6.4) unstable; urgency=low
 
   [ Salvatore Bonaccorso ]
diff -Nru dput-0.9.6.4/debian/rules dput-0.9.6.4+nmu1/debian/rules
--- dput-0.9.6.4/debian/rules   2013-07-19 12:48:57.0 +0200
+++ dput-0.9.6.4+nmu1/debian/rules  2015-07-17 17:39:47.0 +0200
@@ -3,6 +3,8 @@
 PACKAGE := dput
 TMPDIR := debian/tmp
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: build-arch build-indep
 build-arch: build-stamp
 build-indep: build-stamp
@@ -61,6 +63,8 @@
install --mode=0755 debian/prerm $(TMPDIR)/DEBIAN
install --mode=0755 debian/postinst $(TMPDIR)/DEBIAN
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(TMPDIR) ..
 
 # Build architecture-dependent files here.
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792953: dhcping: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: dhcping
Version: 1.2-4.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 the “reproducible builds” effort [1], we have noticed
that dhcping could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u dhcping-1.2/debian/changelog dhcping-1.2/debian/changelog
--- dhcping-1.2/debian/changelog
+++ dhcping-1.2/debian/changelog
@@ -1,3 +1,10 @@
+dhcping (1.2-4.2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 17:22:57 +0200
+
 dhcping (1.2-4.1) unstable; urgency=low
 
   * Non-maintainer upload.
diff -u dhcping-1.2/debian/rules dhcping-1.2/debian/rules
--- dhcping-1.2/debian/rules
+++ dhcping-1.2/debian/rules
@@ -24,6 +24,8 @@
 version = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*(\(.*\)\-[^\-]*).*/\1/g')
 revision = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*([^\-]*\-\(.*\)).*/\1/g')
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 installbin = install -g root -o root -m 755
 installdoc = install -g root -o root -m 644
 
@@ -76,6 +78,8 @@
#
dpkg-shlibdeps debian/tmp/usr/sbin/dhcping
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792954: dpatch: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: dpatch
Version: 2.0.35
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 the “reproducible builds” effort [1], we have noticed
that dpatch could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru dpatch-2.0.35/debian/changelog dpatch-2.0.35+nmu1/debian/changelog
--- dpatch-2.0.35/debian/changelog  2012-02-07 10:09:06.0 +0100
+++ dpatch-2.0.35+nmu1/debian/changelog 2015-07-17 17:32:07.0 +0200
@@ -1,3 +1,10 @@
+dpatch (2.0.35+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 17:31:49 +0200
+
 dpatch (2.0.35) unstable; urgency=low
 
   * Mark the package Multi-Arch: foreign, thanks Riku Voipio
diff -Nru dpatch-2.0.35/debian/rules dpatch-2.0.35+nmu1/debian/rules
--- dpatch-2.0.35/debian/rules  2011-10-23 23:17:10.0 +0200
+++ dpatch-2.0.35+nmu1/debian/rules 2015-07-17 17:31:46.0 +0200
@@ -9,6 +9,8 @@
 
 DOCS   = README.History README.source README.svn-mergeWithUpstream
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build-dpatch:
test -e debian/control
${MAKE}
@@ -72,6 +74,8 @@
find ${DPATCH} -type f -name '*.gz' | xargs chmod 0644
find ${DPATCH}/DEBIAN -type f | xargs chmod 0644
dpkg-gencontrol -isp -P${DPATCH}
+   find ${DPATCH} -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build ${DPATCH} ..
 
 binary-indep: binary-dpatch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792950: ccze: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: ccze
Version: 0.2.1-2
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 the “reproducible builds” effort [1], we have noticed
that ccze could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u ccze-0.2.1/debian/changelog ccze-0.2.1/debian/changelog
--- ccze-0.2.1/debian/changelog
+++ ccze-0.2.1/debian/changelog
@@ -1,3 +1,10 @@
+ccze (0.2.1-2.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Thu, 16 Jul 2015 23:52:43 +0200
+
 ccze (0.2.1-2) unstable; urgency=low
 
   * Add myself as Maintainer, as Gergely seems to be MIA
diff -u ccze-0.2.1/debian/rules ccze-0.2.1/debian/rules
--- ccze-0.2.1/debian/rules
+++ ccze-0.2.1/debian/rules
@@ -8,6 +8,7 @@
 CFLAGS ?= -g
 BGT:= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 HGT:= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
 
 ifneq (,$(findstring noopt,${DEB_BUILD_OPTIONS}))
 CFLAGS += -O0
@@ -81,6 +82,9 @@
 ## Generate DEBIAN/control
dpkg-gencontrol -isp -p${PACKAGE} -Tdebian/${PACKAGE}.substvars \
-P${PKGDIR}
+## Fix mtimes before building binary packages
+   find ${PKGDIR} -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
 ## Build the binary package
dpkg --build ${PKGDIR} ..
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792952: dhcpdump : please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: dhcpdump
Version: 1.8-2
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 the “reproducible builds” effort [1], we have noticed
that dhcpdump could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u dhcpdump-1.8/debian/rules dhcpdump-1.8/debian/rules
--- dhcpdump-1.8/debian/rules
+++ dhcpdump-1.8/debian/rules
@@ -24,6 +24,8 @@
 version = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*(\(.*\)\-[^\-]*).*/\1/g')
 revision = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*([^\-]*\-\(.*\)).*/\1/g')
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 installbin = install -g root -o root -m 755
 installdoc = install -g root -o root -m 644
 
@@ -74,6 +76,8 @@
#
dpkg-shlibdeps debian/tmp/usr/sbin/dhcpdump
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
diff -u dhcpdump-1.8/debian/changelog dhcpdump-1.8/debian/changelog
--- dhcpdump-1.8/debian/changelog
+++ dhcpdump-1.8/debian/changelog
@@ -1,3 +1,10 @@
+dhcpdump (1.8-2.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 17:18:14 +0200
+
 dhcpdump (1.8-2) unstable; urgency=low
 
   * Bump standards-version
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792951: dbview: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: dbview
Version: 1.0.4-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 the “reproducible builds” effort [1], we have noticed
that dbview  could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u dbview-1.0.4/debian/changelog dbview-1.0.4/debian/changelog
--- dbview-1.0.4/debian/changelog
+++ dbview-1.0.4/debian/changelog
@@ -1,3 +1,10 @@
+dbview (1.0.4-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 17:09:05 +0200
+
 dbview (1.0.4-1) unstable; urgency=low
 
   * Fixed typo in NMU-Disclaimer, thanks to Petter Reinholdtsen (See:
diff -u dbview-1.0.4/debian/rules dbview-1.0.4/debian/rules
--- dbview-1.0.4/debian/rules
+++ dbview-1.0.4/debian/rules
@@ -24,6 +24,8 @@
 version = $(shell grep "^$(package) " debian/changelog|head -1 |sed 
's/.*(\(.*\)\-[^\-]*).*/\1/g')
 revision = $(shell grep "^$(package) " debian/changelog|head -1 |sed 
's/.*([^\-]*\-\(.*\)).*/\1/g')
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 installbin = install -o root -g root -m 755
 installdoc = install -o root -g root -m 644
 
@@ -74,6 +76,8 @@
#
dpkg-shlibdeps debian/tmp/usr/bin/dbview
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] [PATCH] Reproducible U-Boot build support, using SOURCE_DATE_EPOCH

2015-07-20 Thread Heiko Schocher

Hello Paul,

Am 20.07.2015 um 10:06 schrieb Paul Kocialkowski:

Le lundi 20 juillet 2015 à 10:01 +0200, Paul Kocialkowski a écrit :

In order to achieve reproducible builds in U-Boot, timestamps that are defined
at build-time have to be somewhat eliminated. The SOURCE_DATE_EPOCH environment
variable allows setting a fixed value for those timestamps.

Simply by setting SOURCE_DATE_EPOCH to a fixed value, a number of targets can be
built reproducibly. This is the case for e.g. sunxi devices.

However, some other devices might need some more tweaks, especially regarding
the image generation tools.


Lunar, since you have contributed to this patch, feel free to add your
Signed-Off-By line here before it's merged!

Heiko, since this is based on your original patch, feel free to do the
same!


I am just on the jump into my holidays, so I have not yet the time
to test it ... I want to try it for all builds with the scripts
I posted with my v2 ... but a first fast look into your patch looks
nice, if it works, it is ok with me ... I am back aprox. july 5th.

maybe a README entry would be fine ;-)

Thanks!

bye,
Heiko


It would be nice to have this tested on as many boards as possible to
spot other areas that make the binaries not reproducible. However, I
doubt this patch will evolve much and other fixes should be sent in
subsequent patches.


Signed-off-by: Paul Kocialkowski 
---
  Makefile  |  7 ---
  tools/default_image.c | 21 -
  2 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/Makefile b/Makefile
index 37cc4c3..71aeac7 100644
--- a/Makefile
+++ b/Makefile
@@ -1231,9 +1231,10 @@ define filechk_version.h
  endef

  define filechk_timestamp.h
-   (LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"'; \
-   LC_ALL=C date +'#define U_BOOT_TIME "%T"'; \
-   LC_ALL=C date +'#define U_BOOT_TZ "%z"')
+   (SOURCE_DATE="$${SOURCE_DATE_EPOCH:+@$$SOURCE_DATE_EPOCH}"; \
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_DATE "%b %d 
%C%y"'; \
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TIME "%T"'; 
\
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TZ "%z"' )
  endef

  $(version_h): include/config/uboot.release FORCE
diff --git a/tools/default_image.c b/tools/default_image.c
index cf5c0d4..18940af 100644
--- a/tools/default_image.c
+++ b/tools/default_image.c
@@ -88,6 +88,9 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
int ifd,
struct image_tool_params *params)
  {
uint32_t checksum;
+   char *source_date_epoch;
+   struct tm *time_universal;
+   time_t time;

image_header_t * hdr = (image_header_t *)ptr;

@@ -96,9 +99,25 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
int ifd,
sizeof(image_header_t)),
sbuf->st_size - sizeof(image_header_t));

+   source_date_epoch = getenv("SOURCE_DATE_EPOCH");
+   if (source_date_epoch != NULL) {
+   time = (time_t) strtol(source_date_epoch, NULL, 10);
+
+   time_universal = gmtime(&time);
+   if (time_universal == NULL) {
+   fprintf(stderr, "%s: SOURCE_DATE_EPOCH is not valid\n",
+   __func__);
+   time = 0;
+   } else {
+   time = mktime(time_universal);
+   }
+   } else {
+   time = sbuf->st_mtime;
+   }
+
/* Build new header */
image_set_magic(hdr, IH_MAGIC);
-   image_set_time(hdr, sbuf->st_mtime);
+   image_set_time(hdr, time);
image_set_size(hdr, sbuf->st_size - sizeof(image_header_t));
image_set_load(hdr, params->addr);
image_set_ep(hdr, params->ep);




--
DENX Software Engineering GmbH,  Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

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

[Reproducible-builds] Bug#792958: dtaus: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: dtaus
Version: 0.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 the “reproducible builds” effort [1], we have noticed
that dtaus could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u dtaus-0.9/debian/rules dtaus-0.9/debian/rules
--- dtaus-0.9/debian/rules
+++ dtaus-0.9/debian/rules
@@ -24,6 +24,8 @@
 version = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*(\(.*\)\-[^\-]*).*/\1/g')
 revision = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*([^\-]*\-\(.*\)).*/\1/g')
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 installbin = install -g root -o root -m 755
 installdoc = install -g root -o root -m 644
 
@@ -80,6 +82,8 @@
#
dpkg-shlibdeps debian/tmp/usr/bin/dtaus
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
diff -u dtaus-0.9/debian/changelog dtaus-0.9/debian/changelog
--- dtaus-0.9/debian/changelog
+++ dtaus-0.9/debian/changelog
@@ -1,3 +1,10 @@
+dtaus (0.9-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 17:54:58 +0200
+
 dtaus (0.9-1) unstable; urgency=low
 
   * New upstream version
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792959: elida: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: elida
Version: 0.4+nmu1
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 the “reproducible builds” effort [1], we have noticed
that elida could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru elida-0.4+nmu1/debian/changelog elida-0.4+nmu2/debian/changelog
--- elida-0.4+nmu1/debian/changelog 2010-03-19 09:55:42.0 +0100
+++ elida-0.4+nmu2/debian/changelog 2015-07-17 17:58:58.0 +0200
@@ -1,3 +1,10 @@
+elida (0.4+nmu2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 17:58:37 +0200
+
 elida (0.4+nmu1) unstable; urgency=low
 
   * Non-maintainer upload to fix release goal.
diff -Nru elida-0.4+nmu1/debian/rules elida-0.4+nmu2/debian/rules
--- elida-0.4+nmu1/debian/rules 2009-07-05 05:11:47.0 +0200
+++ elida-0.4+nmu2/debian/rules 2015-07-17 17:58:30.0 +0200
@@ -3,6 +3,8 @@
 P = elida
 T = debian/tmp
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build:
 
 binary: binary-arch binary-indep
@@ -34,6 +36,8 @@
dpkg-gencontrol -isp
chown -R root.root $T
chmod -R o-s,go=u,go-ws $T
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $T ..
 
 binary-arch:
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792961: enemies-of-carlotta: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: enemies-of-carlotta
Version: 1.2.6-4
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 the “reproducible builds” effort [1], we have noticed
that enemies-of-carlotta could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u enemies-of-carlotta-1.2.6/debian/rules 
enemies-of-carlotta-1.2.6/debian/rules
--- enemies-of-carlotta-1.2.6/debian/rules
+++ enemies-of-carlotta-1.2.6/debian/rules
@@ -2,6 +2,8 @@
 
 package=enemies-of-carlotta
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build:
$(MAKE) check
 
@@ -41,6 +43,8 @@
dpkg-gencontrol -isp
chown -R root.root debian/tmp
chmod -R o-s,go=u,go-ws debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary-arch:
diff -u enemies-of-carlotta-1.2.6/debian/changelog 
enemies-of-carlotta-1.2.6/debian/changelog
--- enemies-of-carlotta-1.2.6/debian/changelog
+++ enemies-of-carlotta-1.2.6/debian/changelog
@@ -1,3 +1,10 @@
+enemies-of-carlotta (1.2.6-4.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 18:02:51 +0200
+
 enemies-of-carlotta (1.2.6-4) unstable; urgency=high
 
   * Switched from deprecated md5 to hashlib (closes: #596623)
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792963: erc: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: erc
Version: 5.3-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 the “reproducible builds” effort [1], we have noticed
that erc could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u erc-5.3/debian/rules erc-5.3/debian/rules
--- erc-5.3/debian/rules
+++ erc-5.3/debian/rules
@@ -13,6 +13,8 @@
 configure-stamp:
touch configure-stamp
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: configure-stamp build-stamp
 build-stamp:
# Comply with Debian vote 2006-1
@@ -87,6 +89,9 @@
 find * -type f ! -regex '^DEBIAN/.*' -print0 | xargs -r0 md5sum > 
DEBIAN/md5sums
 ## Generate DEBIAN/control
dpkg-gencontrol -isp -p${PACKAGE} -P${PKGDIR}
+## Fix mtimes before building binary packages
+   find ${PKGDIR} -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
 ## Build the binary package
dpkg --build ${PKGDIR} ..
 
diff -u erc-5.3/debian/changelog erc-5.3/debian/changelog
--- erc-5.3/debian/changelog
+++ erc-5.3/debian/changelog
@@ -1,3 +1,10 @@
+erc (5.3-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 22:06:13 +0200
+
 erc (5.3-1) unstable; urgency=low
 
   * debian/control:
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792967: fgetty: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: fgetty
Version: 0.6-5
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 the “reproducible builds” effort [1], we have noticed
that fgetty could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u fgetty-0.6/debian/changelog fgetty-0.6/debian/changelog
--- fgetty-0.6/debian/changelog
+++ fgetty-0.6/debian/changelog
@@ -1,3 +1,10 @@
+fgetty (0.6-5.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 22:13:05 +0200
+
 fgetty (0.6-5) unstable; urgency=low
 
   * debian/implicit: add proper dependencies to support 'parallel build'
diff -u fgetty-0.6/debian/rules fgetty-0.6/debian/rules
--- fgetty-0.6/debian/rules
+++ fgetty-0.6/debian/rules
@@ -8,6 +8,8 @@
 
 DIR =$(shell pwd)/debian/fgetty
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 patch: deb-checkdir patch-stamp
 patch-stamp:
for i in `ls -1 debian/diff/*.diff || :`; do \
@@ -55,6 +57,8 @@
 
 binary-arch: install fgetty.deb
dpkg-gencontrol -isp -pfgetty -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792965: fastforward: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: fastforward
Version: 1:0.51-3
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 the “reproducible builds” effort [1], we have noticed
that fastforward could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u fastforward-0.51/debian/changelog fastforward-0.51/debian/changelog
--- fastforward-0.51/debian/changelog
+++ fastforward-0.51/debian/changelog
@@ -1,3 +1,10 @@
+fastforward (1:0.51-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 22:09:07 +0200
+
 fastforward (1:0.51-3) unstable; urgency=low
 
   * debian/rules: install the fastforward's newaliases program as
diff -u fastforward-0.51/debian/rules fastforward-0.51/debian/rules
--- fastforward-0.51/debian/rules
+++ fastforward-0.51/debian/rules
@@ -7,6 +7,8 @@
 
 DIR=$(shell pwd)/debian/fastforward
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 patch: deb-checkdir patch-stamp
 patch-stamp:
for i in `ls -1 debian/diff/*.diff || :`; do \
@@ -70,6 +72,8 @@
 binary-arch: install fastforward.deb
dpkg-shlibdeps '$(DIR)'/usr/bin/* '$(DIR)'/usr/sbin/*
dpkg-gencontrol -isp -pfastforward -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 binary-indep:
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792970: fortunes-bg: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: fortunes-bg
Version: 1.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 the “reproducible builds” effort [1], we have noticed
that fortunes-bg could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru fortunes-bg-1.1/changelog fortunes-bg-1.1+nmu1/changelog
--- fortunes-bg-1.1/changelog   2004-11-30 04:56:58.0 +0100
+++ fortunes-bg-1.1+nmu1/changelog  2015-07-17 22:23:40.0 +0200
@@ -1,3 +1,10 @@
+fortunes-bg (1.1+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 22:23:29 +0200
+
 fortunes-bg (1.1) unstable; urgency=low
 
   * The text of GPL (ver. 1) included directly in the copyright file.
diff -Nru fortunes-bg-1.1/Makefile fortunes-bg-1.1+nmu1/Makefile
--- fortunes-bg-1.1/Makefile2004-11-09 02:40:45.0 +0100
+++ fortunes-bg-1.1+nmu1/Makefile   2015-07-17 22:23:26.0 +0200
@@ -10,6 +10,8 @@
 
 FORTUNEROOT=/usr/share/games/fortunes
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: $(compiled) $(u8)
rm -r bg/
mkdir bg
@@ -42,6 +44,8 @@
dpkg-gencontrol -isp
chown -R root.root tmp
chmod -R go=rX,u=rwX tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build tmp ..
 
 binary-arch:   checkroot build
diff -Nru fortunes-bg-1.1/rules fortunes-bg-1.1+nmu1/rules
--- fortunes-bg-1.1/rules   2004-11-09 02:40:45.0 +0100
+++ fortunes-bg-1.1+nmu1/rules  2015-07-17 22:23:26.0 +0200
@@ -10,6 +10,8 @@
 
 FORTUNEROOT=/usr/share/games/fortunes
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: $(compiled) $(u8)
rm -r bg/
mkdir bg
@@ -42,6 +44,8 @@
dpkg-gencontrol -isp
chown -R root.root tmp
chmod -R go=rX,u=rwX tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build tmp ..
 
 binary-arch:   checkroot build
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792971: junior-doc: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: junior-doc
Version: 1.16.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 the “reproducible builds” effort [1], we have noticed
that junior-doc could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru junior-doc-1.16.1/debian/changelog 
junior-doc-1.16.1+nmu1/debian/changelog
--- junior-doc-1.16.1/debian/changelog  2010-03-28 12:42:45.0 +0200
+++ junior-doc-1.16.1+nmu1/debian/changelog 2015-07-14 16:22:09.0 
+0200
@@ -1,3 +1,10 @@
+junior-doc (1.16.1+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to make reproducible output
+
+ -- akira   Tue, 14 Jul 2015 16:21:30 +0200
+
 junior-doc (1.16.1) unstable; urgency=low
 
   [Jari Aalto]
diff -Nru junior-doc-1.16.1/debian/rules junior-doc-1.16.1+nmu1/debian/rules
--- junior-doc-1.16.1/debian/rules  2003-03-23 20:35:56.0 +0100
+++ junior-doc-1.16.1+nmu1/debian/rules 2015-07-14 16:40:10.0 +0200
@@ -6,6 +6,8 @@
 examplesdir = $(docdir)/examples
 scriptsdir = $(examplesdir)/scripts
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: stamp-build
 stamp-build:
test -d quickguide -a -f debian/rules
@@ -42,6 +44,8 @@
gzip -c9 debian/changelog > $(docdir)/changelog.gz
chown -R root.root $(tmp) && chmod -R go=rX $(tmp)
dpkg-gencontrol -isp
+   find $(tmp) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(tmp) ..
 
 # If we were including the quickguide in ftp/doc, we would do the
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792969: flowscan: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: flowscan
Version: 1.006-13.2
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 the “reproducible builds” effort [1], we have noticed
that flowscan could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u flowscan-1.006/debian/rules flowscan-1.006/debian/rules
--- flowscan-1.006/debian/rules
+++ flowscan-1.006/debian/rules
@@ -9,6 +9,8 @@
 
 binary: binary-arch binary-indep
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 binary-arch:
 
 binary-indep: build
@@ -59,6 +61,8 @@
 
dpkg-shlibdeps debian/tmp/usr/bin/*
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 build:
diff -u flowscan-1.006/debian/changelog flowscan-1.006/debian/changelog
--- flowscan-1.006/debian/changelog
+++ flowscan-1.006/debian/changelog
@@ -1,3 +1,10 @@
+flowscan (1.006-13.3) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 22:20:28 +0200
+
 flowscan (1.006-13.2) unstable; urgency=low
 
   * Non-maintainer upload.
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792972: libjama: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: libjama
Version: 1.2.4-2
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 the “reproducible builds” effort [1], we have noticed
that libjama could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u libjama-1.2.4/debian/changelog libjama-1.2.4/debian/changelog
--- libjama-1.2.4/debian/changelog
+++ libjama-1.2.4/debian/changelog
@@ -1,3 +1,10 @@
+libjama (1.2.4-2.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Tue, 14 Jul 2015 16:33:43 +0200
+
 libjama (1.2.4-2) unstable; urgency=low
 
   * Fixed include path to TNT, closes: #383466.
diff -u libjama-1.2.4/debian/rules libjama-1.2.4/debian/rules
--- libjama-1.2.4/debian/rules
+++ libjama-1.2.4/debian/rules
@@ -4,6 +4,8 @@
 
 binary: binary-arch binary-indep
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 binary-arch:
 
 binary-indep: build
@@ -25,6 +27,8 @@
chmod 644 debian/tmp/usr/share/doc/libjama-dev/html-jama.tar.gz
 
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 build:
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792977: luakit: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: luakit
Version: 2012.09.13-r1-4
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 the “reproducible builds” effort [1], we have noticed
that luakit could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru luakit-2012.09.13-r1/debian/changelog 
luakit-2012.09.13-r1/debian/changelog
--- luakit-2012.09.13-r1/debian/changelog   2015-05-26 03:46:14.0 
+0200
+++ luakit-2012.09.13-r1/debian/changelog   2015-07-14 21:45:24.0 
+0200
@@ -1,3 +1,9 @@
+luakit (2012.09.13-r1-5) UNRELEASED; urgency=medium
+
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Tue, 14 Jul 2015 21:45:01 +0200
+
 luakit (2012.09.13-r1-4) unstable; urgency=medium
 
   * Patch from Chris Lamb to make the build reproducible.
diff -Nru luakit-2012.09.13-r1/debian/rules luakit-2012.09.13-r1/debian/rules
--- luakit-2012.09.13-r1/debian/rules   2015-05-26 03:45:48.0 +0200
+++ luakit-2012.09.13-r1/debian/rules   2015-07-14 21:43:50.0 +0200
@@ -13,6 +13,8 @@
 DEB_BUILD_GNU_TYPE = $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 STRIP=strip
 
 ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
@@ -81,6 +83,8 @@
chmod a-x debian/$(package)/usr/share/luakit/lib/lousy/*.lua
chown -R root:root debian/$(package)
chmod -R go=rX debian/$(package)
+   find debian/luakit -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
 
dpkg --build debian/$(package) ..
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792976: logapp: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: logapp
Version: 0.15-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 the “reproducible builds” effort [1], we have noticed
that logapp could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u logapp-0.15/debian/rules logapp-0.15/debian/rules
--- logapp-0.15/debian/rules
+++ logapp-0.15/debian/rules
@@ -34,6 +34,8 @@
 INSTALL_PROGRAM += -s
 endif
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: build-stamp
 
 build-stamp: patch
@@ -82,6 +84,8 @@
$(INSTALL_DIR) $(PACKAGE_DIR)/DEBIAN
cd $(PACKAGE_DIR) && find * -type f ! -regex '^DEBIAN/.*' -print0 | 
xargs -r0 md5sum > DEBIAN/md5sums
dpkg-gencontrol -p$(PACKAGE_NAME) -P$(PACKAGE_DIR)
+   find $(PACKAGE_DIR) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg-deb --build $(PACKAGE_DIR) ..
 
 binary: binary-indep binary-arch
diff -u logapp-0.15/debian/changelog logapp-0.15/debian/changelog
--- logapp-0.15/debian/changelog
+++ logapp-0.15/debian/changelog
@@ -1,3 +1,10 @@
+logapp (0.15-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Tue, 14 Jul 2015 21:36:22 +0200
+
 logapp (0.15-1) unstable; urgency=low
 
   * New upstream release
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792974: liblockfile: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: liblockfile
Version: 1.09-6
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 the “reproducible builds” effort [1], we have noticed
that liblockfile could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru liblockfile-1.09/debian/changelog liblockfile-1.09/debian/changelog
--- liblockfile-1.09/debian/changelog   2013-06-02 11:46:21.0 +0200
+++ liblockfile-1.09/debian/changelog   2015-07-14 17:12:57.0 +0200
@@ -1,3 +1,10 @@
+liblockfile (1.09-6.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Tue, 14 Jul 2015 17:12:23 +0200
+
 liblockfile (1.09-6) unstable; urgency=low
 
   * Merge 1.09-5ubuntu1
diff -Nru liblockfile-1.09/debian/rules liblockfile-1.09/debian/rules
--- liblockfile-1.09/debian/rules   2012-06-13 13:26:39.0 +0200
+++ liblockfile-1.09/debian/rules   2015-07-14 17:12:20.0 +0200
@@ -20,6 +20,8 @@
 
 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build-arch:config.status
$(checkdir)
make
@@ -68,6 +70,8 @@
$(do_md5sums)
dpkg-shlibdeps liblockfile.so
dpkg-gencontrol -pliblockfile1 -P$(tmp) -isp
+   find $(tmp) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(tmp) ..
#
#   Build liblockfile-bin
@@ -97,6 +101,8 @@
$(do_md5sums)
dpkg-shlibdeps dotlockfile
dpkg-gencontrol -pliblockfile-bin -P$(tmp) -isp
+   find $(tmp) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(tmp) ..
#
#   Build liblockfile-dev
@@ -132,6 +138,8 @@
$(tmp)/usr/share/doc/liblockfile-dev/copyright
$(do_md5sums)
dpkg-gencontrol -pliblockfile-dev -P$(tmp) -isp
+   find $(tmp) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(tmp) ..
 
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792973: liblip: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: liblip
Version: 2.0.0-1.2
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 the “reproducible builds” effort [1], we have noticed
that liblip could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u liblip-2.0.0/debian/changelog liblip-2.0.0/debian/changelog
--- liblip-2.0.0/debian/changelog
+++ liblip-2.0.0/debian/changelog
@@ -1,3 +1,10 @@
+liblip (2.0.0-1.3) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Tue, 14 Jul 2015 16:59:54 +0200
+
 liblip (2.0.0-1.2) unstable; urgency=low
 
   * Non-maintainer upload.
diff -u liblip-2.0.0/debian/rules liblip-2.0.0/debian/rules
--- liblip-2.0.0/debian/rules
+++ liblip-2.0.0/debian/rules
@@ -4,6 +4,8 @@
 
 STRIP  = strip --strip-unneeded --remove-section=.comment 
--remove-section=.note
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build:
$(checkdir)
cp -f /usr/share/misc/config.sub .
@@ -69,6 +71,8 @@
chown -R root.root debian/liblip2
chmod -x debian/liblip2/usr/lib/lip/*
chmod -R go=rX debian/liblip2
+   find debian/liblip2 -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/liblip2 ..
 
dpkg-gencontrol -isp -pliblip-dev -Pdebian/liblip-dev
@@ -77,6 +81,8 @@
chmod -x debian/liblip-dev/usr/lib/lip/liblip.a
chmod -x debian/liblip-dev/usr/lib/lip/liblip.la
chmod -R go=rX debian/liblip-dev
+   find debian/liblip-dev -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/liblip-dev ..
 
 define checkdir
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792975: libmsv: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: libmsv
Version: 1.1-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 the “reproducible builds” effort [1], we have noticed
that libmsv could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru libmsv-1.1/debian/changelog libmsv-1.1/debian/changelog
--- libmsv-1.1/debian/changelog 2014-03-14 18:19:51.0 +0100
+++ libmsv-1.1/debian/changelog 2015-07-14 20:36:34.0 +0200
@@ -1,3 +1,10 @@
+libmsv (1.1-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Tue, 14 Jul 2015 19:53:34 +0200
+
 libmsv (1.1-1) unstable; urgency=medium
 
   * New upstream version.
diff -Nru libmsv-1.1/debian/rules libmsv-1.1/debian/rules
--- libmsv-1.1/debian/rules 2014-03-14 18:16:54.0 +0100
+++ libmsv-1.1/debian/rules 2015-07-14 19:53:27.0 +0200
@@ -9,6 +9,7 @@
 DEB_BUILD_ARCH_OS ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH_OS)
 DEB_BUILD_GNU_TYPE = $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
 
 STRIP=strip
 
@@ -80,12 +81,16 @@
dpkg-gencontrol -ldebian/changelog -isp -p$(package) 
-Tdebian/$(package).substvars -Pdebian/$(package)
chown -R root:root debian/$(package)
chmod -R go=rX debian/$(package)
+   find debian/$(package) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/$(package) ..
 
cd debian/$(devpkg) && find * -type f ! -regex '^DEBIAN/.*' -print0 | 
xargs -r0 md5sum > DEBIAN/md5sums
dpkg-gencontrol -ldebian/changelog -isp -p$(devpkg) 
-Tdebian/$(devpkg).substvars -Pdebian/$(devpkg)
chown -R root:root debian/$(devpkg)
chmod -R go=rX debian/$(devpkg)
+   find debian/$(devpkg) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/$(devpkg) ..
 
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792978: nec: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: nec
Version: 2-16
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 the “reproducible builds” effort [1], we have noticed
that nec could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u nec-2/debian/changelog nec-2/debian/changelog
--- nec-2/debian/changelog
+++ nec-2/debian/changelog
@@ -1,3 +1,10 @@
+nec (2-16.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Tue, 14 Jul 2015 21:55:17 +0200
+
 nec (2-16) unstable; urgency=low
   * fix spelling error in nec2small binary
   * remove duplicate priority field in control file
diff -u nec-2/debian/rules nec-2/debian/rules
--- nec-2/debian/rules
+++ nec-2/debian/rules
@@ -16,7 +16,9 @@
 
 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
 INSTALL_PROGRAM += -s
-endif 
+endif
+
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
 
 build:
$(checkdir)
@@ -99,6 +101,8 @@
dh_md5sums --tmpdir=debian/tmp
chown -R root.root debian/tmp
chmod -R go=rX debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 define checkdir
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792979: runit: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: runit
Version: 2.1.2-3
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 the “reproducible builds” effort [1], we have noticed
that runit could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u runit-2.1.2/debian/changelog runit-2.1.2/debian/changelog
--- runit-2.1.2/debian/changelog
+++ runit-2.1.2/debian/changelog
@@ -1,3 +1,10 @@
+runit (2.1.2-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Wed, 15 Jul 2015 17:10:54 +0200
+
 runit (2.1.2-3) unstable; urgency=medium
 
   * workaround #766187 by copying from sysvinit-2.88dsf:
diff -u runit-2.1.2/debian/rules runit-2.1.2/debian/rules
--- runit-2.1.2/debian/rules
+++ runit-2.1.2/debian/rules
@@ -12,6 +12,8 @@
 CPPFLAGS =$(shell DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) \
   dpkg-buildflags --get CPPFLAGS)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 DEB_HOST_GNU_TYPE =$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE =$(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
@@ -144,6 +146,8 @@
test '$(CC)' != 'gcc' || \
  dpkg-shlibdeps '$(DIR)'/usr/sbin/* '$(DIR)'/usr/bin/*
dpkg-gencontrol -isp -prunit -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792980: tworld: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: tworld
Version: 1.3.0-6
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 the “reproducible builds” effort [1], we have noticed
that tworld could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u tworld-1.3.0/debian/rules tworld-1.3.0/debian/rules
--- tworld-1.3.0/debian/rules
+++ tworld-1.3.0/debian/rules
@@ -18,6 +18,7 @@
 DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
 
 CFLAGS  = -Wall -W -fomit-frame-pointer -DNDEBUG
 LDFLAGS = -Wall -W
@@ -114,6 +115,8 @@
-p$(PKG1) -P$(TMP1)
cd $(TMP1) && find * -type f ! -regex '^DEBIAN/.*' -print0 | \
xargs -r0 md5sum > DEBIAN/md5sums
+   find $(TMP1) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(TMP1) ..
 
$(INSTALL_FILE) debian/copyright debian/README.Debian \
@@ -125,6 +128,8 @@
-p$(PKG2) -P$(TMP2)
cd $(TMP2) && find * -type f ! -regex '^DEBIAN/.*' -print0 | \
xargs -r0 md5sum > DEBIAN/md5sums
+   find $(TMP2) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(TMP2) ..
 
 binary: binary-indep binary-arch
diff -u tworld-1.3.0/debian/changelog tworld-1.3.0/debian/changelog
--- tworld-1.3.0/debian/changelog
+++ tworld-1.3.0/debian/changelog
@@ -1,3 +1,10 @@
+tworld (1.3.0-6.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Wed, 15 Jul 2015 19:14:15 +0200
+
 tworld (1.3.0-6) unstable; urgency=low
 
   [ Peter Pentchev ]
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792982: ftpcopy: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: ftpcopy
Version: 0.6.7-3
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 the “reproducible builds” effort [1], we have noticed
that ftpcopy could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u ftpcopy-0.6.7/debian/changelog ftpcopy-0.6.7/debian/changelog
--- ftpcopy-0.6.7/debian/changelog
+++ ftpcopy-0.6.7/debian/changelog
@@ -1,3 +1,10 @@
+ftpcopy (0.6.7-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Sun, 19 Jul 2015 13:51:02 +0200
+
 ftpcopy (0.6.7-3) unstable; urgency=medium
 
   * debian/diff/disable--html-option.diff: the --html option is no
diff -u ftpcopy-0.6.7/debian/rules ftpcopy-0.6.7/debian/rules
--- ftpcopy-0.6.7/debian/rules
+++ ftpcopy-0.6.7/debian/rules
@@ -17,6 +17,8 @@
 
 DIR =$(shell pwd)/debian/ftpcopy
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 unpack: deb-checkdir unpack-stamp
 unpack-stamp:
rm -rf web
@@ -70,7 +72,9 @@
 
 binary-arch: deb-checkdir deb-checkuid install-arch ftpcopy.deb
test '$(DIET)' -ne 0 || dpkg-shlibdeps '$(DIR)'/usr/bin/*
-   dpkg-gencontrol -isp -pftpcopy -P'$(DIR)' 
+   dpkg-gencontrol -isp -pftpcopy -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary-indep: deb-checkdir deb-checkuid install-indep
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792981: wmweather: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: wmweather
Version: 2.4.5-2
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 the “reproducible builds” effort [1], we have noticed
that wmweather could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru wmweather-2.4.5/debian/changelog wmweather-2.4.5/debian/changelog
--- wmweather-2.4.5/debian/changelog2013-12-30 16:28:13.0 +0100
+++ wmweather-2.4.5/debian/changelog2015-07-15 19:36:09.0 +0200
@@ -1,3 +1,10 @@
+wmweather (2.4.5-2.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Wed, 15 Jul 2015 19:35:49 +0200
+
 wmweather (2.4.5-2) unstable; urgency=low
 
   * Updated build system.
diff -Nru wmweather-2.4.5/debian/rules wmweather-2.4.5/debian/rules
--- wmweather-2.4.5/debian/rules2013-12-30 16:15:09.0 +0100
+++ wmweather-2.4.5/debian/rules2015-07-15 19:35:47.0 +0200
@@ -17,6 +17,8 @@
 export CFLAGS
 export LDFLAGS
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 clean:
$(testdir)
rm -f build-stamp debian/files debian/substvars
@@ -66,6 +68,8 @@
dpkg-shlibdeps debian/wmweather/usr/bin/wmweather
dpkg-gencontrol -isp -pwmweather -Pdebian/wmweather
chmod -R u+w,go=u-w debian/wmweather
+   find debian/wmweather -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/wmweather ..
 
 binary-indep:
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792983: gerstensaft: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: gerstensaft
Version: 0.3-4
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 the “reproducible builds” effort [1], we have noticed
that gerstensaft could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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




diff -u gerstensaft-0.3/debian/rules gerstensaft-0.3/debian/rules
--- gerstensaft-0.3/debian/rules
+++ gerstensaft-0.3/debian/rules
@@ -17,6 +17,8 @@
 #
 SHELL=/bin/bash
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 # The name and version of the source
 #
 source = $(shell grep "^Source: " debian/control|head -1|sed 's/Source: 
\(.*\)/\1/g')
@@ -85,6 +87,8 @@
#
dpkg-shlibdeps debian/tmp/usr/bin/beer
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
diff -u gerstensaft-0.3/debian/changelog gerstensaft-0.3/debian/changelog
--- gerstensaft-0.3/debian/changelog
+++ gerstensaft-0.3/debian/changelog
@@ -1,3 +1,10 @@
+gerstensaft (0.3-4.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Sun, 19 Jul 2015 13:59:51 +0200
+
 gerstensaft (0.3-4) unstable; urgency=low
 
   * Properly separate homepage
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792984: integrit: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: integrit
Version: 4.1-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 the “reproducible builds” effort [1], we have noticed
that integrit could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u integrit-4.1/debian/changelog integrit-4.1/debian/changelog
--- integrit-4.1/debian/changelog
+++ integrit-4.1/debian/changelog
@@ -1,3 +1,10 @@
+integrit (4.1-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Sun, 19 Jul 2015 14:26:24 +0200
+
 integrit (4.1-1) unstable; urgency=low
 
   * new upstream release.
diff -u integrit-4.1/debian/rules integrit-4.1/debian/rules
--- integrit-4.1/debian/rules
+++ integrit-4.1/debian/rules
@@ -7,6 +7,7 @@
 DEB_HOST_GNU_TYPE ?=$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE ?=$(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 DEB_HOST_ARCH ?=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
 
 DIET_ARCHS =alpha amd64 arm hppa i386 ia64 mips mipsel powerpc ppc64 s390 sparc
 ifeq (,$(findstring $(DEB_HOST_ARCH),$(DIET_ARCHS)))
@@ -101,6 +102,8 @@
 
 binary-arch: deb-checkdir deb-checkuid install integrit.deb
dpkg-gencontrol -isp -pintegrit -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792986: uruk: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: uruk
Version:20150401-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 the “reproducible builds” effort [1], we have noticed
that uruk could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata. Once applied, uruk can be
built reproducibly in our current experimental framework.


Cheers,
akira

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


diff -Nru uruk-20150401/debian/changelog uruk-20150401/debian/changelog
--- uruk-20150401/debian/changelog  2015-05-12 21:21:41.0 +0200
+++ uruk-20150401/debian/changelog  2015-07-14 15:07:03.0 +0200
@@ -1,3 +1,10 @@
+uruk (20150401-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Tue, 14 Jul 2015 15:06:27 +0200
+
 uruk (20150401-1) unstable; urgency=low
 
   * New upstream release: The Gorp en Roovert Release (missed: uruk version
diff -Nru uruk-20150401/debian/rules uruk-20150401/debian/rules
--- uruk-20150401/debian/rules  2015-05-12 21:21:41.0 +0200
+++ uruk-20150401/debian/rules  2015-07-14 15:03:38.0 +0200
@@ -17,6 +17,8 @@
 package=uruk
 docdir = debian/$(package)/usr/share/doc/$(package)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 define checkdir
test -f debian/rules
 endef
@@ -89,6 +91,8 @@
 done
chown -R root.root debian/$(package)
chmod -R go=rX debian/$(package)
+   find debian/$(package) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/$(package) ..
 
 binary-arch: checkroot build
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792988: xbs: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: xbs
Version: 0-9
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 the “reproducible builds” effort [1], we have noticed
that xbs could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata. Once applied, xbs can be built
reproducibly in our current experimental framework.


Cheers,
akira

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



diff -Nru xbs-0/debian/changelog xbs-0/debian/changelog
--- xbs-0/debian/changelog  2015-03-07 23:59:59.0 +0100
+++ xbs-0/debian/changelog  2015-07-14 15:14:23.0 +0200
@@ -1,3 +1,10 @@
+xbs (0-9.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages
+
+ -- akira   Tue, 14 Jul 2015 15:13:30 +0200
+
 xbs (0-9) unstable; urgency=low
 
   * patch from Sylvestre Ledru  to make this build
diff -Nru xbs-0/debian/rules xbs-0/debian/rules
--- xbs-0/debian/rules  2015-03-07 23:58:40.0 +0100
+++ xbs-0/debian/rules  2015-07-14 15:13:21.0 +0200
@@ -7,6 +7,8 @@
 
 ddir=`pwd`/debian/tmp
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build:
$(checkdir)
make 
@@ -70,6 +72,8 @@
 # clean permissions and build
chown -R root:root debian/tmp
chmod -R go=rX debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 define checkdir
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792989: freecdb: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: freecdb
Version: 0.75
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 the “reproducible builds” effort [1], we have noticed
that freecdb could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru freecdb-0.75/debian/changelog freecdb-0.75+nmu1/debian/changelog
--- freecdb-0.75/debian/changelog   2006-01-13 22:12:00.0 +0100
+++ freecdb-0.75+nmu1/debian/changelog  2015-07-19 13:45:25.0 +0200
@@ -1,3 +1,10 @@
+freecdb (0.75+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Sun, 19 Jul 2015 13:45:01 +0200
+
 freecdb (0.75) unstable; urgency=low
 
   * take over upstream (closes: #272127).
diff -Nru freecdb-0.75/debian/rules freecdb-0.75+nmu1/debian/rules
--- freecdb-0.75/debian/rules   2006-01-13 22:12:00.0 +0100
+++ freecdb-0.75+nmu1/debian/rules  2015-07-19 13:44:58.0 +0200
@@ -12,6 +12,8 @@
 
 DIR =$(shell pwd)/debian/freecdb
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: deb-checkdir build-stamp
 build-stamp: 
$(MAKE) CC='$(CC)'
@@ -40,6 +42,8 @@
 binary-arch: install freecdb.deb
test '$(CC)' != 'gcc' || dpkg-shlibdeps '$(DIR)'/usr/bin/*
dpkg-gencontrol -isp -pfreecdb -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792985: ipsvd: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: ipsvd
Version: 1.0.0-3
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 the “reproducible builds” effort [1], we have noticed
that ipsvd could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u ipsvd-1.0.0/debian/changelog ipsvd-1.0.0/debian/changelog
--- ipsvd-1.0.0/debian/changelog
+++ ipsvd-1.0.0/debian/changelog
@@ -1,3 +1,10 @@
+ipsvd (1.0.0-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Sun, 19 Jul 2015 14:42:34 +0200
+
 ipsvd (1.0.0-3) unstable; urgency=low
 
   * debian/rules: no longer install the sslsvd, sslio programs and man
diff -u ipsvd-1.0.0/debian/rules ipsvd-1.0.0/debian/rules
--- ipsvd-1.0.0/debian/rules
+++ ipsvd-1.0.0/debian/rules
@@ -14,6 +14,8 @@
 
 DIR =$(shell pwd)/debian/ipsvd
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 patch: deb-checkdir patch-stamp
 patch-stamp:
for i in `ls -1 debian/diff/*.diff || :`; do \
@@ -68,6 +70,8 @@
 binary-arch: install ipsvd.deb
test '$(CC)' != 'gcc' || dpkg-shlibdeps '$(DIR)'/usr/bin/*
dpkg-gencontrol -isp -pipsvd -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792987: jargon: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: jargon
Version: 4.0.0-5.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 the “reproducible builds” effort [1], we have noticed
that jargon could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -u jargon-4.0.0/debian/changelog jargon-4.0.0/debian/changelog
--- jargon-4.0.0/debian/changelog
+++ jargon-4.0.0/debian/changelog
@@ -1,3 +1,10 @@
+jargon (4.0.0-5.2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Sun, 19 Jul 2015 14:50:54 +0200
+
 jargon (4.0.0-5.1) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -u jargon-4.0.0/debian/rules jargon-4.0.0/debian/rules
--- jargon-4.0.0/debian/rules
+++ jargon-4.0.0/debian/rules
@@ -11,6 +11,8 @@
 MANDIR=$(DESTDIR)/usr/share/man
 INFODIR=$(DESTDIR)/usr/share/info
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build:
$(checkdir)
touch build
@@ -52,6 +54,8 @@
dpkg-gencontrol -isp
chown -R root.root debian/tmp
chmod -R go=rX debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary-arch:   checkroot build
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792990: skalibs: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: skalibs
Version: 0.47-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 the “reproducible builds” effort [1], we have noticed
that skalibs could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -u skalibs-0.47/debian/changelog skalibs-0.47/debian/changelog
--- skalibs-0.47/debian/changelog
+++ skalibs-0.47/debian/changelog
@@ -1,3 +1,10 @@
+skalibs (0.47-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Wed, 15 Jul 2015 18:15:29 +0200
+
 skalibs (0.47-1) unstable; urgency=low
 
   * new upstream version.
diff -u skalibs-0.47/debian/rules skalibs-0.47/debian/rules
--- skalibs-0.47/debian/rules
+++ skalibs-0.47/debian/rules
@@ -14,6 +14,8 @@
 
 DIR =$(shell pwd)/debian/skalibs
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 configure: deb-checkdir configure-stamp
 configure-stamp:
ln -s skalibs-0.47 skalibs
@@ -81,10 +83,14 @@
 
 binary-indep: install-indep skalibs-doc.deb
dpkg-gencontrol -isp -pskalibs-doc -P'$(DIR)'-doc
+   find '$(DIR)'-doc -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)'-doc ..
 
 binary-arch: install-arch skalibs-dev.deb
dpkg-gencontrol -isp -pskalibs-dev -P'$(DIR)'-dev
+   find '$(DIR)'-dev -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)'-dev ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792993: cgoban: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: cgoban
Version: 1.9.14-17
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 the “reproducible builds” effort [1], we have noticed
that cgoban could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata. Once applied, cgoban can be
built reproducibly in our current experimental framework.


Cheers,
akira

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



diff -Nru cgoban-1.9.14/debian/changelog cgoban-1.9.14/debian/changelog
--- cgoban-1.9.14/debian/changelog  2012-05-06 20:31:51.0 +0200
+++ cgoban-1.9.14/debian/changelog  2015-07-14 11:33:04.0 +0200
@@ -1,3 +1,11 @@
+cgoban (1.9.14-17.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible
+output
+
+ -- akira   Tue, 14 Jul 2015 11:32:08 +0200
+
 cgoban (1.9.14-17) unstable; urgency=low
 
   * Fixed crash on maximization, closes: #387209.
diff -Nru cgoban-1.9.14/debian/rules cgoban-1.9.14/debian/rules
--- cgoban-1.9.14/debian/rules  2012-05-06 20:31:30.0 +0200
+++ cgoban-1.9.14/debian/rules  2015-07-14 14:34:19.0 +0200
@@ -3,6 +3,8 @@
 testdir  = test -f src/goBoard.c && test -f debian/rules
 testroot = test x`whoami` = xroot
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 # FOR AUTOCONF 2.52 AND NEWER ONLY
 ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
CONFFLAGS += --build $(DEB_HOST_GNU_TYPE)
@@ -72,6 +74,8 @@
dpkg-shlibdeps debian/cgoban/usr/games/cgoban
dpkg-gencontrol -isp -pcgoban -Pdebian/cgoban
chmod -R u+w,go=u-w debian/cgoban
+   find debian/cgoban -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/cgoban ..
 
 .PHONY: clean binary binary-arch binary-indep
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792991: gpsmanshp: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: gpsmanshp
Version: 1.2.3-4
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 the “reproducible builds” effort [1], we have noticed
that gpsmanshp could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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


diff -Nru gpsmanshp-1.2.3/debian/changelog gpsmanshp-1.2.3/debian/changelog
--- gpsmanshp-1.2.3/debian/changelog2013-10-11 09:06:04.0 +0200
+++ gpsmanshp-1.2.3/debian/changelog2015-07-19 14:06:26.0 +0200
@@ -1,3 +1,10 @@
+gpsmanshp (1.2.3-4.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Sun, 19 Jul 2015 14:06:15 +0200
+
 gpsmanshp (1.2.3-4) unstable; urgency=low
 
   * Fixed permissions of some control files
diff -Nru gpsmanshp-1.2.3/debian/rules gpsmanshp-1.2.3/debian/rules
--- gpsmanshp-1.2.3/debian/rules2013-10-11 09:18:35.0 +0200
+++ gpsmanshp-1.2.3/debian/rules2015-07-19 14:06:12.0 +0200
@@ -10,6 +10,8 @@
 
 LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: 
$(MAKE) -f Makefile TCLVERSION=$(TCLVERSION) LDFLAGS=$(LDFLAGS)
 
@@ -53,6 +55,8 @@
dpkg-shlibdeps $(INSTALLDIR)/gpsmanshp.so
dpkg-gencontrol -isp
(cd $(TMPROOT) ; md5sum usr/lib/tcl$(TCLVERSION)/gpsmanshp.so > 
DEBIAN/md5sums ; md5sum usr/share/doc/gpsmanshp/* >>  DEBIAN/md5sums ; md5sum 
usr/share/doc/gpsmanshp/html/*  >>  DEBIAN/md5sums ; chmod 644 DEBIAN/md5sums)
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg-deb --build $(TMPROOT) ..
 
 binary: binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792994: angband-doc: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: angband-doc
Version: 3.0.3.5
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 the “reproducible builds” effort [1], we have noticed
that angband-doc could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata. Once applied, angband-doc can
be built reproducibly in our current experimental framework.


Cheers,
akira

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



diff -Nru angband-doc-3.0.3.5/debian/changelog 
angband-doc-3.0.3.5+nmu1/debian/changelog
--- angband-doc-3.0.3.5/debian/changelog2009-06-25 16:25:54.0 
+0200
+++ angband-doc-3.0.3.5+nmu1/debian/changelog   2015-07-14 15:23:55.0 
+0200
@@ -1,3 +1,10 @@
+angband-doc (3.0.3.5+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to make reproducible output
+
+ -- akira   Tue, 14 Jul 2015 15:23:14 +0200
+
 angband-doc (3.0.3.5) unstable; urgency=low
 
   * New bug fixing release
diff -Nru angband-doc-3.0.3.5/debian/local.mk 
angband-doc-3.0.3.5+nmu1/debian/local.mk
--- angband-doc-3.0.3.5/debian/local.mk 2008-11-30 04:51:09.0 +0100
+++ angband-doc-3.0.3.5+nmu1/debian/local.mk2015-07-14 15:23:12.0 
+0200
@@ -21,10 +21,11 @@
 debian/stamp/INST/angband-doc: debian/stamp/install/angband-doc
 debian/stamp/BIN/angband-doc:  debian/stamp/binary/angband-doc
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 CLEAN/angband-doc::
-rm -rf $(TMPTOP)
 
-
 debian/stamp/install/angband-doc:
$(checkdir)
$(REASON)
@@ -59,6 +60,8 @@
$(create_md5sum) $(TMPTOP)
chown -R root$(TMPTOP)
chmod -R u+w,go=rX   $(TMPTOP)
+   find $(TMPTOP) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(TMPTOP) ..
@test -d debian/stamp/binary || mkdir -p debian/stamp/binary
@echo done > $@
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#793000: beav : please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: beav
Version: 1:1.40-18
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 the “reproducible builds” effort [1], we have noticed
that beav could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -u beav-1.40/debian/rules beav-1.40/debian/rules
--- beav-1.40/debian/rules
+++ beav-1.40/debian/rules
@@ -7,6 +7,8 @@
 ARCH = $(shell dpkg --print-installation-architecture)
 STRIP=strip --strip-unneeded --remove-section=.note --remove-section=.comment
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build:
 # Builds the binary package.
make CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
@@ -40,6 +42,8 @@
dpkg-gencontrol -isp
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
diff -u beav-1.40/debian/changelog beav-1.40/debian/changelog
--- beav-1.40/debian/changelog
+++ beav-1.40/debian/changelog
@@ -1,3 +1,10 @@
+beav (1:1.40-18.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Thu, 16 Jul 2015 20:58:48 +0200
+
 beav (1:1.40-18) unstable; urgency=low
 
   * Repackaged with the original 1.40 source so that we get a proper diff.gz.
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792996: bcron : please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: bcron
Version: 0.10-3
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 the “reproducible builds” effort [1], we have noticed
that bcron could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -u bcron-0.10/debian/changelog bcron-0.10/debian/changelog
--- bcron-0.10/debian/changelog
+++ bcron-0.10/debian/changelog
@@ -1,3 +1,10 @@
+bcron (0.10-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Thu, 16 Jul 2015 20:45:09 +0200
+
 bcron (0.10-3) unstable; urgency=medium
 
   * debian/control: Revert bcron-run: Provides:, Replaces:, Conflicts:
diff -u bcron-0.10/debian/rules bcron-0.10/debian/rules
--- bcron-0.10/debian/rules
+++ bcron-0.10/debian/rules
@@ -26,6 +26,8 @@
done
touch patch-stamp
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 build: deb-checkdir build-arch-stamp build-indep-stamp
 
 build-arch: deb-checkdir build-arch-stamp
@@ -111,10 +113,14 @@
test '$(CC)' != 'gcc' || \
  dpkg-shlibdeps '$(DIR)'/usr/bin/* '$(DIR)'/usr/sbin/*
dpkg-gencontrol -isp -pbcron -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary-indep: deb-checkdir deb-checkuid install-indep bcron-run.deb
dpkg-gencontrol -isp -pbcron-run -P'$(DIR)'-run
+   find '$(DIR)'-run -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)'-run ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792995: abook: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: abook
Version: 0.6.0~pre2-4
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 the “reproducible builds” effort [1], we have noticed
that abook could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -Nru abook-0.6.0~pre2/debian/changelog abook-0.6.0~pre2/debian/changelog
--- abook-0.6.0~pre2/debian/changelog   2015-07-07 17:39:52.0 +0200
+++ abook-0.6.0~pre2/debian/changelog   2015-07-15 20:06:33.0 +0200
@@ -1,3 +1,10 @@
+abook (0.6.0~pre2-4.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Wed, 15 Jul 2015 20:06:12 +0200
+
 abook (0.6.0~pre2-4) unstable; urgency=medium
 
   [ Rhonda D'Vine ]
diff -Nru abook-0.6.0~pre2/debian/rules abook-0.6.0~pre2/debian/rules
--- abook-0.6.0~pre2/debian/rules   2015-07-06 18:34:40.0 +0200
+++ abook-0.6.0~pre2/debian/rules   2015-07-15 20:06:07.0 +0200
@@ -13,6 +13,8 @@
 QUILT_STAMPFN = patch-stamp
 include /usr/share/quilt/quilt.make
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 CFLAGS = -g -Wall -std=gnu89
 INSTALL = install
 INSTALL_FILE= $(INSTALL) -p-oroot -groot -m644
@@ -101,6 +103,8 @@
-p$(PKG) -P$(TMP)
cd $(TMP) && find * -type f ! -regex '^DEBIAN/.*' -print0 | \
xargs -r0 md5sum > DEBIAN/md5sums
+   find $(TMP) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(TMP) ..
 
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#793003: daemontools: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: daemontools
Version: 1:0.76-6
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 the “reproducible builds” effort [1], we have noticed
that daemontools could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -u daemontools-0.76/debian/changelog daemontools-0.76/debian/changelog
--- daemontools-0.76/debian/changelog
+++ daemontools-0.76/debian/changelog
@@ -1,3 +1,10 @@
+daemontools (1:0.76-6.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 16:42:42 +0200
+
 daemontools (1:0.76-6) unstable; urgency=medium
 
   * workaround #767933 by copying from sysvinit-2.88dsf:
diff -u daemontools-0.76/debian/rules daemontools-0.76/debian/rules
--- daemontools-0.76/debian/rules
+++ daemontools-0.76/debian/rules
@@ -7,6 +7,8 @@
 
 DIR =$(shell pwd)/debian/daemontools
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 patch: deb-checkdir patch-stamp
 patch-stamp:
for i in `ls -1 debian/diff/*.diff || :`; do \
@@ -94,9 +96,13 @@
 binary-arch: install-arch daemontools.deb
dpkg-shlibdeps '$(DIR)'/usr/bin/*
dpkg-gencontrol -isp -pdaemontools -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 binary-indep: install-indep daemontools-run.deb
dpkg-gencontrol -isp -pdaemontools-run -P'$(DIR)'-run
+   find '$(DIR)'-run -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)'-run ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792999: console-cyrillic: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: console-cyrillic
Version: 0.9-16.2
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 the “reproducible builds” effort [1], we have noticed
that console-cyrillic could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -u console-cyrillic-0.9/debian/changelog 
console-cyrillic-0.9/debian/changelog
--- console-cyrillic-0.9/debian/changelog
+++ console-cyrillic-0.9/debian/changelog
@@ -1,3 +1,10 @@
+console-cyrillic (0.9-16.3) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 16:29:06 +0200
+
 console-cyrillic (0.9-16.2) unstable; urgency=low
 
   * Non-maintainer upload.
diff -u console-cyrillic-0.9/debian/rules console-cyrillic-0.9/debian/rules
--- console-cyrillic-0.9/debian/rules
+++ console-cyrillic-0.9/debian/rules
@@ -14,6 +14,8 @@
 
 kazakh=debian/binary/console-kazakh-0.2b
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 debian/binary.tar.gz.uu:
$(checkdir)
cd debian && tar cf - binary | gzip -9 | uuencode binary.tar.gz 
>binary.tar.gz.uu
@@ -140,6 +142,8 @@
dpkg-gencontrol -isp
chown -R root.root debian/tmp
chmod -R go=rX,u=rwX debian/tmp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary-arch:   checkroot build
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#793001: blosxom: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: blosxom
Version: 2.1.2-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 the “reproducible builds” effort [1], we have noticed
that blosxom could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -u blosxom-2.1.2/debian/changelog blosxom-2.1.2/debian/changelog
--- blosxom-2.1.2/debian/changelog
+++ blosxom-2.1.2/debian/changelog
@@ -1,3 +1,10 @@
+blosxom (2.1.2-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Thu, 16 Jul 2015 23:03:56 +0200
+
 blosxom (2.1.2-1) unstable; urgency=high
 
   * New upstream release: Fixes Cross-Site Scripting (XSS) vulnerability with
diff -u blosxom-2.1.2/debian/rules blosxom-2.1.2/debian/rules
--- blosxom-2.1.2/debian/rules
+++ blosxom-2.1.2/debian/rules
@@ -12,7 +12,7 @@
 INSTALL_SCRIPT  = $(INSTALL) -p-oroot -groot -m755
 INSTALL_DIR = $(INSTALL) -p -d -oroot -groot -m755
 
-
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
 
 clean:
$(checkdir)
@@ -72,6 +72,8 @@
dpkg-gencontrol -ldebian/changelog -isp -p$(PKG) -P$(TMP)
cd $(TMP) && find * -type f ! -regex '^DEBIAN/.*' -print0 | \
xargs -r0 md5sum > DEBIAN/md5sums
+   find $(TMP) -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $(TMP) ..
 
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#792998: chiark-utils: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: chiark-utils
Version: 4.4.2
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 the “reproducible builds” effort [1], we have noticed
that chiark-utils  could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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




diff -Nru chiark-utils-4.4.2/debian/changelog 
chiark-utils-4.4.2+nmu1/debian/changelog
--- chiark-utils-4.4.2/debian/changelog 2014-12-21 16:14:10.0 +0100
+++ chiark-utils-4.4.2+nmu1/debian/changelog2015-07-17 00:14:23.0 
+0200
@@ -1,3 +1,10 @@
+chiark-utils (4.4.2+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 00:14:00 +0200
+
 chiark-utils (4.4.2) unstable; urgency=low
 
   Copyright licencing fixes:
diff -Nru chiark-utils-4.4.2/debian/rules chiark-utils-4.4.2+nmu1/debian/rules
--- chiark-utils-4.4.2/debian/rules 2014-10-26 15:20:47.0 +0100
+++ chiark-utils-4.4.2+nmu1/debian/rules2015-07-17 00:13:56.0 
+0200
@@ -9,6 +9,8 @@
 packages_arch= chiark-rwbuffer chiark-really chiark-utils-bin
 packages=  $(packages_indep) $(packages_arch)
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 cwd=   $(shell pwd)
 d= $(cwd)/debian
 t= $d/tmp
@@ -113,6 +115,8 @@
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
debian/rules binary-hook-$p
+   find $t/$p -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build $t/$p ..
 
 binary-indep:  checkroot build binary-prep
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#793005: checkpw: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: checkpw
Version: 1.02-1.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 the “reproducible builds” effort [1], we have noticed
that checkpw could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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




diff -u checkpw-1.02/debian/changelog checkpw-1.02/debian/changelog
--- checkpw-1.02/debian/changelog
+++ checkpw-1.02/debian/changelog
@@ -1,3 +1,10 @@
+checkpw (1.02-1.2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 00:06:55 +0200
+
 checkpw (1.02-1.1) unstable; urgency=high
 
   * Non-maintainer upload.
diff -u checkpw-1.02/debian/rules checkpw-1.02/debian/rules
--- checkpw-1.02/debian/rules
+++ checkpw-1.02/debian/rules
@@ -7,6 +7,7 @@
 
 DIET_ARCHS =alpha amd64 arm hppa i386 ia64 mips mipsel powerpc ppc64 s390 sparc
 ARCH ?=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
 
 ifneq (,$(findstring diet,$(DEB_BUILD_OPTIONS)))
   CC =diet -v -Os gcc
@@ -79,6 +80,8 @@
 binary-arch: deb-checkdir deb-checkuid install checkpw.deb
test '$(CC)' != 'gcc' || dpkg-shlibdeps '$(DIR)'/usr/bin/*
dpkg-gencontrol -isp -pcheckpw -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#793002: cgilib: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: cgilib
Version: 0.6-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 the “reproducible builds” effort [1], we have noticed
that cgilib could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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




diff -u cgilib-0.6/debian/changelog cgilib-0.6/debian/changelog
--- cgilib-0.6/debian/changelog
+++ cgilib-0.6/debian/changelog
@@ -1,3 +1,10 @@
+cgilib (0.6-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 00:01:36 +0200
+
 cgilib (0.6-1) unstable; urgency=low
 
   * New upstream version
diff -u cgilib-0.6/debian/rules cgilib-0.6/debian/rules
--- cgilib-0.6/debian/rules
+++ cgilib-0.6/debian/rules
@@ -23,6 +23,8 @@
 version = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*(\(.*\)\-[^\-]*).*/\1/g')
 revision = $(shell grep "^$(source) " debian/changelog|head -1 |sed 
's/.*([^\-]*\-\(.*\)).*/\1/g')
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 installbin = install -g root -o root -m 755
 installdoc = install -g root -o root -m 644
 
@@ -92,6 +94,8 @@
#
 #  dpkg-shlibdeps debian/tmp/usr/tmp/$(MSHLIB0)
dpkg-gencontrol -isp
+   find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg --build debian/tmp ..
 
 binary: binary-indep binary-arch
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#793004: debdelta: please make the build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: debdelta
Version: 0.55
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 the “reproducible builds” effort [1], we have noticed
that debdelta could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -Nru debdelta-0.55/debian/changelog debdelta-0.55+nmu1/debian/changelog
--- debdelta-0.55/debian/changelog  2014-11-30 18:31:13.0 +0100
+++ debdelta-0.55+nmu1/debian/changelog 2015-07-17 17:14:11.0 +0200
@@ -1,3 +1,10 @@
+debdelta (0.55+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output 
+
+ -- akira   Fri, 17 Jul 2015 17:13:55 +0200
+
 debdelta (0.55) unstable; urgency=medium
 
   * update git location
diff -Nru debdelta-0.55/debian/rules debdelta-0.55+nmu1/debian/rules
--- debdelta-0.55/debian/rules  2014-11-30 18:31:13.0 +0100
+++ debdelta-0.55+nmu1/debian/rules 2015-07-17 17:13:52.0 +0200
@@ -5,6 +5,8 @@
 
 D = debian/debdelta
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 docdir = $(D)/usr/share/doc/$(package)
 mandir = $(D)/usr/share/man/man1/
 
@@ -58,6 +60,8 @@
# build package
dpkg-gencontrol -Pdebian/debdelta-doc -pdebdelta-doc
chown -R root:root $(D2)
+   find debian/debdelta-doc -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg-deb --build $(D2) ..
 
 binary-arch:   checkroot build
@@ -102,6 +106,8 @@
dpkg-shlibdeps $(D)/usr/lib/debdelta/minigzip  
$(D)/usr/lib/debdelta/minibzip2
dpkg-gencontrol -Pdebian/debdelta -pdebdelta
chown -R root:root $(D)
+   find debian/debdelta -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg-deb --build $(D) ..
 
 define checkdir
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#793006: dropbear: please make build reproducible

2015-07-20 Thread Maria Valentina Marin
Source: dropbear
Version:  2014.65-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 the “reproducible builds” effort [1], we have noticed
that dropbear could not be built reproducibly.

The attached patch sets the mtimes of all files which are modified
during the built to the date of the last changelog entry in order to
produce files with reproducible metadata.

Cheers,
akira

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



diff -u dropbear-2014.65/debian/changelog dropbear-2014.65/debian/changelog
--- dropbear-2014.65/debian/changelog
+++ dropbear-2014.65/debian/changelog
@@ -1,3 +1,10 @@
+dropbear (2014.65-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix mtimes before building binary packages to produce reproducible output
+
+ -- akira   Fri, 17 Jul 2015 17:44:26 +0200
+
 dropbear (2014.65-1) unstable; urgency=low
 
   [ Matt Johnston ]
diff -u dropbear-2014.65/debian/rules dropbear-2014.65/debian/rules
--- dropbear-2014.65/debian/rules
+++ dropbear-2014.65/debian/rules
@@ -27,6 +27,8 @@
 
 DIR =$(shell pwd)/debian/dropbear
 
+BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)
+
 patch: deb-checkdir patch-stamp
 patch-stamp:
for i in `ls -1 debian/diff/*.diff || :`; do \
@@ -117,6 +119,8 @@
  dpkg-shlibdeps '$(DIR)'/usr/sbin/* '$(DIR)'/usr/bin/* \
'$(DIR)'/usr/lib/dropbear/*
dpkg-gencontrol -isp -pdropbear -P'$(DIR)'
+   find '$(DIR)' -newermt '$(BUILD_DATE)' -print0 | \
+   xargs -0r touch --no-dereference --date='$(BUILD_DATE)'
dpkg -b '$(DIR)' ..
 
 binary: binary-arch binary-indep
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] reproducible builds of FreeBSD in a chroot on Linux

2015-07-20 Thread Steven Chamberlain
Hi Holger,

Holger Levsen wrote:
> With this, 
> http://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/tree/bin/reproducible_freebsd.sh
>  
> gets as far as 
> https://jenkins.debian.net/view/reproducible/job/reproducible_freebsd/7/console
>  
> where "stage 2.1: cleaning up the object tree" fails on "make buildworld", 
> because /srv/workspace/chroots/freebsd-
> .v1adN6Qo/freebsd/lib/libc/tests does not exist.

`mktemp freebsd-` on FreeBSD would result in random characters
being appended, resulting in freebsd-.v1adN6Qo as above.

`mktemp -d -t freebsd-` should replace the X's with random
characters, same as GNU mktemp.  But it doesn't seem to have done that.

Are you sure that your RSSH command is sending switches -d and -t
correctly, or do you need a "--" or extra quotes?

Take a look in /srv/workspace/chroots/ and see if mktemp has perhaps
created a file instead of a directory?

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


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

Re: [Reproducible-builds] [PATCH] Reproducible U-Boot build support, using SOURCE_DATE_EPOCH

2015-07-20 Thread Paul Kocialkowski
> I am just on the jump into my holidays, so I have not yet the time
> to test it ... I want to try it for all builds with the scripts
> I posted with my v2 ... but a first fast look into your patch looks
> nice, if it works, it is ok with me ... I am back aprox. july 5th.

Okay, maybe I'll have a go at your scripts then! The idea to coordinate
with Debian developers would be to use their infrastructure to
automatically test as many u-boot targets as possible in an automated
and periodical manner (e.g. once a month), so that we can easily spot
which target is broken or which commit introduced a regression.

> maybe a README entry would be fine ;-)

Good point, that makes sense. I'll craft that in v2. I'll just wait for
some more feedback before sending a new version.

Thanks!

> > It would be nice to have this tested on as many boards as possible to
> > spot other areas that make the binaries not reproducible. However, I
> > doubt this patch will evolve much and other fixes should be sent in
> > subsequent patches.
> >
> >> Signed-off-by: Paul Kocialkowski 
> >> ---
> >>   Makefile  |  7 ---
> >>   tools/default_image.c | 21 -
> >>   2 files changed, 24 insertions(+), 4 deletions(-)
> >>
> >> diff --git a/Makefile b/Makefile
> >> index 37cc4c3..71aeac7 100644
> >> --- a/Makefile
> >> +++ b/Makefile
> >> @@ -1231,9 +1231,10 @@ define filechk_version.h
> >>   endef
> >>
> >>   define filechk_timestamp.h
> >> -  (LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"'; \
> >> -  LC_ALL=C date +'#define U_BOOT_TIME "%T"'; \
> >> -  LC_ALL=C date +'#define U_BOOT_TZ "%z"')
> >> +  (SOURCE_DATE="$${SOURCE_DATE_EPOCH:+@$$SOURCE_DATE_EPOCH}"; \
> >> +  LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_DATE "%b %d 
> >> %C%y"'; \
> >> +  LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TIME "%T"'; 
> >> \
> >> +  LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TZ "%z"' )
> >>   endef
> >>
> >>   $(version_h): include/config/uboot.release FORCE
> >> diff --git a/tools/default_image.c b/tools/default_image.c
> >> index cf5c0d4..18940af 100644
> >> --- a/tools/default_image.c
> >> +++ b/tools/default_image.c
> >> @@ -88,6 +88,9 @@ static void image_set_header(void *ptr, struct stat 
> >> *sbuf, int ifd,
> >>struct image_tool_params *params)
> >>   {
> >>uint32_t checksum;
> >> +  char *source_date_epoch;
> >> +  struct tm *time_universal;
> >> +  time_t time;
> >>
> >>image_header_t * hdr = (image_header_t *)ptr;
> >>
> >> @@ -96,9 +99,25 @@ static void image_set_header(void *ptr, struct stat 
> >> *sbuf, int ifd,
> >>sizeof(image_header_t)),
> >>sbuf->st_size - sizeof(image_header_t));
> >>
> >> +  source_date_epoch = getenv("SOURCE_DATE_EPOCH");
> >> +  if (source_date_epoch != NULL) {
> >> +  time = (time_t) strtol(source_date_epoch, NULL, 10);
> >> +
> >> +  time_universal = gmtime(&time);
> >> +  if (time_universal == NULL) {
> >> +  fprintf(stderr, "%s: SOURCE_DATE_EPOCH is not valid\n",
> >> +  __func__);
> >> +  time = 0;
> >> +  } else {
> >> +  time = mktime(time_universal);
> >> +  }
> >> +  } else {
> >> +  time = sbuf->st_mtime;
> >> +  }
> >> +
> >>/* Build new header */
> >>image_set_magic(hdr, IH_MAGIC);
> >> -  image_set_time(hdr, sbuf->st_mtime);
> >> +  image_set_time(hdr, time);
> >>image_set_size(hdr, sbuf->st_size - sizeof(image_header_t));
> >>image_set_load(hdr, params->addr);
> >>image_set_ep(hdr, params->ep);
> >
> 



signature.asc
Description: This is a digitally signed message part
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Changing bug title of packages affected by not_using_dh_builddeb issue

2015-07-20 Thread Maria Valentina Marin
# for the bugs I just submitted
#
retitle 793002 cgilib: please make the mtimes reproducible
retitle 793001 blosxom: please make the mtimes reproducible
retitle 793000 beav: please make the mtimes reproducible
retitle 792999 console-cyrillic: please make the mtimes reproducible
retitle 792998 chiark-utils: please make the mtimes reproducible
retitle 792996 bcron: please make the mtimes reproducible
retitle 792995 abook: please make the mtimes reproducible
retitle 792994 angband-doc: please make the mtimes reproducible
retitle 792993 cgoban: please make the mtimes reproducible
retitle 792991 gpsmanshp: please make the mtimes reproducible
retitle 792990 skalibs: please make the mtimes reproducible
retitle 792989 freecdb: please make the mtimes reproducible
retitle 792988 xbs: please make the mtimes reproducible
retitle 792987 jargon: please make the mtimes reproducible
retitle 792986 uruk: please make the mtimes reproducible
retitle 792985 ipsvd: please make the mtimes reproducible
retitle 792984 integrit: please make the mtimes reproducible
retitle 792983 gerstensaft: please make the mtimes reproducible
retitle 792982 ftpcopy: please make the mtimes reproducible
retitle 792981 wmweather: please make the mtimes reproducible
retitle 792980 tworld: please make the mtimes reproducible
retitle 792979 runit: please make the mtimes reproducible
retitle 792978 nec: please make the mtimes reproducible
retitle 792977 luakit: please make the mtimes reproducible
retitle 792976 logapp: please make the mtimes reproducible
retitle 792975 libmsv: please make the mtimes reproducible
retitle 792974 liblockfile: please make the mtimes reproducible
retitle 792973 liblip: please make the mtimes reproducible
retitle 792972 libjama: please make the mtimes reproducible
retitle 792971 junior-doc: please make the mtimes reproducible
retitle 792970 fortunes-bg: please make the mtimes reproducible
retitle 792969 flowscan: please make the mtimes reproducible
retitle 792967 fgetty: please make the mtimes reproducible
retitle 792965 fastforward: please make the mtimes reproducible
retitle 792963 erc: please make the mtimes reproducible
retitle 792961 enemies-of-carlotta: please make the mtimes reproducible
retitle 792959 elida: please make the mtimes reproducible
retitle 792958 dtaus: please make the mtimes reproducible
retitle 792955 dput: please make the mtimes reproducible
retitle 792954 dpatch: please make the mtimes reproducible
retitle 792953 dhcping: please make the mtimes reproducible
retitle 792952 dhcpdump: please make the mtimes reproducible
retitle 792951 dbview: please make the mtimes reproducible
retitle 792950 ccze: please make the mtimes reproducible
retitle 792949 chimera2: please make the mtimes reproducible
retitle 792947 cvs-mailcommit: please make the mtimes reproducible
retitle 793006 dropbear: please make the mtimes reproducible
retitle 703004 debdelta: please make the mtimes reproducible
retitle 793003 daemontools: please make the mtimes reproducible
retitle 793005 checkpw: please make the mtimes reproducible
retitle 792945 authbind: please make the mtimes reproducible
retitle 792943 argus-client: please make the mtimes reproducible
thanks

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


Re: [Reproducible-builds] [PATCH] Reproducible U-Boot build support, using SOURCE_DATE_EPOCH

2015-07-20 Thread Vagrant Cascadian
On 2015-07-20, Paul Kocialkowski wrote:
> In order to achieve reproducible builds in U-Boot, timestamps that are defined
> at build-time have to be somewhat eliminated. The SOURCE_DATE_EPOCH 
> environment
> variable allows setting a fixed value for those timestamps.
...
> diff --git a/Makefile b/Makefile
> index 37cc4c3..71aeac7 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1231,9 +1231,10 @@ define filechk_version.h
>  endef
>  
>  define filechk_timestamp.h
> - (LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"'; \
> - LC_ALL=C date +'#define U_BOOT_TIME "%T"'; \
> - LC_ALL=C date +'#define U_BOOT_TZ "%z"')
> + (SOURCE_DATE="$${SOURCE_DATE_EPOCH:+@$$SOURCE_DATE_EPOCH}"; \
> + LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_DATE "%b %d 
> %C%y"'; \
> + LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TIME "%T"'; 
> \
> + LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TZ "%z"' )
>  endef
>  
>  $(version_h): include/config/uboot.release FORCE

This does effectively hard-code U_BOOT_TZ to UTC; may as well not call
date for setting U_BOOT_TZ. Or conditionally set it to UTC only when
SOURCE_DATE_EPOCH is set?

Any reason not to use the longhand options for date, e.g. --utc and
--date ? They're more readable; are they less portable?


live well,
  vagrant


signature.asc
Description: PGP 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] [PATCH] Reproducible U-Boot build support, using SOURCE_DATE_EPOCH

2015-07-20 Thread Heiko Schocher

Hello Paul,

Am 20.07.2015 um 15:30 schrieb Paul Kocialkowski:

I am just on the jump into my holidays, so I have not yet the time
to test it ... I want to try it for all builds with the scripts
I posted with my v2 ... but a first fast look into your patch looks
nice, if it works, it is ok with me ... I am back aprox. july 5th.


Okay, maybe I'll have a go at your scripts then! The idea to coordinate


Uh.. I am just a script beginner, they are not perfect ...

Maybe this can be done/added at travis.org ?
See u-boot builds there:
https://travis-ci.org/u-boot/u-boot/


with Debian developers would be to use their infrastructure to
automatically test as many u-boot targets as possible in an automated
and periodical manner (e.g. once a month), so that we can easily spot
which target is broken or which commit introduced a regression.


This sounds good ... feel free to trigger me, if I can help.

bye,
Heiko



maybe a README entry would be fine ;-)


Good point, that makes sense. I'll craft that in v2. I'll just wait for
some more feedback before sending a new version.

Thanks!


It would be nice to have this tested on as many boards as possible to
spot other areas that make the binaries not reproducible. However, I
doubt this patch will evolve much and other fixes should be sent in
subsequent patches.


Signed-off-by: Paul Kocialkowski 
---
   Makefile  |  7 ---
   tools/default_image.c | 21 -
   2 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/Makefile b/Makefile
index 37cc4c3..71aeac7 100644
--- a/Makefile
+++ b/Makefile
@@ -1231,9 +1231,10 @@ define filechk_version.h
   endef

   define filechk_timestamp.h
-   (LC_ALL=C date +'#define U_BOOT_DATE "%b %d %C%y"'; \
-   LC_ALL=C date +'#define U_BOOT_TIME "%T"'; \
-   LC_ALL=C date +'#define U_BOOT_TZ "%z"')
+   (SOURCE_DATE="$${SOURCE_DATE_EPOCH:+@$$SOURCE_DATE_EPOCH}"; \
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_DATE "%b %d 
%C%y"'; \
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TIME "%T"'; 
\
+   LC_ALL=C date -u -d "$${SOURCE_DATE:-now}" +'#define U_BOOT_TZ "%z"' )
   endef

   $(version_h): include/config/uboot.release FORCE
diff --git a/tools/default_image.c b/tools/default_image.c
index cf5c0d4..18940af 100644
--- a/tools/default_image.c
+++ b/tools/default_image.c
@@ -88,6 +88,9 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
int ifd,
struct image_tool_params *params)
   {
uint32_t checksum;
+   char *source_date_epoch;
+   struct tm *time_universal;
+   time_t time;

image_header_t * hdr = (image_header_t *)ptr;

@@ -96,9 +99,25 @@ static void image_set_header(void *ptr, struct stat *sbuf, 
int ifd,
sizeof(image_header_t)),
sbuf->st_size - sizeof(image_header_t));

+   source_date_epoch = getenv("SOURCE_DATE_EPOCH");
+   if (source_date_epoch != NULL) {
+   time = (time_t) strtol(source_date_epoch, NULL, 10);
+
+   time_universal = gmtime(&time);
+   if (time_universal == NULL) {
+   fprintf(stderr, "%s: SOURCE_DATE_EPOCH is not valid\n",
+   __func__);
+   time = 0;
+   } else {
+   time = mktime(time_universal);
+   }
+   } else {
+   time = sbuf->st_mtime;
+   }
+
/* Build new header */
image_set_magic(hdr, IH_MAGIC);
-   image_set_time(hdr, sbuf->st_mtime);
+   image_set_time(hdr, time);
image_set_size(hdr, sbuf->st_size - sizeof(image_header_t));
image_set_load(hdr, params->addr);
image_set_ep(hdr, params->ep);








--
DENX Software Engineering GmbH,  Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

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


[Reproducible-builds] GSoC 2015 Week 8: Move forward reproducible builds

2015-07-20 Thread Maria Valentina Marin
Hello,

This week I have been working on packages which are marked as affected
by not_using_dh_builddeb [1].

Patches were submitted for the following packages:

- Package: abook
https://bugs.debian.org/792995

- Package: angband
https://bugs.debian.org/792994

- Package: argus-client
https://bugs.debian.org/792943

- Package: authbind
https://bugs.debian.org/792945

- Package: bcron
https://bugs.debian.org/792996

- Package: beav
https://bugs.debian.org/793000

- Package: blosxom
https://bugs.debian.org/793001

- Package: ccze
https://bugs.debian.org/792949

- Package: cgilib
https://bugs.debian.org/793002

- Package: cgoban
https://bugs.debian.org/792993

- Package: checkpw
https://bugs.debian.org/793005

- Package: chiark-utils
https://bugs.debian.org/792998

- Package: chimera2
https://bugs.debian.org/792949

- Package: console-cyrillic
https://bugs.debian.org/792999

- Package: cvs-mailcommit
https://bugs.debian.org/792947

- Package: daemontools
https://bugs.debian.org/793003

- Package: dbview
https://bugs.debian.org/792951

- Package: debdelta
https://bugs.debian.org/793004

- Package: dhcpdump
https://bugs.debian.org/792951

- Package: dhcping
https://bugs.debian.org/792953

- Package: dpatch
https://bugs.debian.org/792954

- Package: dput
https://bugs.debian.org/792955

- Package: dropbear
https://bugs.debian.org/793006

- Package: dtaus
https://bugs.debian.org/792958

- Package: elida
https://bugs.debian.org/792959

- Package: enemies-of-carlotta
https://bugs.debian.org/792961

- Package: erc
https://bugs.debian.org/792963

- Package: fast-foward
https://bugs.debian.org/792965

- Package: fgetty
https://bugs.debian.org/792967

- Package: flowscan
https://bugs.debian.org/792969

- Package: fortunes-bg
https://bugs.debian.org/792970

- Package: freecdb
https://bugs.debian.org/792989

- Package: ftpcopy
https://bugs.debian.org/792982

- Package: gerstensaft
https://bugs.debian.org/792983

- Package: gpsmanshp
https://bugs.debian.org/792991

- Package: integrit
https://bugs.debian.org/792984

- Package: ipsvd
https://bugs.debian.org/792985

- Package: jargon
https://bugs.debian.org/792987

- Package: junior-doc
https://bugs.debian.org/792971

- Package: libjama
https://bugs.debian.org/792972

- Package: liblip
https://bugs.debian.org/792973

- Package: liblockfile
https://bugs.debian.org/792974

- Package: libmsv
https://bugs.debian.org/792975

- Package: logapp
https://bugs.debian.org/792976

- Package: luakit
https://bugs.debian.org/792977

- Package: nec
https://bugs.debian.org/792978

- Package: runit
https://bugs.debian.org/792979

- Package: skalibs
https://bugs.debian.org/792990

- Package: tworld
https://bugs.debian.org/792980

- Package: uruk
https://bugs.debian.org/792986

- Package: wmweather
https://bugs.debian.org/792981

- Package: xbs
https://bugs.debian.org/792988

Kind Regards,
akira

[1]
https://reproducible.debian.net/issues/unstable/not_using_dh_builddeb_issue.html

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


[Reproducible-builds] Bonjour

2015-07-20 Thread Paul Chambert
Très Cher(e),

Excusez moi de cette manière de vous contacter car nous ne nous connaissons 
pas, je viens d'écrire votre adresse par pure hasard tout en demandant a Dieu 
de me guider vers une personne de bonne moralité, je me suis dis que vous êtes 
la personne qu'il me faut. En bref, je me nomme Paul Chambert, d'origine 
canadienne mais je suis aux états unis pour mes soins. Je souffre d'une grave 
maladie qui me condamne à une mort certaine qui est le cancer de gorge depuis 
maintenant 4 ans, mais cela fait maintenant 5 mois que mon état s'est empiré. 
Je dispose d'une somme de 1. 100 000 Euros dont je voudrais faire une donation 
des a associations d'aide humanitaire, des associations d'aide aux personnes 
démunies, des ONG bienfaisantes, ou des organismes d'aide sociales tel que le 
Resto du Coeur. Pour cela, je dois forcement passer par une personne de 
confiance et d'honnête afin qu'elle en fasse les démarches nécessaire pour 
cette action, car je n'ai plus de force pour faire quoi que ce soit, affaibli 
de plus en plus par ce cancer, je passe mes journées allonger sans pouvoir 
faire le moindre effort. Ainsi, cette personne aura comme récompense 30 % des 
fonds après m'avoir aidé à faire ces dons. Je suis propriétaire d'une 
entreprise d'agro-alimentaires au Maroc, j'ai perdu mon épouse il y a de cela 3 
ans, ce qui m'a beaucoup affecté et je n'ai pu me remarier jusqu'à ce jour, 
nous n'avions pas d'enfants, car mon épouse était beaucoup maladive. Je 
voudrais faire ce don, avant m'a mort, car le médecin m'a fait savoir que je 
n'ai plus de chance de vivre longtemps avec cette maladie qui ne fait 
qu'aggravée de jour en jour. Depuis l'avancée de mon état j'ai parcouru 
plusieurs grand pays a la recherche de remède définitif, et j'ai aussi consulté 
plusieurs grands médecins spécialistes du cancer, mais cela n'a fait 
qu'améliorer mon état et non me guérir totalement. J'ai passé toutes mon 
existence à me consacrer à mon travail et a amasser des fortunes, sans m'ouvrir 
au monde et sans me soucier de mes vieux jours comme aujourd'hui. J'ai toujours 
vécu dans la solitude depuis le décès de mon épouse. Alors en ce moment, je ne 
voudrais pas mourir en laissant cette somme au profil de la banque ou du trésor 
public, sans aucun bénéficiaire légitime, c'est pour cela que je vous écris en 
ce jours pour vous faire part de mon oeuvre, tout en ayant conscience que nous 
ne nous connaissons pas. J'apprendrai à vous connaitre et vous faire un récit 
complet de ma vie afin que vous compreniez mieux. E mail: pauld...@gmail.com 
j'espère avoir une réponse de vous aussitôt possible.
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] GSoC 2015 Week 8: Move forward reproducible builds

2015-07-20 Thread Dhole
# 8th week

Subject: GSoC 2015 Week 8: Move forward reproducible builds
To: soc-coordinat...@lists.alioth.debian.org
CC: reproducible-builds@lists.alioth.debian.org

Hi,

This week I have continued working on the reproducible timestamp
approach through the exported variable SOURCE_DATE_EPOCH.

I studied the issue lc_messages_randomness [1], which is caused by the
tool xgettext in the package gettext. The packages affected have a
timestamp embedde with the creation date of .po translation files, which
is later transferred to .mo translation files.
I wrote a patch for gettext so that xgettext replaces localtime
timestamps with the date found in SOURCE_DATE_EPOCH in case it is set.
The branch with the changes in the reproducible git repo can be found here:
https://anonscm.debian.org/cgit/reproducible/gettext.git/log/?h=pu/reproducible_builds

I also uploaded the gettext package with these changes and uploaded to
the reproducible builds APT repository, to test on jenkins, which gave
the following results:

There were 42 unreproducible packages affected by this issue, of which
27 became reproducible.
15 packages are still not reproducible because the call to xgettext
doesn't happen under dh.

I also opened a bug in Debian providing the patch and updated the wiki
about our experimental toolchain.
https://bugs.debian.org/792687

I have also worked on individual packages affected by the issue
timestamps_difference_by_unzip [2] where 11 packages are affected (9
unreproducible).

Out of those 9, I wrote patches for 7 to make them reproducible:

- fonts-stix
https://bugs.debian.org/792602
- jsmath
https://bugs.debian.org/792596
- jsmath-fonts-sprite
https://bugs.debian.org/792597
- libreoffice-canzeley-client
https://bugs.debian.org/792598
- openthesaurus
https://bugs.debian.org/792599

There are 2 packages missing: pdf.js and torbutton, which don't become
reproducible with the same procedure as the ohter ones. I'll study them.

I also sent patches to two other packages:
lives (process a Perl hash in stable order to make it reproducible)
https://bugs.debian.org/792593

dict-jargon (affected by timestamps_in_dictionaries)
https://bugs.debian.org/792709

For next week I plan to look further into pdf.js and torbutton, try to
patch the remaining packages affected by timestamps_in_dictionaries, and
work on the issue pdf_created_by_ghostscript [3].


[1]
https://reproducible.debian.net/issues/unstable/lc_messages_randomness_issue.html
[2]
https://reproducible.debian.net/issues/unstable/timestamps_difference_by_unzip_issue.html
[3]
https://reproducible.debian.net/issues/pdf_created_by_ghostscript_issue.html

Best regards,
Dhole



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