Files
runner-images/images/ubuntu/scripts/build/install-zstd.sh
T

39 lines
1.3 KiB
Bash
Raw Normal View History

2022-12-29 23:33:04 +01:00
#!/bin/bash -e
################################################################################
2023-11-22 21:49:23 +01:00
## File: install-zstd.sh
## Desc: Install zstd
## Supply chain security: zstd - checksum validation
2022-12-29 23:33:04 +01:00
################################################################################
# Source the helpers for use with the script
source $HELPER_SCRIPTS/install.sh
# Download zstd
2023-07-28 20:18:41 +02:00
release_tag=$(curl -fsSL https://api.github.com/repos/facebook/zstd/releases/latest | jq -r '.tag_name')
release_name="zstd-${release_tag//v}"
download_url="https://github.com/facebook/zstd/releases/download/${release_tag}/${release_name}.tar.gz"
archive_path=$(download_with_retry "${download_url}")
# Supply chain security - zstd
external_hash=$(get_checksum_from_url "${download_url}.sha256" "${release_name}.tar.gz" "SHA256")
use_checksum_comparison "$archive_path" "$external_hash"
# Install zstd
2024-05-29 13:43:07 +02:00
apt-get install liblz4-dev
tar xzf "$archive_path" -C /tmp
make -C "/tmp/${release_name}/contrib/pzstd" -j $(nproc) all
make -C "/tmp/${release_name}" -j $(nproc) zstd-release
for copyprocess in zstd zstdless zstdgrep; do
2023-12-29 12:36:27 +01:00
cp "/tmp/${release_name}/programs/${copyprocess}" /usr/local/bin/
done
cp "/tmp/${release_name}/contrib/pzstd/pzstd" /usr/local/bin/
for symlink in zstdcat zstdmt unzstd; do
2023-12-29 12:36:27 +01:00
ln -sf /usr/local/bin/zstd /usr/local/bin/${symlink}
done
2022-12-29 23:33:04 +01:00
invoke_tests "Tools" "Zstd"