summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOndrej Cierny2025-06-27 02:39:37 +0000
committerRobert Marko2025-06-30 08:39:05 +0000
commitd4d5fbd375a7d7e2fddb667afc21c221cb966130 (patch)
tree2651a395ba0126effff6cf3b9a8dd58e41e195d0
parent99851c7a3f8845f0be8fe5d9ff1fbcbfb3bdca09 (diff)
downloadopenwrt-d4d5fbd375a7d7e2fddb667afc21c221cb966130.tar.gz
download: improve rawgit tar reliability
Packages that depend on rawgit can fail on systems with the tar UID issue (https://bugzilla.redhat.com/show_bug.cgi?id=913406). Fix this by adding tar flags to overwrite UID/GID, as in the dl_tar_pack method. Signed-off-by: Ondrej Cierny <o.cierny@gmail.com> Link: https://github.com/openwrt/openwrt/pull/19243 Signed-off-by: Robert Marko <robimarko@gmail.com>
-rw-r--r--include/download.mk4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/download.mk b/include/download.mk
index 7f34302773..518a14e035 100644
--- a/include/download.mk
+++ b/include/download.mk
@@ -232,7 +232,9 @@ define DownloadMethod/rawgit
echo "Generating formal git archive (apply .gitattributes rules)" && \
(cd $(SUBDIR) && git config core.abbrev 8 && \
git archive --format=tar HEAD --output=../$(SUBDIR).tar.git) && \
- $(if $(filter skip,$(SUBMODULES)),true,$(TAR) --ignore-failed-read -C $(SUBDIR) -f $(SUBDIR).tar.git -r .git .gitmodules 2>/dev/null) && \
+ $(if $(filter skip,$(SUBMODULES)),true, \
+ $(TAR) --numeric-owner --owner=0 --group=0 --ignore-failed-read -C $(SUBDIR) -f $(SUBDIR).tar.git -r .git .gitmodules 2>/dev/null \
+ ) && \
rm -rf $(SUBDIR) && mkdir $(SUBDIR) && \
$(TAR) -C $(SUBDIR) -xf $(SUBDIR).tar.git && \
(cd $(SUBDIR) && $(if $(filter skip,$(SUBMODULES)),true,git submodule update --init --recursive -- $(SUBMODULES) && \