From eb0f2cb7338e2d61319ffcb316b8355db5a2dfdc Mon Sep 17 00:00:00 2001 From: LavaDesu Date: Tue, 16 Nov 2021 23:48:51 +0700 Subject: [PATCH] direnv: store .direnv in ~/.cache --- modules/user/direnv.nix | 3 +++ res/direnvrc | 8 ++++++++ 2 files changed, 11 insertions(+) create mode 100644 res/direnvrc diff --git a/modules/user/direnv.nix b/modules/user/direnv.nix index 5b0f5ad..05e8909 100644 --- a/modules/user/direnv.nix +++ b/modules/user/direnv.nix @@ -5,4 +5,7 @@ enable = true; }; }; + programs.git.extraConfig.core.excludesFile = ".envrc"; + # We can't use .source since hm manages this file too + xdg.configFile."direnv/direnvrc".text = builtins.readFile ../../res/direnvrc; } diff --git a/res/direnvrc b/res/direnvrc new file mode 100644 index 0000000..59902be --- /dev/null +++ b/res/direnvrc @@ -0,0 +1,8 @@ +: ${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" | shasum | cut -d ' ' -f 1 + )}" +}