Source: yaru-theme
Version: 22.04.4+dfsg-1
Severity: wishlist
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: filesystem
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

Hi,

Whilst working on the Reproducible Builds effort [0] we noticed that
yaru-theme could not be built reproducibly.

The .theme files generated by the generate-index-theme.py scripts
varied depending on the underlying filesystem ordering. Patch attached
that uses sorted(...) so that the contents are determinstic.

(The .resource files remain nondeterminstic locally for me, however.)

 [0] https://reproducible-builds.org/


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
--- a/debian/patches/reproducible-build.patch   1970-01-01 01:00:00.000000000 
+0100
--- b/debian/patches/reproducible-build.patch   2022-06-14 07:41:10.064298706 
+0100
@@ -0,0 +1,18 @@
+Description: Make the build reproducible
+Author: Chris Lamb <la...@debian.org>
+Last-Update: 2022-06-14
+
+--- yaru-theme-22.04.4+dfsg.orig/icons/src/generate-index-theme.py
++++ yaru-theme-22.04.4+dfsg/icons/src/generate-index-theme.py
+@@ -86,9 +86,9 @@ if __name__ == '__main__':
+             directory.split('/')[-1] not in args.exclude_context):
+             directories.add(directory)
+ 
+-    theme['Icon Theme']['Directories'] = ','.join(directories)
++    theme['Icon Theme']['Directories'] = ','.join(sorted(directories))
+ 
+-    for dir in directories:
++    for dir in sorted(directories):
+         [sizes, context] = dir.split('/')
+         data = {
+             'Context': CONTEXT_MAPPING.get(context, context.title()),
--- a/debian/patches/series     1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/series     2022-06-14 07:41:09.184298298 +0100
@@ -0,0 +1 @@
+reproducible-build.patch

Reply via email to