#!/usr/bin/env bash set -euo pipefail source "${XDG_DATA_HOME}/buddy-up/includes/utils.sh" main () ( APP=nushell VERSION=${VERSION:-0.100.0} DEST=${XDG_DATA_HOME}/apps/releases/${APP} URL=https://github.com/nushell/nushell/releases/download/${VERSION}/nu-${VERSION}-$(uname -m)-$(get_os).tar.gz PLUGIN_DIR=${XDG_CONFIG_HOME}/nushell/plugins extract_tarball "${URL}" "${DEST}/${VERSION}" "--strip-component 1" set_current_link "${DEST}" "${VERSION}" set_link "${XDG_BIN_HOME}/nu" "${DEST}" nu mkdir_if_missing "${PLUGIN_DIR}" find "${DEST}" -type f -executable -exec basename {} \; | grep plugin | while read -r plugin ; do set_link "${PLUGIN_DIR}/${plugin}" "${DEST}" "${plugin}" done ) get_os () ( case $(uname -s) in Linux*) echo unknown-linux-gnu;; Darwin*) echo apple-darwin;; *) >&2 echo "unsupported os: $(uname -s)"; exit 1;; esac ) main "$@"