aboutsummaryrefslogtreecommitdiffstats
path: root/modules/by-name/di/direnv/module.nix
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-08-25 23:26:35 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-08-25 23:26:58 +0200
commitc201188e0bd1c666a86e7c3ec85ec6a43c6bd35f (patch)
treec04fa6026078916f78a9f83d5aed35b13da9e375 /modules/by-name/di/direnv/module.nix
parentmodules/direnv: Consistently run `direnv export` (diff)
downloadnixos-config-c201188e0bd1c666a86e7c3ec85ec6a43c6bd35f.zip
modules/{direnv,starship}: Enable direnv landrun sandbox
Diffstat (limited to '')
-rw-r--r--modules/by-name/di/direnv/module.nix5
1 files changed, 5 insertions, 0 deletions
diff --git a/modules/by-name/di/direnv/module.nix b/modules/by-name/di/direnv/module.nix
index 4a1a4768..9c2975c3 100644
--- a/modules/by-name/di/direnv/module.nix
+++ b/modules/by-name/di/direnv/module.nix
@@ -53,7 +53,12 @@ in {
end
function _direnv_hook --on-event fish_preexec --on-variable PWD
+ if not set --query IN_DIRENV_SANDBOX; and set --query SHOULD_SANDBOX_DIRENV; and ${direnvPkg} status | grep 'Found RC path' --invert-match | grep 'No .envrc or .env loaded' --quiet
+ # We found a rc path, but none are loaded. So we can start our shell.
+ ${lib.getExe landrun-fish} --interactive --command='_direnv_export_eval'
+ else
_direnv_export_eval
+ end
end
'';