[pacman-dev] [PATCH] Fix compression of package databases with zstd

Allan McRae allan at archlinux.org
Tue Oct 22 07:29:48 UTC 2019


From: Nick Cao <nickcao at nichi.co>

Commit 7afe51171 attempted to add zstd compression support to repo-add,
but failed...

FS#64213

Signed-off-by: Allan McRae <allan at archlinux.org>
---
 scripts/repo-add.sh.in | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/scripts/repo-add.sh.in b/scripts/repo-add.sh.in
index 6a889803..079249e6 100644
--- a/scripts/repo-add.sh.in
+++ b/scripts/repo-add.sh.in
@@ -193,11 +193,11 @@ verify_repo_extension() {
 	local repofile=$1
 
 	case $repofile in
-		*.db.tar.gz)  TAR_OPT="z" ;;
-		*.db.tar.bz2) TAR_OPT="j" ;;
-		*.db.tar.xz)  TAR_OPT="J" ;;
+		*.db.tar.gz)  TAR_OPT="-z" ;;
+		*.db.tar.bz2) TAR_OPT="-j" ;;
+		*.db.tar.xz)  TAR_OPT="-J" ;;
 		*.db.tar.zst) TAR_OPT="--zstd" ;;
-		*.db.tar.Z)   TAR_OPT="Z" ;;
+		*.db.tar.Z)   TAR_OPT="-Z" ;;
 		*.db.tar)     TAR_OPT="" ;;
 		*) error "$(gettext "'%s' does not have a valid database archive extension.")" \
 				"$repofile"
@@ -534,11 +534,11 @@ create_db() {
 
 		pushd "$tmpdir/$repo" >/dev/null
 		if ( shopt -s nullglob; files=(*); (( ${#files[*]} )) ); then
-			bsdtar -c${TAR_OPT}f "$tempname" *
+			bsdtar -c ${TAR_OPT} -f "$tempname" *
 		else
 			# we have no packages remaining? zip up some emptyness
 			warning "$(gettext "No packages remain, creating empty database.")"
-			bsdtar -c${TAR_OPT}f "$tempname" -T /dev/null
+			bsdtar -c ${TAR_OPT} -f "$tempname" -T /dev/null
 		fi
 		popd >/dev/null
 
-- 
2.23.0


More information about the pacman-dev mailing list