Source: freesas
Version: 0.9.0-4
Severity: wishlist
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

Hi,

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

This is because if HOME is not writable (or does not exist), then the
manpages generated by html2man in debian/rules contain a warning
message that reference a randomly-generated path name. For example:

  Matplotlib created a temporary config/cache directory at
  \fI\,/tmp/matplotlib\-89fw1_fi\/\fP because the default path
  (/nonexistent/first\-build/.config/matplotlib) is not a writable
  directory; it is highly recommended to set the MPLCONFIGDIR
  environment variable to a writable directory, in particular to speed
  up the import of Matplotlib and to better support multiprocessing

The "matplotlib\-89fw1_fi" is, of course, nondeterminstic.

Patch attached that sets HOME to a known-writable location.

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


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
--- a/debian/rules      2022-05-26 09:59:19.476884338 +0100
--- b/debian/rules      2022-05-26 11:12:26.691867910 +0100
@@ -7,4 +7,4 @@
 override_dh_auto_install:
        dh_auto_install
        for i in debian/python3-freesas/usr/bin/*.py ; do mv -v $$i $$(basename 
$$i .py) ; done
-       for i in debian/python3-freesas/usr/bin/* ; do PYTHONPATH=$$(echo 
debian/python3-freesas/usr/lib/python*/dist-packages) PATH=_build/bin:$$PATH 
help2man --output=$$(basename $$i).1 --version-string=$$(dpkg-parsechangelog -S 
Version | sed s/-[^-]*$$//) --help-option --help --no-discard-stderr $$i ; done
+       for i in debian/python3-freesas/usr/bin/* ; do PYTHONPATH=$$(echo 
debian/python3-freesas/usr/lib/python*/dist-packages) HOME=$(CURDIR)/_build 
PATH=_build/bin:$$PATH help2man --output=$$(basename $$i).1 
--version-string=$$(dpkg-parsechangelog -S Version | sed s/-[^-]*$$//) 
--help-option --help --no-discard-stderr $$i ; done

Reply via email to