nixos-config/home-manager/stvnliu/shells/fish/default.nix
Zhongheng Liu f4df5fd49c
feat: kanshi fish and tailscale
move kanshi config to individual file
add tailscale fish completions
remove auto-cpufreq
change tailscale service to fix exit-node and routing features
2024-09-01 09:23:43 +03:00

62 lines
1.4 KiB
Nix

{
pkgs,
config,
lib,
...
}: let
cfg = config.myShells.fish;
in
with lib; {
options = {
myShells.fish = {enable = mkEnableOption "Enables fish and components.";};
};
config = mkIf cfg.enable {
programs.fish = {
enable = true;
shellInit = ''
${builtins.readFile ./init/zoxide.fish}
${builtins.readFile ./init/nh.fish}
${builtins.readFile ./init/tailscale.fish}
function fish_greeting
${pkgs.fortune}/bin/fortune -a
end
funcsave -q fish_greeting
'';
shellAliases = import ../aliases {inherit pkgs;};
plugins = with pkgs.fishPlugins; [
{
name = "z";
src = z.src;
}
{
name = "plugin-git";
src = plugin-git.src;
}
{
name = "transient-fish";
src = transient-fish.src;
}
{
name = "done";
src = done.src;
}
{
name = "gruvbox";
src = gruvbox.src;
}
{
name = "colored-man-pages";
src = colored-man-pages.src;
}
{
name = "puffer";
src = puffer.src;
}
{
name = "pisces";
src = pisces.src;
}
];
};
};
}