diff options
Diffstat (limited to 'hm/shell/fish.nix')
| -rw-r--r-- | hm/shell/fish.nix | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/hm/shell/fish.nix b/hm/shell/fish.nix new file mode 100644 index 0000000..644eadc --- /dev/null +++ b/hm/shell/fish.nix @@ -0,0 +1,69 @@ +{ config, lib, pkgs, ... }: +let + cfg = config.szpont.hm.shell.fish; +in +{ + options.szpont.hm.shell.fish.enable = lib.mkEnableOption "enables fish shell"; + + config = lib.mkIf cfg.enable { + programs.fish = { + enable = true; + + interactiveShellInit = '' + set fish_greeting + fastfetch + ''; + + shellAliases = { + nos = "nh os switch"; + nob = "nh os boot"; + nfu = "nix flake update"; + ll = "ls -lah"; + la = "ls -A"; + md = "mkdir -p"; + rmf = "rm -rf"; + gl = "git log --oneline --graph --decorate"; + untar = "tar -xzvf"; + tarc = "tar -czvf"; + ff = "fastfetch"; + cat = "bat"; + ls = "eza"; + }; + + plugins = [ + { + name = "transient-fish"; + src = pkgs.fishPlugins.transient-fish.src; + } + { + name = "fishbang"; + src = pkgs.fishPlugins.fishbang.src; + } + { + name = "puffer"; + src = pkgs.fishPlugins.puffer.src; + } + { + name = "pisces"; + src = pkgs.fishPlugins.pisces.src; + } + { + name = "fzf-fish"; + src = pkgs.fishPlugins.fzf-fish.src; + } + { + name = "fish-you-should-use"; + src = pkgs.fishPlugins.fish-you-should-use.src; + } + { + name = "colored-man-pages"; + src = pkgs.fishPlugins.colored-man-pages.src; + } + { + name = "fifc"; + src = pkgs.fishPlugins.fifc.src; + } + ]; + }; + }; +} |
