From 2b9e906e72e55ded040e7ba683f0f8dca2a4183c Mon Sep 17 00:00:00 2001 From: kellervater Date: Thu, 10 Apr 2025 21:52:56 +0200 Subject: [PATCH] feat: asdf installation --- README.md | Bin 1908 -> 2718 bytes install-asdf.sh | 53 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100755 install-asdf.sh diff --git a/README.md b/README.md index ff02ca13d9905416c04c688591bdfbe4bc5afe84..e8886b686b8d528fe07e59dabe298dfede001f27 100644 GIT binary patch delta 814 zcmZuvO-sX25FD^4q29c|B1lEjg2x^_=|w~ZD^f&g+Qg>Vv@vO_J>{SH8wCHFKfsxN zO$C)llFfe1&d$ECz4!f(RiipXj1`|57RZp&nq!G3cI`RE16sJkHTpQmq zxe2DMnZV(KzGwPoJOQIZ4Ve)mVl<&$@H^tax;RBDy6S|Ib`2FVWyHUbi2*H@dYFh_ z)#M~BxVF_eQeX3LyvcO9V^wLxl=KTnB<^vGOPtX1@k-N{I6`MT^8s`mZfpWg@xlx> zof_4`G6!rg;5p--*peP+WJE7C6&&>w^$1T?uT2e>JQ+Pbba_I}uV6qyQ<4}HBxPV? zEv16&*vh;%0V@Qb^R31m15MdZLpapLq=ZC{j8Q+eAj5Shn%0GYo7HBz2qD|&3%m^bbe(nMre@+_Boo}Np BjfVgL delta 12 TcmbOy`h{;p8O!Dc?EjbmBSi%| diff --git a/install-asdf.sh b/install-asdf.sh new file mode 100755 index 0000000..3656aa9 --- /dev/null +++ b/install-asdf.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +set -euo pipefail + +# renovate: datasource=github-releases depName=asdf-vm/asdf +ASDF_VERSION=v0.16.6 + +add_line_to_file_if_not_exists() { + local file="$1" + local line="$2" + + if ! grep -Fxq "$line" "$file"; then + echo "Adding line to $file..." + echo "$line" >> "$file" + fi +} + +# Download and extract the archive +OS=$(uname | tr '[:upper:]' '[:lower:]') +ARCH=$(uname -m) +case "$ARCH" in + x86_64) ARCH="amd64" ;; + aarch64) ARCH="arm64" ;; + *) echo "โŒ Unsupported architecture: $ARCH"; exit 1 ;; +esac +ARCHIVE_URL="https://github.com/asdf-vm/asdf/releases/download/${ASDF_VERSION}/asdf-${ASDF_VERSION}-${OS}-${ARCH}.tar.gz" +INSTALL_DIR="$HOME/.asdf" + +echo "๐Ÿ—‘๏ธ Removing existing asdf installation..." +if [ -d "$INSTALL_DIR" ]; then + rm -rf "$INSTALL_DIR" +fi + +echo "โฌ‡๏ธ Downloading asdf version ${ASDF_VERSION}..." +curl -sSL "$ARCHIVE_URL" -o /tmp/asdf.tar.gz + +echo "๐Ÿ“ฆ Extracting asdf..." +mkdir -p "$INSTALL_DIR" +tar -xzf /tmp/asdf.tar.gz -C "$INSTALL_DIR" + +# Clean up +echo "๐Ÿงน Cleaning up..." +rm /tmp/asdf.tar.gz + +add_line_to_file_if_not_exists "$HOME/.bashrc" 'export PATH="$HOME/.asdf:$PATH"' +add_line_to_file_if_not_exists "$HOME/.bash_profile" 'export PATH="${ASDF_DATA_DIR:-$HOME/.asdf}/shims:$PATH"' +add_line_to_file_if_not_exists "$HOME/.bashrc" '. <(asdf completion bash)' + + +export PATH="$HOME/.asdf:$PATH" +asdf -v + +echo "โœ… asdf version ${ASDF_VERSION} installed successfully. To enable code completion, please restart your terminal or run 'source ~/.bashrc'."