[Pkg-rust-maintainers] Bug#1088238: rust-broot: please make the build reproducible

Chris Lamb lamby at debian.org
Mon Nov 25 14:23:32 GMT 2024


Source: rust-broot
Version: 1.44.2-2
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org

Hi,

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

This is because the manual page embeds the current year:

│ │ │ ├── ./usr/share/man/man1/broot.1.gz
│ │ │ │ ├── broot.1
│ │ │ │ │ @@ -1,10 +1,10 @@
│ │ │ │ │  .\" Manpage for broot
│ │ │ │ │  .\" Some items starting with a # are replaced on build
│ │ │ │ │ -.TH broot 1 "2025" "1.44.2" "broot manpage"
│ │ │ │ │ +.TH broot 1 "2024" "1.44.2" "broot manpage"
│ │ │ │ │  .SH NAME
│ │ │ │ │  broot \- Tree view, file manager, configurable launcher
│ │ │ │ │  .SH SYNOPSIS
│ │ │ │ │  .B broot
│ │ │ │ │  [\fIflags\fR]
│ │ │ │ │  [\fIoptions\fR]
│ │ │ │ │  [path]

Patch attached that uses SOURCE_DATE_EPOCH to set the year from the
debian/changelog. Note that we can rely on the $(SOURCE_DATE_EPOCH)
Makefile variable being available due to the use of the default.mk
include.

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


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby at debian.org / chris-lamb.co.uk
       `-
-------------- next part --------------
--- a/debian/rules	2024-11-25 14:03:49.099788184 +0000
--- b/debian/rules	2024-11-25 14:21:37.501124190 +0000
@@ -11,7 +11,7 @@
 
 override_dh_auto_install:
 	install -D -m 0644 $(CURDIR)/man/page $(CURDIR)/debian/manpages/broot.1
-	sed -i -e "s/#version/$(DEB_VERSION_UPSTREAM)/g" -e "s/#date/$(shell date +'%Y')/g" \
+	sed -i -e "s/#version/$(DEB_VERSION_UPSTREAM)/g" -e "s/#date/$(shell date --utc --date="@$(SOURCE_DATE_EPOCH)" +'%Y')/g" \
 		$(CURDIR)/debian/manpages/broot.1
 	dh_auto_install
 


More information about the Pkg-rust-maintainers mailing list