summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/libmakepkg/util/compress.sh.in26
1 files changed, 13 insertions, 13 deletions
diff --git a/scripts/libmakepkg/util/compress.sh.in b/scripts/libmakepkg/util/compress.sh.in
index 3d4d88fd..9e3150f7 100644
--- a/scripts/libmakepkg/util/compress.sh.in
+++ b/scripts/libmakepkg/util/compress.sh.in
@@ -29,21 +29,21 @@ source "$LIBRARY/util/message.sh"
# Wrapper around many stream compression formats, for use in the middle of a
# pipeline. A tar archive is passed on stdin and compressed to stdout.
compress_as() {
- # $1: final archive filename extension for compression type detection
+ # $1: final archive filename extension for compression type detection
- local filename="$1"
+ local ext=".tar${1##*.tar}"
- case "$filename" in
- *tar.gz) ${COMPRESSGZ[@]:-gzip -c -f -n} ;;
- *tar.bz2) ${COMPRESSBZ2[@]:-bzip2 -c -f} ;;
- *tar.xz) ${COMPRESSXZ[@]:-xz -c -z -} ;;
- *tar.zst) ${COMPRESSZST[@]:-zstd -c -z -q -} ;;
- *tar.lrz) ${COMPRESSLRZ[@]:-lrzip -q} ;;
- *tar.lzo) ${COMPRESSLZO[@]:-lzop -q} ;;
- *tar.Z) ${COMPRESSZ[@]:-compress -c -f} ;;
- *tar.lz4) ${COMPRESSLZ4[@]:-lz4 -q} ;;
- *tar.lz) ${COMPRESSLZ[@]:-lzip -c -f} ;;
- *tar) cat ;;
+ case "$ext" in
+ *.tar.gz) ${COMPRESSGZ[@]:-gzip -c -f -n} ;;
+ *.tar.bz2) ${COMPRESSBZ2[@]:-bzip2 -c -f} ;;
+ *.tar.xz) ${COMPRESSXZ[@]:-xz -c -z -} ;;
+ *.tar.zst) ${COMPRESSZST[@]:-zstd -c -z -q -} ;;
+ *.tar.lrz) ${COMPRESSLRZ[@]:-lrzip -q} ;;
+ *.tar.lzo) ${COMPRESSLZO[@]:-lzop -q} ;;
+ *.tar.Z) ${COMPRESSZ[@]:-compress -c -f} ;;
+ *.tar.lz4) ${COMPRESSLZ4[@]:-lz4 -q} ;;
+ *.tar.lz) ${COMPRESSLZ[@]:-lzip -c -f} ;;
+ *.tar) cat ;;
*) warning "$(gettext "'%s' is not a valid archive extension.")" \
"$ext"; cat ;;
esac