{ pkgs, inputs, config, ... }: let inherit (config) rice; inherit (pkgs) fish; in { imports = [ inputs.culr.nixosModules.culr ]; programs.culr = { enable = true; pattern = "rainbow-split"; }; programs.fish = { enable = true; shellAbbrs = { "gco" = "git checkout"; "gcb" = "git checkout -b"; "gp" = "git push"; "gpf" = "git push --force"; "gap" = "git commit -a --amend --no-edit && git push --force"; "gl" = "git pull"; "ga" = "git add"; "l" = "eza -lg --icons=always --colour=always | culr"; "la" = "eza -lg --icons=always --colour=always | culr"; }; interactiveShellInit = '' ${./rice/header.sh} ''; }; programs.zoxide = { enable = true; enableFishIntegration = true; }; environment.systemPackages = [ fish ]; environment.shells = [ fish ]; users.defaultUserShell = fish; console = { font = "Lat2-Terminus16"; }; environment.sessionVariables = { EDITOR = "hx"; }; hm.programs.kitty = { enable = true; font = { inherit (rice.fonts.monospace) name size; }; settings = with rice.palette.hex; { foreground = util.fg; background = util.bg; inherit (util) cursor; cursor_text = util.bg; selection_foreground = util.fg_sel; selection_background = util.bg_sel; color0 = normal.black; color1 = normal.red; color2 = normal.green; color3 = normal.yellow; color4 = normal.blue; color5 = normal.magenta; color6 = normal.cyan; color7 = normal.white; color8 = bright.black; color9 = bright.red; color10 = bright.green; color11 = bright.yellow; color12 = bright.blue; color13 = bright.magenta; color14 = bright.cyan; color15 = bright.white; sync_to_monitor = "yes"; shell = "fish"; cursor_trail = 100; }; }; }