#!/bin/sh if [ -n "$UBI_DEBUG_BOOTSTRAP" ]; then set -x fi set -e if [ "$(id -u)" -eq 0 ]; then DEFAULT_TARGET="/usr/local/bin" else DEFAULT_TARGET="$HOME/bin" fi TARGET="${TARGET:=$DEFAULT_TARGET}" if [ ! -d "$TARGET" ]; then >&2 echo "bootstrap-ubi.sh: The install target directory, \`$TARGET\`, does not exist" exit 3 fi # Old vs new file naming. This changes in v0.2.1 when I started using actions-rust-release to do # releases. # # v0.1.1/ubi-FreeBSD-x86_64.tar.gz # v0.2.1/ubi-FreeBSD-x86_64.tar.gz # # v0.1.1/ubi-Linux-powerpc-gnu.tar.gz # v0.2.1/ubi-Linux-gnu-powerpc.tar.gz # # v0.1.1/ubi-Linux-powerpc64-gnu.tar.gz # v0.2.1/ubi-Linux-gnu-powerpc64.tar.gz # # v0.1.1/ubi-Linux-powerpc64le.tar.gz # v0.2.1/ubi-Linux-gnu-powerpc64le.tar.gz # # v0.1.1/ubi-Linux-riscv64gc-gnu.tar.gz # v0.2.1/ubi-Linux-gnu-riscv64gc.tar.gz # # v0.1.1/ubi-Linux-s390x-gnu.tar.gz # v0.2.1/ubi-Linux-gnu-s390x.tar.gz # # v0.1.1/ubi-Linux-aarch64-musl.tar.gz # v0.2.1/ubi-Linux-musl-arm64.tar.gz # # v0.1.1/ubi-Linux-i686-musl.tar.gz # v0.2.1/ubi-Linux-musl-i686.tar.gz # # v0.1.1/ubi-Linux-x86_64-musl.tar.gz # v0.2.1/ubi-Linux-musl-x86_64.tar.gz # # v0.1.1/ubi-Linux-arm-musl.tar.gz # v0.2.1/ubi-Linux-musleabi-arm.tar.gz # # v0.1.1/ubi-Darwin-aarch64.tar.gz # v0.2.1/ubi-macOS-arm64.tar.gz # # v0.1.1/ubi-Darwin-x86_64.tar.gz # v0.2.1/ubi-macOS-x86_64.tar.gz # # v0.1.1/ubi-NetBSD-x86_64.tar.gz # v0.2.1/ubi-NetBSD-x86_64.tar.gz # # v0.1.1/ubi-Windows-aarch64.zip # v0.2.1/ubi-Windows-msvc-arm64.zip # # v0.1.1/ubi-Windows-i686.zip # v0.2.1/ubi-Windows-msvc-i686.zip # # v0.1.1/ubi-Windows-x86_64.zip # v0.2.1/ubi-Windows-msvc-x86_64.zip OLD_FILE_NAMING="" if [ -n "$TAG" ]; then IFS="." read -r MAJOR MINOR <&2 echo "curl failed to download $URL and did not print a status code" exit 5 elif [ "$STATUS" != "200" ]; then >&2 echo "curl failed to download $URL - status code = $STATUS" exit 6 fi if echo "$FILENAME" | grep "\\.tar\\.gz$"; then tar -xzf "$LOCAL_FILE" ubi else unzip "$LOCAL_FILE" fi chmod +x ubi rm -rf -- "$TEMPDIR" echo "" echo "bootstrap-ubi.sh: ubi has been installed to \`$TARGET\`." set +e TARGET_IS_IN_PATH=$(echo ":$PATH:" | grep --extended-regexp ":$TARGET:" 2>/dev/null) if [ -z "$TARGET_IS_IN_PATH" ]; then echo "bootstrap-ubi.sh: It looks like \`$TARGET\` is not in your PATH. You may want to add it to use ubi." fi echo ""