Skip to content

Commit 1d69e65

Browse files
authored
Use checksum file directly instead of grepping
1 parent ae3eb91 commit 1d69e65

File tree

1 file changed

+14
-17
lines changed

1 file changed

+14
-17
lines changed

install.sh

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -70,27 +70,24 @@ elif command -v wget >/dev/null 2>&1; then
7070
fi
7171

7272
if [ "$CHECKSUMS_AVAILABLE" = true ]; then
73-
TARBALL_NAME="copilot-${PLATFORM}-${ARCH}.tar.gz"
74-
EXPECTED_CHECKSUM=$(grep "$TARBALL_NAME" "$TMP_CHECKSUMS" | awk '{print $1}')
75-
if [ -n "$EXPECTED_CHECKSUM" ]; then
76-
if command -v sha256sum >/dev/null 2>&1; then
77-
ACTUAL_CHECKSUM=$(sha256sum "$TMP_TARBALL" | awk '{print $1}')
78-
elif command -v shasum >/dev/null 2>&1; then
79-
ACTUAL_CHECKSUM=$(shasum -a 256 "$TMP_TARBALL" | awk '{print $1}')
73+
if command -v sha256sum >/dev/null 2>&1; then
74+
if (cd "$(dirname "$TMP_TARBALL")" && sha256sum -c --ignore-missing "$TMP_CHECKSUMS" 2>/dev/null | grep -q "$(basename "$TMP_TARBALL")"); then
75+
echo "✓ Checksum validated"
8076
else
81-
echo "Warning: No sha256sum or shasum found, skipping checksum validation."
82-
ACTUAL_CHECKSUM=""
77+
echo "Error: Checksum validation failed." >&2
78+
rm -f "$TMP_TARBALL" "$TMP_CHECKSUMS"
79+
exit 1
8380
fi
84-
if [ -n "$ACTUAL_CHECKSUM" ]; then
85-
if [ "$EXPECTED_CHECKSUM" != "$ACTUAL_CHECKSUM" ]; then
86-
echo "Error: Checksum validation failed." >&2
87-
echo "Expected: $EXPECTED_CHECKSUM" >&2
88-
echo "Actual: $ACTUAL_CHECKSUM" >&2
89-
rm -f "$TMP_TARBALL" "$TMP_CHECKSUMS"
90-
exit 1
91-
fi
81+
elif command -v shasum >/dev/null 2>&1; then
82+
if (cd "$(dirname "$TMP_TARBALL")" && shasum -a 256 -c --ignore-missing "$TMP_CHECKSUMS" 2>/dev/null | grep -q "$(basename "$TMP_TARBALL")"); then
9283
echo "✓ Checksum validated"
84+
else
85+
echo "Error: Checksum validation failed." >&2
86+
rm -f "$TMP_TARBALL" "$TMP_CHECKSUMS"
87+
exit 1
9388
fi
89+
else
90+
echo "Warning: No sha256sum or shasum found, skipping checksum validation."
9491
fi
9592
fi
9693
rm -f "$TMP_CHECKSUMS"

0 commit comments

Comments
 (0)