add hosts/modules/bashistrans.nix
This commit is contained in:
parent
120b753882
commit
70ed4a9a38
3 changed files with 27 additions and 16 deletions
23
hosts/modules/bashistrans.nix
Normal file
23
hosts/modules/bashistrans.nix
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
{pkgs, ...}: {
|
||||
# I want to use fish as my login shell but it always goes terrible
|
||||
# cause it isn't POSIX compliant, so instead Bash is my login and
|
||||
# will just exec fish (^-^)
|
||||
programs.bash = {
|
||||
blesh.enable = false; # ble.sh replacement for GNU readline
|
||||
completion.enable = true;
|
||||
|
||||
interactiveShellInit = ''
|
||||
# help bash transition into a beautiful fish!
|
||||
if [[ -z $CRY_BASH_IS_TRANS ]]
|
||||
then
|
||||
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
|
||||
fi
|
||||
# bash is trans now! (no more transitioning required)
|
||||
export CRY_BASH_IS_TRANS=true
|
||||
'';
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue