1
0
Files
chezmoi/home/.chezmoiscripts/run_once_after_10-asdf-config.sh.tmpl
2025-08-14 12:56:28 +02:00

57 lines
1.4 KiB
Cheetah

#!{{ lookPath "bash" }}
# title
title="ASDF configuration"
# include lib
. ${CHEZMOI_WORKING_TREE}/scripts/utils.sh
# Plugins to install
declare -A plugins
plugins=(
['direnv']=''
['starship']=''
['golang']='https://github.com/asdf-community/asdf-golang.git'
['nodejs']='https://github.com/asdf-vm/asdf-nodejs.git'
['opam']='https://github.com/asdf-community/asdf-opam.git'
['ruby']='https://github.com/asdf-vm/asdf-ruby.git'
['rust']='https://github.com/code-lever/asdf-rust.git'
['julia']='https://github.com/rkyleg/asdf-julia.git'
['r']='https://github.com/asdf-community/asdf-r.git'
)
### Install ASDF plugins ###
log "Begin ${title}"
inf "installing direnv with system version..."
# no need to run asdf direnv setup --shell zsh --version latest
# as it is managed by zim module
for plugin in ${!plugins[@]}; do
if [[ ! $(asdf plugin list | grep "^${plugin}$") ]]; then
inf "installing ${plugin}..."
asdf plugin add ${plugin} ${plugins[$plugin]}
asdf install ${plugin} latest
asdf set ${plugin} latest
asdf reshim ${plugin}
fi
done
if [[ ! $(asdf plugin list | grep "^python$") ]]; then
inf "installing python..."
asdf plugin add python https://github.com/asdf-community/asdf-python.git
asdf install python latest:3.12
asdf set python latest:3.12
asdf reshim python
fi
inf "initializing opam..."
opam init -n
log "${title} done"