From ae22fa930e9d8f9c3cfc87523e0291e3e94818e7 Mon Sep 17 00:00:00 2001 From: jaredmontoya <49511278+jaredmontoya@users.noreply.github.com> Date: Sat, 1 Nov 2025 23:43:52 +0100 Subject: [PATCH] lazygit: fix nushell and fish integrations --- modules/programs/lazygit.nix | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/modules/programs/lazygit.nix b/modules/programs/lazygit.nix index 29c1b652..0244ae21 100644 --- a/modules/programs/lazygit.nix +++ b/modules/programs/lazygit.nix @@ -85,10 +85,15 @@ in programs = let + lazygitNewDirFilePath = + if config.home.preferXdgDirectories then + "${config.xdg.cacheHome}/lazygit/newdir" + else + "~/.lazygit/newdir"; + bashIntegration = '' - ${cfg.shellWrapperName}() - { - export LAZYGIT_NEW_DIR_FILE=~/.lazygit/newdir + ${cfg.shellWrapperName}() { + export LAZYGIT_NEW_DIR_FILE=${lazygitNewDirFilePath} lazygit "$@" if [ -f $LAZYGIT_NEW_DIR_FILE ]; then cd "$(cat $LAZYGIT_NEW_DIR_FILE)" @@ -98,17 +103,19 @@ in ''; fishIntegration = '' - set -x LAZYGIT_NEW_DIR_FILE ~/.lazygit/newdir - command lazygit $argv - if test -f $LAZYGIT_NEW_DIR_FILE - cd (cat $LAZYGIT_NEW_DIR_FILE) - rm -f $LAZYGIT_NEW_DIR_FILE + function ${cfg.shellWrapperName} + set -x LAZYGIT_NEW_DIR_FILE ${lazygitNewDirFilePath} + command lazygit $argv + if test -f $LAZYGIT_NEW_DIR_FILE + cd (cat $LAZYGIT_NEW_DIR_FILE) + rm -f $LAZYGIT_NEW_DIR_FILE + end end ''; nushellIntegration = '' def --env ${cfg.shellWrapperName} [...args] { - $env.LAZYGIT_NEW_DIR_FILE = "~/.lazygit/newdir" + $env.LAZYGIT_NEW_DIR_FILE = "${lazygitNewDirFilePath}" | path expand lazygit ...$args if ($env.LAZYGIT_NEW_DIR_FILE | path exists) { cd (open $env.LAZYGIT_NEW_DIR_FILE)