{ config, pkgs, inputs, ... }: { programs = { zsh.enable = if config.os == "linux" then true else false; atuin = { enable = true; enableNushellIntegration = true; }; eza.enable = true; nushell = { enable = true; shellAliases = { ls = "eza -l --icons --tree --level 2 --header --git --group-directories-first"; # reload = "clear; source $nu.config-path"; }; extraConfig = "maxfetch"; configFile = { text = builtins.readFile ../config-files/config.nu; }; }; carapace.enable = true; carapace.enableNushellIntegration = true; starship = let flavour = "mocha"; in { enable = true; enableNushellIntegration = true; enableBashIntegration = true; enableZshIntegration = true; settings = { # Other config here character = { success_symbol = "[λ::](bold green)"; error_symbol = "[λ::](bold red)"; }; username = { style_user = "bold pink"; format = "[$user]($style)"; show_always = true; disabled = false; }; hostname = { ssh_only = false; format = "[ 🏳️‍⚧️ ](bold pink)[$hostname](bold flamingo)"; disabled = false; }; right_format = "$all"; format = '' $username$hostname in $directory $character''; palette = "catppuccin_${flavour}"; } // builtins.fromTOML (builtins.readFile (pkgs.fetchFromGitHub { owner = "catppuccin"; repo = "starship"; rev = "5629d2356f62a9f2f8efad3ff37476c19969bd4f"; # Replace with the latest commit hash sha256 = "sha256-nsRuxQFKbQkyEI4TXgvAjcroVdG+heKX5Pauq/4Ota0="; } + /palettes/${flavour}.toml)); }; }; }