include: make APK .list files even more reproducible
authorPaul Spooren <[email protected]>
Tue, 26 Aug 2025 11:36:54 +0000 (13:36 +0200)
committerPaul Spooren <[email protected]>
Wed, 27 Aug 2025 01:27:55 +0000 (03:27 +0200)
This commit fixes "aff2f096235 include: make APK .list files reproducible"
since it would create the .list file while `find` still runs. This causes the
.list file to be part of itself. As an alternative, write the file to a
temporary folder first and then move it.

Fix: aff2f096235 include: make APK .list files reproducible
Signed-off-by: Paul Spooren <[email protected]>
include/package-pack.mk

index 318d8ee5f697814866ec74a47b5ffeb63dfa84df..38655a44925ca6eeca50d226e75f399d3b56af7d 100644 (file)
@@ -353,7 +353,7 @@ else
 
        if [ -n "$(USERID)" ]; then echo $(USERID) > $$(IDIR_$(1))/lib/apk/packages/$(1).rusers; fi;
        if [ -n "$(ALTERNATIVES)" ]; then echo $(ALTERNATIVES) > $$(IDIR_$(1))/lib/apk/packages/$(1).alternatives; fi;
-       (cd $$(IDIR_$(1)) && find . -type f,l -printf "/%P\n" | sort > $$(IDIR_$(1))/lib/apk/packages/$(1).list)
+       (cd $$(IDIR_$(1)) && find . -type f,l -printf "/%P\n" | sort > $(TMP_DIR)/$(1).list && mv $(TMP_DIR)/$(1).list $$(IDIR_$(1))/lib/apk/packages/$(1).list)
        # Move conffiles to IDIR and build conffiles_static with csums
        if [ -f $$(ADIR_$(1))/conffiles ]; then \
                mv -f $$(ADIR_$(1))/conffiles $$(IDIR_$(1))/lib/apk/packages/$(1).conffiles; \