diff --git a/bin/get-deno.sh b/bin/get-deno.sh index 8673692..0c0a116 100755 --- a/bin/get-deno.sh +++ b/bin/get-deno.sh @@ -19,9 +19,9 @@ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - __get_file() { local exitStatus="" - if curl -q -LSf -o "$FILE" "$URL"; then + if curl -q -LSf "$URL" -o "$FILE"; then exitStatus=0 - elif curl -q -LSf -o "$FILE" "$LATEST_URL"; then + elif curl -q -LSf "$LATEST_URL" -o "$FILE"; then URL="$LATEST_URL" exitStatus=0 else @@ -34,12 +34,15 @@ DENO_VERSION="${DENO_VERSION:-v1.26.1}" # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - if [ "$(uname -m)" = "amd64" ] || [ "$(uname -m)" = "x86_64" ]; then ARCH="x86_64" + BIN_FILE="/usr/bin/deno" FILE="/tmp/deno-$ARCH.zip" + TMP_DIR="/tmp/deno-$ARCH/deno" DENO_VERSION="${DENO_VERSION:-latest}" URL="https://github.com/denoland/deno/releases/download/$DENO_VERSION/deno-$ARCH-unknown-linux-gnu.zip" LATEST_URL="https://github.com/denoland/deno/releases/download/latest/deno-$ARCH-unknown-linux-gnu.zip" elif [ "$(uname -m)" = "arm64" ] || [ "$(uname -m)" = "aarch64" ]; then ARCH="arm64" + BIN_FILE="/usr/bin/deno" FILE="/tmp/deno-$ARCH.zip" DENO_VERSION="${DENO_VERSION:-latest}" URL="https://github.com/LukeChannings/deno-arm64/releases/download/$DENO_VERSION/deno-linux-$ARCH.zip" @@ -51,13 +54,13 @@ fi # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # AMD64 binary if [ "$ARCH" = "x86_64" ]; then - echo "grabbing ${DENO_VERSION}/deno-$ARCH-unknown-linux-gnu.zip from denoland for $ARCH" - __get_file && if [ -f "/tmp/deno-$ARCH.zip" ]; then - mkdir -p "/tmp/deno-$ARCH" && cd "/tmp/deno-$ARCH" || exit 10 - unzip "/tmp/deno-$ARCH.zip" - mv -fv "/tmp/deno-$ARCH/deno" "/usr/bin/deno" - chmod -Rf 755 "/usr/bin/deno" - rm -Rf "/tmp/deno-$ARCH.zip" "/tmp/deno-$ARCH" + echo "grabbing ${DENO_VERSION} from denoland for $ARCH" + __get_file && if [ -f "$FILE" ]; then + mkdir -p "$TMP_DIR" && cd "$TMP_DIR" || exit 10 + unzip "$FILE" + mv -fv "$TMP_DIR" "$BIN_FILE" + chmod -Rf 755 "$BIN_FILE" + rm -Rf "$FILE" "$TMP_DIR" fi else echo "Failed to download deno from $URL" @@ -66,13 +69,13 @@ fi # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # ARM64 binary if [ "$ARCH" = "arm64" ]; then - echo "grabbing ${DENO_VERSION}/deno-$ARCH-unknown-linux-gnu.zip from denoland for $ARCH" - __get_file && if [ -f "/tmp/deno-$ARCH.zip" ]; then - mkdir -p "/tmp/deno-$ARCH" && cd "/tmp/deno-$ARCH" || exit 10 - unzip "/tmp/deno-$ARCH.zip" - mv -fv "/tmp/deno-$ARCH/deno" "/usr/bin/deno" - chmod -Rf 755 "/usr/bin/deno" - rm -Rf "/tmp/deno-$ARCH.zip" "/tmp/deno-$ARCH" + echo "grabbing ${DENO_VERSION} from LukeChannings for $ARCH" + __get_file && if [ -f "$FILE" ]; then + mkdir -p "$TMP_DIR" && cd "$TMP_DIR" || exit 10 + unzip "$FILE" + mv -fv "$TMP_DIR" "$BIN_FILE" + chmod -Rf 755 "$BIN_FILE" + rm -Rf "$FILE" "$TMP_DIR" fi else echo "Failed to download deno from $URL"