#!/usr/bin/env bash set -euo pipefail # shellcheck disable=SC1091 source "${XDG_DATA_HOME}/buddy-up/includes/utils.sh" APP=kubectl # https://dl.k8s.io/release/stable.txt VERSION=${VERSION:-1.28.1} DEST=${XDG_DATA_HOME}/apps/releases/${APP} APP_PATH=${DEST}/${VERSION}/kubectl main() ( URL=https://dl.k8s.io/release/v${VERSION}/bin/$(get_os)/$(get_arch)/kubectl if [[ ! -f ${APP_PATH} ]]; then mkdir -p "${DEST}/${VERSION}" curl --silent --location --output "${APP_PATH}" "${URL}" chmod +x "${APP_PATH}" fi set_current_link "${DEST}" "${VERSION}" set_link "${XDG_BIN_HOME}/${APP}" "${DEST}" "${APP}" ) get_arch() ( case $(uname -m) in x86_64*) echo amd64 ;; arm64*) echo arm64 ;; *) echo >&2 "unsupported architecture: $(uname -m)" exit 1 ;; esac ) main "${@}"