#!{{ lookPath "bash" }} # Load asdf . "$HOME/.asdf/asdf.sh" # Logging function log() { printf "$(tput setaf 4)$(tput bold)>>>>> %s <<<<<$(tput sgr0)\n" "$1" } inf() { printf "$(tput setaf 2)╚═══ᐳ $(tput sgr 0 1)$(tput setaf 2)%s$(tput sgr0)\n" "$1" } # Plugins to install declare -A plugins plugins=( ['direnv']='' ['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' ['starship']='' ) ### Install ASDF plugins ### log "Begin ASDF plugins installation" inf "installing direnv with system version..." # no need to run asdf direnv setup --shell zsh --version latest # as it is managed by zim module asdf plugin-add direnv for plugin in ${!plugins[@]}; do inf "installing ${plugin}..." asdf plugin add ${plugin} ${plugins[$plugin]} asdf install ${plugin} latest asdf global ${plugin} latest done inf "initializing opam..." opam init log "Finish ASDF plugins installation"