Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package warewulf for openSUSE:Factory 
checked in at 2024-03-27 20:43:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/warewulf (Old)
 and      /work/SRC/openSUSE:Factory/.warewulf.new.1905 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "warewulf"

Wed Mar 27 20:43:33 2024 rev:13 rq:1162930 version:3.8.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/warewulf/warewulf.changes        2024-02-26 
19:46:06.927480461 +0100
+++ /work/SRC/openSUSE:Factory/.warewulf.new.1905/warewulf.changes      
2024-03-27 20:44:09.736647981 +0100
@@ -1,0 +2,7 @@
+Sat Mar 23 15:48:04 UTC 2024 - Egbert Eich <[email protected]>
+
+- Make build reproducible (bsc#1217973).
+  * ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
+  * 
provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
+
+-------------------------------------------------------------------

New:
----
  ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
  provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch

BETA DEBUG BEGIN:
  New:- Make build reproducible (bsc#1217973).
  * ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
  * 
provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
  New:  * 
ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
  * 
provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ warewulf.spec ++++++
--- /var/tmp/diff_new_pack.4S48f4/_old  2024-03-27 20:44:10.672682492 +0100
+++ /var/tmp/diff_new_pack.4S48f4/_new  2024-03-27 20:44:10.672682492 +0100
@@ -58,6 +58,7 @@
 Patch14:        
busybox-Newer-versions-of-glibc-do-not-ship-rpc-functions-any-more-130.patch
 Patch15:        common-Correctly-detect-SUSE-system-for-system-services.patch
 Patch16:        common-Consolidate-system-service-module-for-SUSE.patch
+#Patch17:        provision-Update-ipxe-to-Github-commitid-133f4c4.patch
 Patch18:        Remove-shebang-from-scripts-only-intended-to-be-sourced.patch
 Patch19:        vnfs-SUSE-copy-repo-files-to-correct-location.patch
 Patch20:        vnfs-SUSE-make-sure-zypper-auto-accepts-licenses.patch
@@ -86,6 +87,8 @@
 Patch42:        vnfs-Do-not-pull-in-recommended-packages-on-SUSE.patch
 Patch43:        Add-suse-to-overlay-template.patch
 Patch44:        
vnfs-On-SUSE-don-t-copy-repository-information-into-chroot.patch
+Patch45:        
provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
+Patch46:        
ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch
 
 %if "%{?flavor}" != "common"
 BuildRequires:  bsdtar
@@ -369,6 +372,8 @@
 
 %prep
 %setup -q -n %{name}3-%{version}
+cp %{SOURCE100} ./common/README.SUSE-INSTALL-RECIPE
+cp %{SOURCE101} ./common/README.SUSE-VM-CONFIG-RECIPE
 # common
 %patch -P 0 -p1
 %patch -P 6 -p1
@@ -378,8 +383,6 @@
 %patch -P 26 -p1
 %patch -P 29 -p1
 %patch -P 30 -p1
-cp %{SOURCE100} ./common/README.SUSE-INSTALL-RECIPE
-cp %{SOURCE101} ./common/README.SUSE-VM-CONFIG-RECIPE
 # provision
 %patch -P 1 -p1
 %patch -P 4 -p1
@@ -394,6 +397,7 @@
 %patch -P 38 -p1
 %patch -P 39 -p1
 %patch -P 40 -p1
+%patch -P 45 -p1
 # vnfs
 %patch -P 5 -p1
 %patch -P 10 -p1
@@ -417,16 +421,12 @@
 %patch -P 36 -p1
 # ipmi
 %patch -P 25 -p1
+%patch -P 46 -p1
 # common
 %patch -P 18 -p1
 %patch -P 32 -p1
 %patch -P 33 -p1
 %patch -P 34 -p1
-# reproducible builds
-sed -i 's/cpio -o/xargs touch -h -d @1690848000 ; find . | sort | cpio -o 
--reproducible/' \
-  provision/initramfs/capabilities/*/Makefile.am \
-  ipmi/initramfs/Makefile.am \
-  provision/initramfs/Makefile.am
 
 %build
 %if "%{?flavor}" == "common"

++++++ ipmi-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch 
++++++
From: Egbert Eich <[email protected]>
Date: Mon Mar 25 22:33:32 2024 +0100
Subject: [ipmi] For reproducible builds equalize time stamps in CPIO archives
Patch-mainline: Upstream
Git-commit: bea56d0379a3bfdc58cf1487282693217f80996b
References: bsc#1217973

For reproducible builds, set time stamps in CPIO files to
a well defined value since these archives are distributed.
(On reproducible builds: https://reproducible-builds.org/)

Signed-off-by: Egbert Eich <[email protected]>
Signed-off-by: Egbert Eich <[email protected]>
---
 ipmi/initramfs/Makefile.am | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/ipmi/initramfs/Makefile.am b/ipmi/initramfs/Makefile.am
index 4a2b364..3470b17 100644
--- a/ipmi/initramfs/Makefile.am
+++ b/ipmi/initramfs/Makefile.am
@@ -9,7 +9,7 @@ IPMITOOL_SOURCE = 
$(top_srcdir)/3rd_party/BSD/ipmitool-$(IPMITOOL_VERSION).tar.b
 
 ipmitool:
        @ if [ -n "@local_ipmitool_path@" -a -f "@local_ipmitool_path@" ]; then 
\
-            cp "@local_ipmitool_path@" ipmitool; \
+            cp -av "@local_ipmitool_path@" ipmitool; \
        else \
            if [ ! -d "_work/ipmitool/ipmitool-$(IPMITOOL_VERSION)" ]; then \
                echo "Preparing to build ipmitool" ;\
@@ -42,14 +42,15 @@ rootfs: ipmitool
        mkdir rootfs/lib64
        mkdir -p rootfs/warewulf/provision/
        chmod -R u+w rootfs/
-       cp -a ipmitool rootfs/sbin/
-       find rootfs -type f -perm -o+x  -print | xargs ldd | grep "=>" | awk 
'{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -L --parents $$i 
rootfs/; done
+       cp -av ipmitool rootfs/sbin/
+       find rootfs -type f -perm -o+x  -print | xargs ldd | grep "=>" | awk 
'{print $$3}' | grep "^/" | sort | uniq | while read i; do cp -avL --parents 
$$i rootfs/; done
        chmod -R +w rootfs/
-       find rootfs -type f -perm -o+x -print | xargs strip -g
-       install -m 755 $(srcdir)/10-ipmiconfig 
rootfs/warewulf/provision/10-ipmiconfig
+       find rootfs -type f -perm -o+x -print | xargs strip -pg
+       install -p -m 755 $(srcdir)/10-ipmiconfig 
rootfs/warewulf/provision/10-ipmiconfig
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r $(srcdir)/10-ipmiconfig
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)

++++++ 
provision-For-reproducible-builds-equalize-time-stamps-in-CPIO-archives.patch 
++++++
From: Egbert Eich <[email protected]>
Date: Sat Mar 23 17:30:00 2024 +0100
Subject: [provision] For reproducible builds equalize time stamps in CPIO 
archives
Patch-mainline: Upstream
Git-commit: 41d3b723af31fc9aea19e0844dce7753bdddfa96
References: bsc#1217973

For reproducible builds, set time stamps in CPIO files to
a well defined value since these archives are distributed.
(On reproducible builds: https://reproducible-builds.org/)

Signed-off-by: Egbert Eich <[email protected]>
Signed-off-by: Egbert Eich <[email protected]>
---
 provision/initramfs/Makefile.am                    | 28 ++++++++++++----------
 .../capabilities/provision-adhoc/Makefile.am       |  5 ++--
 .../capabilities/provision-files/Makefile.am       |  5 ++--
 .../capabilities/provision-selinux/Makefile.am     |  5 ++--
 .../capabilities/provision-unionfs/Makefile.am     |  3 ++-
 .../capabilities/provision-vnfs/Makefile.am        |  6 +++--
 .../capabilities/setup-filesystems/Makefile.am     |  5 ++--
 .../capabilities/transport-http/Makefile.am        |  5 ++--
 8 files changed, 36 insertions(+), 26 deletions(-)
diff --git a/provision/initramfs/Makefile.am b/provision/initramfs/Makefile.am
index 262b971..667af7e 100644
--- a/provision/initramfs/Makefile.am
+++ b/provision/initramfs/Makefile.am
@@ -161,21 +161,22 @@ rootfs: busybox e2fsprogs libarchive parted
        else \
                $(MAKE) -C _work/$(PARTED_DIR)/ DESTDIR=`pwd`/rootfs install; \
        fi
-       if [ -f /usr/sbin/haveged ]; then cp -a /usr/sbin/haveged 
rootfs/usr/sbin/haveged; fi
-       cp -L --parents /lib*/ld-linux* rootfs/
-       find rootfs -type f -perm -o+x -print | grep -v ld-linux | xargs ldd | 
grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp 
-L --parents $$i rootfs/ && chmod 755 rootfs/$$i; done
+       if [ -f /usr/sbin/haveged ]; then cp -av /usr/sbin/haveged 
rootfs/usr/sbin/haveged; fi
+       cp -avL --parents /lib*/ld-linux* rootfs/
+       find rootfs -type f -perm -o+x -print | grep -v ld-linux | xargs ldd | 
grep "=>" | awk '{print $$3}' | grep "^/" | sort | uniq | while read i; do cp 
-av -L --parents $$i rootfs/ && chmod 755 rootfs/$$i; done
        rm -f rootfs/linuxrc rootfs/lib64/*.la rootfs/lib/*.la 
rootfs/usr/lib64/*.la rootfs/usr/lib/*.la
        rm -rf rootfs/usr/share rootfs/usr/include rootfs/usr/lib/pkgconfig
        find -type d \! -perm -u=w -exec chmod u+w {} \;
-       find rootfs -type f -perm -o+x -print | xargs strip -g
-
-       install -m 755 $(srcdir)/init rootfs/init
-       install -m 755 $(srcdir)/functions rootfs/etc/functions
-       install -m 755 $(srcdir)/dhcp-script rootfs/sbin/
-       install -m 755 $(srcdir)/detect rootfs/sbin/
-       install -m 755 $(srcdir)/transporthandler rootfs/sbin/
-       install -m 755 $(srcdir)/provisionhandler rootfs/sbin/
-       install -m 755 $(srcdir)/wwlogger rootfs/sbin/
+       find rootfs -type f -perm -o+x -print | xargs strip -pg
+
+       install -p -m 755 $(srcdir)/init rootfs/init
+       touch -r $(srcdir)/transporthandler rootfs/init
+       install -p -m 755 $(srcdir)/functions rootfs/etc/functions
+       install -p -m 755 $(srcdir)/dhcp-script rootfs/sbin/
+       install -p -m 755 $(srcdir)/detect rootfs/sbin/
+       install -p -m 755 $(srcdir)/transporthandler rootfs/sbin/
+       install -p -m 755 $(srcdir)/provisionhandler rootfs/sbin/
+       install -p -m 755 $(srcdir)/wwlogger rootfs/sbin/
        ln -s transporthandler rootfs/sbin/wwgetvnfs
        ln -s transporthandler rootfs/sbin/wwgetscript
        ln -s transporthandler rootfs/sbin/wwgetnodeconfig
@@ -183,7 +184,8 @@ rootfs: busybox e2fsprogs libarchive parted
 
 initramfs.cpio: rootfs
        install -m 644 $(srcdir)/devs.cpio initramfs.cpio
-       cd rootfs/; find . | cpio -o -H newc -A -F ../initramfs.cpio
+       find rootfs/ -type d -o -type l | xargs touch -h -r devs.cpio
+       cd rootfs/; find . | cpio -o -H newc --reproducible -A -F 
../initramfs.cpio
 
 install-data-local: initramfs.cpio
        install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/
diff --git a/provision/initramfs/capabilities/provision-adhoc/Makefile.am 
b/provision/initramfs/capabilities/provision-adhoc/Makefile.am
index 74a78cb..d37ab73 100644
--- a/provision/initramfs/capabilities/provision-adhoc/Makefile.am
+++ b/provision/initramfs/capabilities/provision-adhoc/Makefile.am
@@ -9,11 +9,12 @@ rootfs:
        mkdir -p rootfs/warewulf/provision/
        @ for i in $(METHODSCRIPTS); do \
                echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \
-               install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
+               install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
        done
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS));
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
diff --git a/provision/initramfs/capabilities/provision-files/Makefile.am 
b/provision/initramfs/capabilities/provision-files/Makefile.am
index aef501a..d4dcc96 100644
--- a/provision/initramfs/capabilities/provision-files/Makefile.am
+++ b/provision/initramfs/capabilities/provision-files/Makefile.am
@@ -9,11 +9,12 @@ rootfs:
        mkdir -p rootfs/warewulf/provision/
        @ for i in $(METHODSCRIPTS); do \
                echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \
-               install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
+               install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
        done
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS));
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
diff --git a/provision/initramfs/capabilities/provision-selinux/Makefile.am 
b/provision/initramfs/capabilities/provision-selinux/Makefile.am
index e98a3b1..53d96dc 100644
--- a/provision/initramfs/capabilities/provision-selinux/Makefile.am
+++ b/provision/initramfs/capabilities/provision-selinux/Makefile.am
@@ -9,11 +9,12 @@ rootfs:
        mkdir -p rootfs/warewulf/provision/
        @ for i in $(METHODSCRIPTS); do \
                echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \
-               install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
+               install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
        done
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS));
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
diff --git a/provision/initramfs/capabilities/provision-unionfs/Makefile.am 
b/provision/initramfs/capabilities/provision-unionfs/Makefile.am
index 2e045af..eb67e2e 100644
--- a/provision/initramfs/capabilities/provision-unionfs/Makefile.am
+++ b/provision/initramfs/capabilities/provision-unionfs/Makefile.am
@@ -36,7 +36,8 @@ rootfs: unionfs
        find rootfs -type f -perm -o+x -print | xargs strip -g
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r unionfs;
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
diff --git a/provision/initramfs/capabilities/provision-vnfs/Makefile.am 
b/provision/initramfs/capabilities/provision-vnfs/Makefile.am
index 8f72707..742c23e 100644
--- a/provision/initramfs/capabilities/provision-vnfs/Makefile.am
+++ b/provision/initramfs/capabilities/provision-vnfs/Makefile.am
@@ -9,11 +9,13 @@ rootfs:
        mkdir -p rootfs/warewulf/provision/
        @ for i in $(METHODSCRIPTS); do \
                echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \
-               install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
+               install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
        done
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS));
+       find rootfs/ -name 50-config -o -name 70-kernelmodules | xargs touch -r 
$(word 1,$(METHODSCRIPTS));
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
diff --git a/provision/initramfs/capabilities/setup-filesystems/Makefile.am 
b/provision/initramfs/capabilities/setup-filesystems/Makefile.am
index 5ecb8ab..69f536b 100644
--- a/provision/initramfs/capabilities/setup-filesystems/Makefile.am
+++ b/provision/initramfs/capabilities/setup-filesystems/Makefile.am
@@ -9,11 +9,12 @@ rootfs:
        mkdir -p rootfs/warewulf/provision/
        @ for i in $(METHODSCRIPTS); do \
                echo "install -m 755 $$i rootfs/warewulf/provision/$$i" ; \
-               install -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
+               install -p -m 755 $(srcdir)/$$i rootfs/warewulf/provision/$$i; \
        done
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS));
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
diff --git a/provision/initramfs/capabilities/transport-http/Makefile.am 
b/provision/initramfs/capabilities/transport-http/Makefile.am
index ad36b10..6353324 100644
--- a/provision/initramfs/capabilities/transport-http/Makefile.am
+++ b/provision/initramfs/capabilities/transport-http/Makefile.am
@@ -12,11 +12,12 @@ rootfs:
        mkdir -p rootfs/warewulf/transports/$(TRANSPORT_NAME)
        @ for i in $(METHODSCRIPTS); do \
                echo "install -m 755 $$i 
rootfs/warewulf/transports/$(TRANSPORT_NAME)/$$i" ; \
-               install -m 755 $(srcdir)/$$i 
rootfs/warewulf/transports/$(TRANSPORT_NAME)/$$i; \
+               install -p -m 755 $(srcdir)/$$i 
rootfs/warewulf/transports/$(TRANSPORT_NAME)/$$i; \
        done
 
 capability.cpio: rootfs
-       cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+       find rootfs/ -type d | xargs touch -r $(word 1,$(METHODSCRIPTS));
+       cd rootfs/; find . | cpio -o -H newc --reproducible -F 
../capability.cpio
 
 install-data-local: capability.cpio
        install -d -m 755 
$(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities

Reply via email to