Source: kde-workspace
Version: 4:4.11.13-2
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: randomness

Hi!

While working on the “reproducible builds” effort [1], we have noticed
that kde-workspace could not be built reproducibly.

The attached patch—based on Git master—adds a patch to make
the output of kdm confproc.pl stable. Once applied,
kde-workspace can be built reproducibly in our current experimental
framework.

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

-- 
Lunar                                .''`. 
lu...@debian.org                    : :Ⓐ  :  # apt-get install anarchism
                                    `. `'` 
                                      `-   
From edb1bc5b57ffd8ce7004899d1ccc218c60d4bdd8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Bobbio?= <lu...@debian.org>
Date: Tue, 5 May 2015 13:51:36 +0200
Subject: [PATCH] Add a patch to make kdm confproc.pl output stable

This makes the package build reproducibly.
---
 debian/patches/series                      |  1 +
 debian/patches/sort_kdm_confproc_keys.diff | 34 ++++++++++++++++++++++++++++++
 2 files changed, 35 insertions(+)
 create mode 100644 debian/patches/sort_kdm_confproc_keys.diff

diff --git a/debian/patches/series b/debian/patches/series
index 0bd5ed8..32f1b81 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -28,3 +28,4 @@ check_if_SensorMgr
 ksysguardd_acpi_valgrind_complain
 upstream_do_not_pass_ntpUtility_as_an_argument.patch
 upstream_validate_timezone_name_before_setting.patch
+sort_kdm_confproc_keys.diff
diff --git a/debian/patches/sort_kdm_confproc_keys.diff b/debian/patches/sort_kdm_confproc_keys.diff
new file mode 100644
index 0000000..db91f3c
--- /dev/null
+++ b/debian/patches/sort_kdm_confproc_keys.diff
@@ -0,0 +1,34 @@
+Description: sort keys in kdm confproc.pl
+ In order to get the same output accross builds, we
+ now sort keys in confproc.pl.
+Author: Jérémy Bobbio <lu...@debian.org>
+
+--- kde-workspace-4.11.13.orig/kdm/confproc.pl
++++ kde-workspace-4.11.13/kdm/confproc.pl
+@@ -85,7 +85,7 @@ sub mkvname($)
+ sub emit_conds($)
+ {
+   my $ret = "";
+-  for my $c (keys %{$_[0]}) {
++  for my $c (sort keys %{$_[0]}) {
+     my ($then, $else) = ("", "");
+     for my $d (@{${$_[0]}{$c}}) {
+       my $bas = "# define ".$d->[0];
+@@ -744,7 +744,7 @@ print OUTFILE
+ 
+ my $ov_vars = "";
+ my %ov_var_conds = ();
+-for my $v (keys %arr_ov_vars) {
++for my $v (sort keys %arr_ov_vars) {
+   my @oa = ( ["V".$v.",", "VAR"] );
+   add_cond($arr_ov_vars{$v}, $v, \@oa, \%ov_var_conds);
+   $ov_vars .= "    ".$oa[0][0]." \\\n";
+@@ -872,7 +872,7 @@ print OUTFILE
+ 
+ my $ov_km_sects = "";
+ my $ov_km_sect_refs = "";
+-for my $s (keys %ov_km) {
++for my $s (sort keys %ov_km) {
+   my $ts = $s;
+   $ts =~ s/-/_/;
+   $ov_km_sects .=
-- 
2.1.4

Attachment: 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

Reply via email to