Skip to main content
Module

x/install/install.sh

Deno Binary Installer
Latest
File
#!/bin/sh# Copyright 2019 the Deno authors. All rights reserved. MIT license.# TODO(everyone): Keep this script simple and easily auditable.
set -e
if ! command -v unzip >/dev/null && ! command -v 7z >/dev/null; then echo "Error: either unzip or 7z is required to install Deno (see: https://github.com/denoland/deno_install#either-unzip-or-7z-is-required )." 1>&2 exit 1fi
if [ "$OS" = "Windows_NT" ]; then target="x86_64-pc-windows-msvc"else case $(uname -sm) in "Darwin x86_64") target="x86_64-apple-darwin" ;; "Darwin arm64") target="aarch64-apple-darwin" ;; "Linux aarch64") target="aarch64-unknown-linux-gnu" ;; *) target="x86_64-unknown-linux-gnu" ;; esacfi
if [ $# -eq 0 ]; then deno_uri="https://github.com/denoland/deno/releases/latest/download/deno-${target}.zip"else deno_uri="https://github.com/denoland/deno/releases/download/${1}/deno-${target}.zip"fi
deno_install="${DENO_INSTALL:-$HOME/.deno}"bin_dir="$deno_install/bin"exe="$bin_dir/deno"
if [ ! -d "$bin_dir" ]; then mkdir -p "$bin_dir"fi
curl --fail --location --progress-bar --output "$exe.zip" "$deno_uri"if command -v unzip >/dev/null; then unzip -d "$bin_dir" -o "$exe.zip"else 7z x -o"$bin_dir" -y "$exe.zip"fichmod +x "$exe"rm "$exe.zip"
echo "Deno was installed successfully to $exe"if command -v deno >/dev/null; then echo "Run 'deno --help' to get started"else case $SHELL in /bin/zsh) shell_profile=".zshrc" ;; *) shell_profile=".bashrc" ;; esac echo "Manually add the directory to your \$HOME/$shell_profile (or similar)" echo " export DENO_INSTALL=\"$deno_install\"" echo " export PATH=\"\$DENO_INSTALL/bin:\$PATH\"" echo "Run '$exe --help' to get started"fiechoecho "Stuck? Join our Discord https://discord.gg/deno"