#!/usr/bin/env bash

set -euo pipefail

# shellcheck disable=SC1091
source "${XDG_DATA_HOME}/buddy-up/includes/utils.sh"

APP=delta
VERSION=${VERSION:-0.18.2}
DEST=${XDG_DATA_HOME}/apps/releases/${APP}

main() (
	URL=https://github.com/dandavison/delta/releases/download/${VERSION}/delta-${VERSION}-$(get_arch)-$(get_os).tar.gz

	extract_tarball "${URL}" "${DEST}/${VERSION}" "--strip-component 1"
	set_current_link "${DEST}" "${VERSION}"
	set_link "${XDG_BIN_HOME}/${APP}" "${DEST}" "${APP}"
)

get_arch () (
	UNAME_M=$(uname -m)
	case "${UNAME_M}" in
		arm64*)    echo aarch64;;
		*)        echo "${UNAME_M}"
	esac
)

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 "${@}"
