{ config, lib, pkgs, hostname, nix-meow, fetchFromGitHub, system, ... }: let cfg = config.modules.fish; in { options.modules.fish = { enable = lib.mkEnableOption "Fish"; }; config = lib.mkIf cfg.enable { home.shell.enableFishIntegration = true; home.packages = [ pkgs.nix-output-monitor ]; programs = { fish = { enable = true; shellInit = '' set -g theme_nerd_fonts yes set -g theme_color_scheme nord set -g theme_display_user yes set -g fish_color_autosuggestion 6F6578 alias nik 'nix' alias nos 'sudo echo; sudo nixos-rebuild switch --flake .#${hostname}-${system} --log-format internal-json -v &| nom --json' alias hms 'home-manager switch --flake .#${hostname}-${system} --log-format internal-json -v &| nom --json' ''; plugins = [ { name = "bobthefish"; src = pkgs.fetchFromGitHub { owner = "oh-my-fish"; repo = "theme-bobthefish"; rev = "e3b4d4eafc23516e35f162686f08a42edf844e40"; sha256 = "sha256-cXOYvdn74H4rkMWSC7G6bT4wa9d3/3vRnKed2ixRnuA="; }; } ]; }; eza = { enable = true; enableFishIntegration = true; icons = "auto"; git = true; extraOptions = [ ]; }; }; }; }