{ config, lib, ... }: { programs.starship = { enable = true; settings = lib.mkDefault { format = lib.concatStrings [ "$username" "$hostname" "$directory" "([\\[ $git_branch" "$git_commit" "$git_state" "$git_metrics" "$git_status\\]](bold) )" "$cmd_duration" "$line_break" "$jobs" "$shlvl" "$status" "$nix_shell" "$character" ]; palettes = { default = { c1 = "#e34f7c"; # red c2 = "#4571a2"; # blue c3 = "#443f59"; # purple }; }; palette = "default"; status = { disabled = false; symbol = "x"; }; character = { success_symbol = "[\\$](bold green)"; error_symbol = "[\\$](bold red)"; }; username = { show_always = true; format = "[ $user ](c1 inverted)"; }; directory = { format = "[ $path[$read_only](red bg:c3) ](white bg:c3) "; read_only = " [ro]"; }; shlvl = { disabled = false; symbol = "#"; }; nix_shell = { format = "[$symbol]($style) "; symbol = "*"; }; jobs.symbol = "%"; git_branch.format = "[$branch(:$remote_branch)]($style) "; git_metrics.format = "(|([ $added]($added_style))([ $deleted]($deleted_style)) )"; git_metrics.disabled = false; git_status.format = "(| [$all_status$ahead_behind]($style) )"; cmd_duration.format = "[\\[$duration\\]]($style) "; hostname.format = "[ @$hostname ](bg:c2)"; }; }; }