superlint/scripts/install-rustfmt.sh

39 lines
1 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
2023-04-21 23:57:35 -04:00
# https://doc.rust-lang.org/rustc/platform-support.html
set -euo pipefail
2023-04-21 23:57:35 -04:00
case $TARGETARCH in
amd64)
target=x86_64
;;
arm64)
target=aarch64
;;
*)
echo "$TARGETARCH is not supported"
exit 1
;;
esac
ln -s /usr/bin/rustup-init /usr/bin/rustup
2023-04-21 23:57:35 -04:00
rustup toolchain install stable-${target}-unknown-linux-musl
rustup component add rustfmt --toolchain=stable-${target}-unknown-linux-musl
rustup component add clippy --toolchain=stable-${target}-unknown-linux-musl
mv /root/.rustup /usr/lib/.rustup
2023-04-21 23:57:35 -04:00
ln -fsv /usr/lib/.rustup/toolchains/stable-${target}-unknown-linux-musl/bin/rustfmt /usr/bin/rustfmt
ln -fsv /usr/lib/.rustup/toolchains/stable-${target}-unknown-linux-musl/bin/rustc /usr/bin/rustc
ln -fsv /usr/lib/.rustup/toolchains/stable-${target}-unknown-linux-musl/bin/cargo /usr/bin/cargo
ln -fsv /usr/lib/.rustup/toolchains/stable-${target}-unknown-linux-musl/bin/cargo-clippy /usr/bin/cargo-clippy
cat <<'EOF' >/usr/bin/clippy
#!/usr/bin/env bash
pushd $(dirname $1)
cargo-clippy
rc=$?
popd
exit $rc
EOF
chmod +x /usr/bin/clippy