16 lines
532 B
Plaintext
16 lines
532 B
Plaintext
# Place in ~/.config/direnv/direnvrc
|
|
|
|
# Two things to know:
|
|
# * `direnv_layour_dir` is called once for every {.direnvrc,.envrc} sourced
|
|
# * The indicator for a different direnv file being sourced is a different $PWD value
|
|
# This means we can hash $PWD to get a fully unique cache path for any given environment
|
|
|
|
: ${XDG_CACHE_HOME:=$HOME/.cache}
|
|
declare -A direnv_layout_dirs
|
|
direnv_layout_dir() {
|
|
echo "${direnv_layout_dirs[$PWD]:=$(
|
|
echo -n "$XDG_CACHE_HOME"/direnv/layouts/
|
|
echo -n "$PWD" | sha1sum | cut -d ' ' -f 1
|
|
)}"
|
|
}
|