• Bug#1069663: dub: please make the build reproducible

    From Chris Lamb@21:1/5 to All on Mon Apr 22 12:10:02 2024
    --0cba633db86c440189ed682056b015ce
    Content-Type: text/plain;charset=utf-8
    Content-Transfer-Encoding: quoted-printable

    Source: dub
    Version: 1.36.0-1
    Severity: wishlist
    Tags: patch
    User: reproducible-builds@lists.alioth.debian.org
    Usertags: timestamps
    X-Debbugs-Cc: reproducible-bugs@lists.alioth.debian.org

    Hi,

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

    This is because the build system embeds timestamps in its man pages:

    ├── ./usr/share/man/man1/dub-add-local.1.gz
    │ ├── dub-add-local.1
    │ │ @@ -1,8 +1,8 @@
    │ │ -.TH DUB-ADD-LOCAL 1 "2025-05-24" "The D Language Foundation" "The D Language Foundation"
    │ │ +.TH DUB-ADD-LOCAL 1 "2024-04-21" "The D Language Foundation" "The D Language Foundation"

    (etc.)

    A patch is attached that simply exports dub's custom DIFFABLE
    environment variable. This was seemingly introduced to make these
    manpages, well, 'diffable' — that is to say, so that they generated in
    a deterministic manner.

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


    Regards,

    --
    ,''`.
    : :' : Chris Lamb
    `. `'` lamby@debian.org / chris-lamb.co.uk
    `-

    --0cba633db86c440189ed682056b015ce
    Content-Disposition: attachment; filename="dub.diff.txt"
    Content-Type: text/plain; name="dub.diff.txt"
    Content-Transfer-Encoding: BASE64

    LS0tIGEvZGViaWFuL3J1bGVzCTIwMjQtMDQtMjIgMTA6MzQ6MjguMDM5MDYwNDEyICswMTAw Ci0tLSBiL2RlYmlhbi9ydWxlcwkyMDI0LTA0LTIyIDEwOjQ4OjAwLjY3NTk4MDA5MiArMDEw MApAQCAtNiw3ICs2LDcgQEAKIERFQl9WRVJTSU9OIDo9ICQoc2hlbGwgZHBrZy1wYXJzZWNo YW5nZWxvZyB8IGF3ayAnL15WZXJzaW9uOiAvIHsgcHJpbnQgJCQyIH0nKQogCiBleHBvcnQg R0lUVkVSPSQoREVCX1ZFUlNJT04pCi0KK2V4cG9ydCBESUZGQUJMRT0xCiBleHBvcnQgREZM QUdTPS1mcmVsZWFzZSAtZmFsbC1pbnN0YW50aWF0aW9ucwogCiAlOgo=

    --0cba633db86c440189ed682056b015ce--

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)