about summary refs log tree commit diff
path: root/xgensum
diff options
context:
space:
mode:
authormaxice8 <thinkabit.ukim@gmail.com>2019-04-14 06:33:09 -0300
committerLeah Neukirchen <leah@vuxu.org>2019-04-14 21:57:28 +0200
commitc07853822749b43f287e873bb1525140b4ca619c (patch)
tree98a69eb514d9bd141bdbc6ee8aed8ac6e5b8e615 /xgensum
parentf659a5081ef38c010999c150739f0cd07ea27872 (diff)
downloadxtools-c07853822749b43f287e873bb1525140b4ca619c.tar.gz
xtools-c07853822749b43f287e873bb1525140b4ca619c.tar.xz
xtools-c07853822749b43f287e873bb1525140b4ca619c.zip
xgensum: use xbps-uhelper digest, reduce basename(1) usage
Closes: #130 [via git-merge-pr]
Diffstat (limited to 'xgensum')
-rwxr-xr-xxgensum24
1 files changed, 13 insertions, 11 deletions
diff --git a/xgensum b/xgensum
index 58b57e8..81f112e 100755
--- a/xgensum
+++ b/xgensum
@@ -38,7 +38,8 @@ srcdir="$XBPS_SRCDISTDIR/$pkgname-$version"
 
 if [ "$FLAG_f" = -f ]; then
 	for f in $distfiles; do
-		curfile=$(basename "${f#*>}")
+		curfile="${f#*>}"
+		curfile="${curfile##*/}"
 		distfile="$srcdir/$curfile"
 		rm -vf "$distfile"
 	done
@@ -49,23 +50,24 @@ $XBPS_DISTDIR/xbps-src -I fetch $pkgname
 
 sums=""
 for f in $distfiles; do
-	curfile=$(basename "${f#*>}")
+	curfile="${f#*>}"
+	curfile="${curfile##*/}"
 	distfile="$srcdir/$curfile"
 	if [ "$FLAG_c" = -c ];then
 		sum="@"
 		case ${distfile} in
 		*tar.lzma|*.tar|*.txz|*.tar.xz|*.tbz|*.tar.gz)
-			sum+=$(tar xf "$distfile" --to-stdout | sha256sum | awk '{print $1}')
+			sum+=$(xbps-uhelper digest <(tar xf "$distfile" --to-stdout))
 			;;
 		*.gz)
-			sum+=$(gunzip -c "$distfile" | sha256sum | awk '{print $1}')
+			sum+=$(xbps-uhelper digest <(gunzip -c "$distfile"))
 			;;
 		*.tar.bz2|*.bz2)
-			sum+=$(bunzip2 -c "$distfile" | sha256sum | awk '{print $1}')
+			sum+=$(xbps-uhelper digest <(bunzip2 -c "$distfile"))
 			;;
 		*.zip)
 			if command -v unzip &>/dev/null; then
-				sum+=$(unzip -p "$distfile" | sha256sum | awk '{print $1}')
+				sum+=$(xbps-uhelper digest <(unzip -p "$distfile"))
 				if [ $? -ne 0 ]; then
 					echo "$pkgver: extracting $curfile to pipe.\n"
 				fi
@@ -75,7 +77,7 @@ for f in $distfiles; do
 			;;
 		*.rpm)
 			if command -v rpmextract &>/dev/null; then
-				sum+=$(rpm2cpio "$distfile" | bsdtar xf - --to-stdout | sha256sum | awk '{print $1}')
+				sum+=$(xbps-uhelper digest <(rpm2cpio "$distfile" | bsdtar xf - --to-stdout))
 				if [ $? -ne 0 ]; then
 					echo "$pkgver: extracting $curfile to pipe.\n"
 				fi
@@ -85,7 +87,7 @@ for f in $distfiles; do
 			;;
 		*.7z)
 			if command -v 7z &>/dev/null; then
-				sum+=$(7z x -o "$distfile" | sha256sum | awk '{print $1}')
+				sum+=$(xbps-uhelper digest <(7z x -o "$distfile"))
 				if [ $? -ne 0 ]; then
 					echo "$pkgver: extracting $curfile to pipe.\n"
 				fi
@@ -94,14 +96,14 @@ for f in $distfiles; do
 			fi
 			;;
 		*.txt|*.patch|*.diff)
-			sum+=$(cat "$distfile" | sha256sum | awk '{print $1}')
+			sum+=$(xbps-uhelper digest "$distfile")
 			;;
 		*)
-			sum=$(sha256sum $distfile)
+			sum=$(xbps-uhelper digest $distfile)
 
 		esac
 	else
-		sum=$(sha256sum $distfile)
+		sum=$(xbps-uhelper digest $distfile)
 	fi
 	sums+="${sum%  *}\n "
 done