75 lines
2.5 KiB
Bash
Executable file
75 lines
2.5 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
|
|
set -eu
|
|
|
|
JUST_VERSION="1.47.1"
|
|
JUST_SHA256SUM="3cb931ae25860f261ee373f32ede3b772ac91f14f588e4071576d3ffcf1a16fd"
|
|
CARGO_LLVM_COV_VERSION="0.6.21"
|
|
CARGO_LLVM_COV_SHA256SUM="57f491aedf7cdb261538ceb49cbb1ee9d27df7ca205a5e1a009caaf5cb911afb"
|
|
CARGO_AUDIT_VERSION="0.22.1"
|
|
CARGO_AUDIT_TAG="cargo-audit%2Fv$CARGO_AUDIT_VERSION"
|
|
CARGO_AUDIT_SHA256SUM="1890badd5f15831a9af4b074399fcd21e6f7c0fe42c84e9254cdffc9f813765c"
|
|
TAPLO_VERSION="0.10.0"
|
|
TAPLO_SHA256SUM="8fe196b894ccf9072f98d4e1013a180306e17d244830b03986ee5e8eabeb6156"
|
|
TYPOS_VERSION="1.47.2"
|
|
TYPOS_SHA256SUM="7aef58932fc123b4cf4b40d86468e89a3297d80169051d7cfd13a235e05fc426"
|
|
CARGO_DENY_VERSION="0.19.8"
|
|
CARGO_DENY_SHA256SUM="70e769ae3872e34d45132b17040859175e11401dc12dddb0303e0b8c7d088f3f"
|
|
|
|
TRIPLE="x86_64-unknown-linux-gnu"
|
|
TRIPLE_MUSL="x86_64-unknown-linux-musl"
|
|
|
|
fetch() {
|
|
repo="$1"
|
|
tag="$2"
|
|
filename="$3"
|
|
digest="$4"
|
|
binary="$5"
|
|
renamed_binary="${6:-$binary}"
|
|
|
|
[ -d /tmp/tools ] || mkdir -p /tmp/tools
|
|
|
|
curl -fsSLO --output-dir /tmp \
|
|
-w '%{stderr}HTTP %{response_code} %{url}\n' \
|
|
"https://github.com/$repo/releases/download/$tag/$filename"
|
|
|
|
printf '%s %s\n' "$digest" "/tmp/$filename" > /tmp/digest
|
|
sha256sum --check /tmp/digest
|
|
|
|
if printf '%s' "$filename" | grep -qE '\.tar\.|\.tgz$'; then
|
|
tar xf "/tmp/$filename" -C /tmp/tools
|
|
elif printf '%s' "$filename" | grep -q '\.gz$'; then
|
|
gunzip -c "/tmp/$filename" > "/tmp/tools/$binary"
|
|
else
|
|
echo "Fatal: can't determine how to unpack $filename"
|
|
exit 1
|
|
fi
|
|
|
|
find /tmp/tools -type f -name "$binary" \
|
|
-exec mv -v '{}' "/usr/local/bin/$renamed_binary" ';'
|
|
chmod +x "/usr/local/bin/$renamed_binary"
|
|
}
|
|
|
|
fetch casey/just "$JUST_VERSION" \
|
|
"just-$JUST_VERSION-$TRIPLE_MUSL.tar.gz" \
|
|
"$JUST_SHA256SUM" just
|
|
|
|
fetch taiki-e/cargo-llvm-cov "v$CARGO_LLVM_COV_VERSION" \
|
|
"cargo-llvm-cov-$TRIPLE.tar.gz" \
|
|
"$CARGO_LLVM_COV_SHA256SUM" cargo-llvm-cov
|
|
|
|
fetch rustsec/rustsec "$CARGO_AUDIT_TAG" \
|
|
"cargo-audit-$TRIPLE-v$CARGO_AUDIT_VERSION.tgz" \
|
|
"$CARGO_AUDIT_SHA256SUM" cargo-audit
|
|
|
|
fetch tamasfe/taplo "$TAPLO_VERSION" \
|
|
"taplo-linux-x86_64.gz" \
|
|
"$TAPLO_SHA256SUM" taplo-linux-x86_64 taplo
|
|
|
|
fetch crate-ci/typos "v$TYPOS_VERSION" \
|
|
"typos-v$TYPOS_VERSION-$TRIPLE_MUSL.tar.gz" \
|
|
"$TYPOS_SHA256SUM" typos
|
|
|
|
fetch EmbarkStudios/cargo-deny "$CARGO_DENY_VERSION" \
|
|
cargo-deny-$CARGO_DENY_VERSION-$TRIPLE_MUSL.tar.gz \
|
|
"$CARGO_DENY_SHA256SUM" cargo-deny
|