Use fish only as login shell and keep bash as system shell

This commit is contained in:
2025-12-15 14:59:45 +01:00
parent a938cf7abe
commit 8c048ac3c2
2 changed files with 20 additions and 8 deletions
+9 -1
View File
@@ -1,5 +1,13 @@
{ pkgs, ... }:
{
programs.bash = {
interactiveShellInit = ''
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
then
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
fi
'';
};
programs.fish.enable = true;
users.defaultUserShell = pkgs.fish;
}