Initializes asdf, installing it using git if not installed yet. Also, bypasses the shims if you're using the direnv plugin, as suggested by the plugin pro-tips.
The path of ASDF_DIR, where asdf is installed, is checked among the usual
directories created by Homebrew or Pacman, or the default ${HOME}/.asdf. You
can define ASDF_DIR in your .zshrc before initializing this module to customize
its path:
ASDF_DIR=/path/to/asdf_dir
Do do I install the direnv plugin to work with this module?
- Run these commands:
asdf plugin-add direnv asdf direnv setup --no-touch-rc-file --version latest - Make sure your .zshrc does not contain the following line:
source "${XDG_CONFIG_HOME:-$HOME/.config}/asdf-direnv/zshrc"
To use your system's direnv instead of direnv installed via asdf, follow these steps:
- Keep the asdf direnv plugin installed. You can install it with:
asdf plugin-add direnv - Uninstall any direnv installed with asdf:
asdf uninstall direnv - Make sure the ~/.config/direnv/lib/use_asdf.sh script exists. You can
generate it with:
asdf direnv setup --no-touch-rc-file --version system - Make sure your direnv .envrc files have
use asdf. - Remove
zmodule asdffrom .zimrc or any asdf initialization from .zshrc. - Make sure you're initializing direnv during shell start-up, preferably with
zmodule dirvenvin your .zimrc.
Basically you're using direnv to activate asdf this way. Since you're using the system's direnv, that does not depend on asdf to work, it's a much simpler setup.