39 lines
939 B
Nix

{pkgs, ...}:
{
programs.fzf = {
enable = true;
};
programs.fish = {
enable = true;
# enableCompletion = true;
plugins = [
{
name = "fzf-fish";
src = pkgs.fetchFromGitHub {
owner = "PatrickF1";
repo = "fzf.fish";
rev = "v10.3";
sha256 = "sha256-T8KYLA/r/gOKvAivKRoeqIwE2pINlxFQtZJHpOy9GMM=";
};
}
# add others here
];
};
# sets the "default" shell to fish
# actually keeps bash as a posix-compliant default but starts fish if the shell is not bash
# See https://nixos.wiki/wiki/Fish
programs.bash = {
enable = true;
initExtra = ''
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
'';
};
}