{ config, lib, pkgs, ... }: { imports = [./nushell/default.nix ./config/default.nix ./scripts/default.nix]; stylix.targets = { fzf.enable = true; zellij.enable = true; }; programs = rec { bash.enable = true; bat = { enable = true; config.theme = "Catppuccin-mocha"; }; bottom = { enable = true; settings.colors = with config.lib.stylix.colors.withHashtag; { table_header_color = base06; all_cpu_color = base06; avg_cpu_color = "#eba0ac"; cpu_core_colors = [base08 base09 base0A base0B "#74c7ec" base0E]; ram_color = base0B; swap_color = base09; rx_color = base0B; tx_color = base08; widget_title_color = base0F; border_color = base02; highlighted_border_color = base07; text_color = base04; graph_color = "#a6adc8"; cursor_color = "#f5c2e7"; selected_text_color = base05; selected_bg_color = base0E; high_battery_color = base0B; medium_battery_color = base0A; low_battery_color = base08; gpu_core_colors = ["#74c7ec" base0E base08 base09 base0A base0B]; arc_color = "#89dceb"; }; }; carapace = { enable = true; enableBashIntegration = true; enableNushellIntegration = true; }; eza = { enable = true; git = true; icons = true; enableAliases = false; extraOptions = ["--octal-permissions"]; }; readline = { enable = true; includeSystemConfig = true; extraConfig = '' set completion-ignore-case On ''; }; direnv = { enable = true; nix-direnv.enable = true; enableBashIntegration = true; enableNushellIntegration = true; }; fzf = { enable = true; enableBashIntegration = true; defaultCommand = "${pkgs.fd}/bin/fd --type f"; changeDirWidgetCommand = "${pkgs.fd}/bin/fd --type d"; fileWidgetCommand = "${pkgs.fd}/bin/fd --type f"; }; git = { enable = true; userName = "Evie Litherland-Smith"; userEmail = lib.mkDefault "evie@xenia.me.uk"; delta = { enable = true; options = { line-numbers = true; hyprlinks = true; navigate = true; side-by-side = true; syntax-theme = bat.config.theme; }; }; extraConfig = { github.user = "elitherl"; gitea.user = "xenia"; pull.rebase = false; init.defaultBranch = "main"; merge.conflictstyle = "diff3"; diff.colorMoved = "default"; }; }; ssh = { enable = true; forwardAgent = true; addKeysToAgent = "yes"; compression = true; serverAliveInterval = 15; serverAliveCountMax = 3; controlMaster = "auto"; controlPersist = "10s"; extraConfig = '' SetEnv TERM=xterm-256color ''; matchBlocks = { "git*".user = "git"; "legion" = { user = "xenia"; hostname = "192.168.1.230"; }; "ionos" = { user = "root"; hostname = "77.68.67.133"; }; "freia" = { user = "elitherl"; hostname = "freia020.hpc.l"; }; "heimdall" = { user = "elitherl"; hostname = "heimdall003.jet.uk"; }; }; }; starship = { enable = true; enableBashIntegration = true; enableNushellIntegration = true; enableTransience = true; settings = { c = {symbol = " ";}; command_timeout = 1000; container = {symbol = " ";}; add_newline = false; character = { success_symbol = "[!](bold green)"; error_symbol = "[?](bold red)"; }; directory = { truncation_length = 2; fish_style_pwd_dir_length = 1; read_only = "󰉐 "; truncate_to_repo = false; }; line_break.disabled = false; git_branch = { symbol = " "; only_attached = true; ignore_branches = ["master" "main"]; }; git_commit = { format = "[󰜘 $hash | $tag]($style) "; tag_symbol = "󰓹 "; tag_disabled = false; }; git_metrics.disabled = false; git_status = { stashed = "󰁯 "; ahead = "󰁝 "; behind = "󰁅 "; up_to_date = ""; diverged = "󰹹 "; conflicted = "󰦎 "; deleted = " "; renamed = " "; modified = " "; staged = " "; untracked = " "; typechanged = " "; }; golang = {symbol = " ";}; guix_shell = {symbol = " ";}; haskell = {symbol = " ";}; hostname = { ssh_only = true; ssh_symbol = "󰢹 "; }; java = {symbol = " ";}; localip = {disabled = false;}; lua = {symbol = " ";}; memory_usage = { disabled = false; symbol = "󰍛 "; }; nix_shell.symbol = "󱄅 "; os = { disabled = false; format = "on [$symbol]($style) "; style = "bold blue"; symbols = { Alpine = " "; Android = " "; Arch = " "; CentOS = " "; Debian = " "; EndeavourOS = " "; Fedora = " "; FreeBSD = " "; Gentoo = " "; Illumos = " "; Linux = " "; Macos = " "; Manjaro = " "; Mint = "󰣭 "; NixOS = " "; OpenBSD = " "; openSUSE = " "; Pop = " "; Raspbian = " "; Redhat = " "; RedHatEnterprise = " "; Solus = " "; SUSE = " "; Ubuntu = " "; Unknown = " "; Windows = " "; }; }; package = {symbol = "󰏗 ";}; python = { symbol = "󰌠 "; python_binary = "python3"; }; rust = {symbol = "󱘗 ";}; shell = { disabled = false; format = "using [$indicator ]($style)"; bash_indicator = "#"; nu_indicator = "ν"; unknown_indicator = "?"; }; status = {}; sudo = { disabled = false; symbol = "󰪋 "; }; }; }; zellij = { enable = true; enableBashIntegration = true; settings.default_layout = "compact"; }; }; }