- Notifications
You must be signed in to change notification settings - Fork8
Sets up asdf, with auto install and optimized usage of the direnv plugin.
License
NotificationsYou must be signed in to change notification settings
zimfw/asdf
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Initializesasdf, installing it using git if not installed yet. Also, bypassesthe shims if you're using thedirenv plugin, as suggested by the pluginpro-tips.
The path ofASDF_DIR
, where asdf is installed, is checked among the usualdirectories created by Homebrew or Pacman, or the default${HOME}/.asdf
. Youcan defineASDF_DIR
in your .zshrc before initializing this module to customizeits path:
ASDF_DIR=/path/to/asdf_dir
Do do I install thedirenv plugin to work with this module?
- Run these commands:
asdf plugin-add direnvasdf 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 thesesteps:
- 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 cangenerate it with:
asdf direnv setup --no-touch-rc-file --version system
- Make sure your direnv .envrc files have
use asdf
. - Remove
zmodule asdf
from .zimrc or any asdf initialization from .zshrc. - Make sure you're initializing direnv during shell start-up, preferably with
zmodule dirvenv
in your .zimrc.
Basically you're using direnv to activate asdf this way. Since you're using thesystem's direnv, that does not depend on asdf to work, it's a much simpler setup.