Files
deno/rootfs/usr/local/bin/get-deno.sh
T

60 lines
2.4 KiB
Bash
Raw Normal View History

2022-07-10 18:44:30 -04:00
#!/usr/bin/env bash
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202207101834-git
# @Author : Jason Hempstead
2023-08-10 19:54:55 -04:00
# @Contact : jason@casjaysdev.pro
2022-07-10 18:44:30 -04:00
# @License : LICENSE.md
# @ReadME : get-deno.sh --help
# @Copyright : Copyright: (c) 2022 Jason Hempstead, Casjays Developments
# @Created : Sunday, Jul 10, 2022 18:34 EDT
# @File : get-deno.sh
# @Description : Download binaries for amd64 and arm64
# @TODO :
# @Other :
# @Resource :
# @sudo/root : no
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2022-10-11 16:07:58 -04:00
# Set bash options
[ -n "$DEBUG" ] && set -x
2022-10-12 17:25:02 -04:00
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2022-10-12 18:59:38 -04:00
DENO_VERSION="${DENO_VERSION:-v1.26.1}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2022-07-10 18:44:30 -04:00
if [ "$(uname -m)" = "amd64" ] || [ "$(uname -m)" = "x86_64" ]; then
2022-10-12 18:59:38 -04:00
ARCH="x86_64"
2022-10-21 01:47:54 -04:00
CHANNEL="github.com/denoland/deno"
2022-10-12 19:42:47 -04:00
URL="https://github.com/denoland/deno/releases/download/$DENO_VERSION/deno-$ARCH-unknown-linux-gnu.zip"
2022-10-12 19:12:10 -04:00
BIN_FILE="/usr/bin/deno"
2022-10-12 19:42:47 -04:00
TMP_DIR="/tmp/deno-$ARCH"
2022-10-12 19:58:06 -04:00
TMP_FILE="/tmp/deno-$ARCH.zip"
2022-10-12 18:59:38 -04:00
elif [ "$(uname -m)" = "arm64" ] || [ "$(uname -m)" = "aarch64" ]; then
ARCH="arm64"
2022-10-21 01:47:54 -04:00
CHANNEL="github.com/LukeChannings/deno-arm64"
2022-10-12 19:42:47 -04:00
URL="https://github.com/LukeChannings/deno-arm64/releases/download/$DENO_VERSION/deno-linux-$ARCH.zip"
2022-10-12 19:12:10 -04:00
BIN_FILE="/usr/bin/deno"
2022-10-12 19:42:47 -04:00
TMP_DIR="/tmp/deno-$ARCH"
2022-10-12 19:58:06 -04:00
TMP_FILE="/tmp/deno-$ARCH.zip"
2022-10-12 18:59:38 -04:00
else
echo "Unsupported architecture"
exit 1
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2022-10-12 20:07:21 -04:00
echo "grabbing deno $DENO_VERSION from $CHANNEL for $ARCH"
2022-10-12 19:59:08 -04:00
if curl -q -LSsf -o "$TMP_FILE" "$URL" && [ -f "$TMP_FILE" ]; then
2022-10-12 19:19:43 -04:00
mkdir -p "$TMP_DIR" && cd "$TMP_DIR" || exit 10
2022-10-12 20:19:00 -04:00
unzip -q "$TMP_FILE"
if [ -f "$TMP_DIR/deno" ]; then
2022-10-21 01:37:15 -04:00
cp -Rf "$TMP_DIR/deno" "$BIN_FILE" && chmod -Rf 755 "$BIN_FILE" || exitCode=10
[ -f "$BIN_FILE" ] && $BIN_FILE upgrade && exitCode=0 || exitCode=10
2022-10-12 20:19:00 -04:00
else
echo "Failed to extract deno from $TMP_FILE"
2022-10-21 01:37:15 -04:00
exitCode=10
2022-10-12 20:19:00 -04:00
fi
2022-10-12 18:36:54 -04:00
else
2022-10-12 20:07:21 -04:00
echo "Failed to download deno from $URL"
exitCode=2
2022-07-10 18:44:30 -04:00
fi
2022-10-12 18:59:38 -04:00
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2022-10-12 19:58:06 -04:00
rm -Rf "$TMP_FILE" "$TMP_DIR"
2022-10-12 19:42:47 -04:00
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2022-10-12 20:07:21 -04:00
exit ${exitCode:-0}