aboutsummaryrefslogtreecommitdiffstats
path: root/modules/by-name/di/direnv
diff options
context:
space:
mode:
Diffstat (limited to 'modules/by-name/di/direnv')
-rw-r--r--modules/by-name/di/direnv/module.nix9
-rwxr-xr-xmodules/by-name/di/direnv/pre-cache.sh10
2 files changed, 12 insertions, 7 deletions
diff --git a/modules/by-name/di/direnv/module.nix b/modules/by-name/di/direnv/module.nix
index 743375af..31c70dad 100644
--- a/modules/by-name/di/direnv/module.nix
+++ b/modules/by-name/di/direnv/module.nix
@@ -22,7 +22,9 @@
cat "${./pre-cache.sh}" > $out
substituteInPlace $out \
- --replace-fail "%DEVSHELLS_REPO%" "${devshells}"
+ --replace-fail "%DEVSHELLS_REPO%" "${devshells}" \
+ --replace-fail "%DEVSHELLS_REPO_REF%" "${devshells.sourceInfo.rev}"
+
'';
in {
options.soispha.programs.direnv = {
@@ -42,7 +44,10 @@ in {
config = {
warn_timeout = 0;
- strict_env = true;
+
+ # NOTE: Something variable is undeclared in the my default loaded stuff :/. <2026-08-18>
+ # strict_env = true;
+
# disable_stdin = true;
};
};
diff --git a/modules/by-name/di/direnv/pre-cache.sh b/modules/by-name/di/direnv/pre-cache.sh
index 13c0cd37..8c43a556 100755
--- a/modules/by-name/di/direnv/pre-cache.sh
+++ b/modules/by-name/di/direnv/pre-cache.sh
@@ -7,12 +7,12 @@ _pre_cache_preflight() {
set -eu
_nix_direnv_preflight
- repo="%DEVSHELLS_REPO%"
+ REPO="%DEVSHELLS_REPO%"
system="x86_64-linux"
cache_dir="$XDG_CACHE_HOME/pre_cache"
[ -d "$cache_dir" ] || mkdir --parents "$cache_dir"
- repo_ref=$(git -C "$repo" rev-parse HEAD)
+ repo_ref="%DEVSHELLS_REPO_REF%"
final_cache="$cache_dir/$repo_ref"
if ! [ -d "$final_cache" ]; then
@@ -36,10 +36,10 @@ _pre_cache_load_shell() {
profile="$final_cache/__profile"
# It does not already exists, we need to evaluate it.
- _nix print-dev-env --profile "$tmp_profile" "$repo#$lang" >"$lang_cache"
+ _nix print-dev-env --profile "$tmp_profile" "$REPO#$lang" >"$lang_cache"
_nix_add_gcroot "$tmp_profile" "$profile"
- rm "$tmp_profile" "$tmp_profile"*
+ # rm "$tmp_profile" "$tmp_profile"* || true
fi
_pre_cache_log "Loaded dev-shell for $lang."
@@ -50,7 +50,7 @@ _pre_cache_build_shells() {
installables=""
for lang in "$@"; do
- new_part="$repo#devShells.$system.$lang"
+ new_part="$REPO#devShells.$system.$lang"
if [ -z "$installables" ]; then
installables="$new_part"