Makepkg used to use du --apparent-size to compute the size of the
package. Unfortunately, this would result in different sizes depending
on the filesystem used (e.g., btrfs vs ext4), which would affect
reproducible builds. Use a wc-based approach to compute sizes

Signed-off-by: Santiago Torres <[email protected]>
---
 scripts/makepkg.sh.in | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index e12826af..4f096a36 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -588,8 +588,7 @@ write_kv_pair() {
 }
 
 write_pkginfo() {
-       local size="$(@DUPATH@ @DUFLAGS@)"
-       size="$(( ${size%%[^0-9]*} * 1024 ))"
+       local size="$(find . -type f -exec cat {} + 2>/dev/null | wc -c)"
 
        merge_arch_attrs
 
-- 
2.21.0

Reply via email to