starship prompt update
This commit is contained in:
parent
66230f34c4
commit
e1ac43e6c0
2 changed files with 555 additions and 11 deletions
|
|
@ -1,16 +1,16 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
options.speccon18.hm.starship.enable = lib.mkEnableOption "Enable Starship";
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
# Configuration written to ~/.config/starship.toml
|
||||
settings = {
|
||||
add_newline = false;
|
||||
|
||||
character = {
|
||||
success_symbol = "[➜](bold green)";
|
||||
error_symbol = "[➜](bold red)";
|
||||
};
|
||||
{
|
||||
options.speccon18.hm.starship.enable = lib.mkEnableOption "Enable Starship";
|
||||
|
||||
config = lib.mkIf config.speccon18.hm.starship.enable {
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
enableFishIntegration = false;
|
||||
settings = builtins.fromTOML (builtins.readFile ./starship.toml);
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
|||
544
modules/home-manager/starship.toml
Normal file
544
modules/home-manager/starship.toml
Normal file
|
|
@ -0,0 +1,544 @@
|
|||
# ============================================================================
|
||||
# GLOBAL OPTIONS
|
||||
# ============================================================================
|
||||
|
||||
add_newline = true
|
||||
command_timeout = 1000
|
||||
scan_timeout = 50
|
||||
palette = "oasis_abyss"
|
||||
|
||||
format = """
|
||||
$username\
|
||||
$hostname\
|
||||
$localip\
|
||||
$directory\
|
||||
$git_branch\
|
||||
$git_state\
|
||||
$git_status\
|
||||
$git_commit\
|
||||
$git_metrics\
|
||||
$cmd_duration\
|
||||
$line_break\
|
||||
$character\
|
||||
"""
|
||||
|
||||
right_format = """
|
||||
$time\
|
||||
$shell\
|
||||
$jobs\
|
||||
"""
|
||||
|
||||
[line_break]
|
||||
disabled = false
|
||||
|
||||
# ============================================================================
|
||||
# PALETTE DEFINITION (oasis_abyss)
|
||||
# ============================================================================
|
||||
|
||||
[palettes.oasis_abyss]
|
||||
# Normal colors
|
||||
black = "#000000"
|
||||
red = "#FF7979"
|
||||
green = "#53D390"
|
||||
yellow = "#F0E68C"
|
||||
blue = "#81C0FF"
|
||||
magenta = "#C695FF"
|
||||
cyan = "#68C0B6"
|
||||
white = "#DDDBD5"
|
||||
|
||||
# Bright colors
|
||||
bright_black = "#605C4D"
|
||||
bright_red = "#FFA0A0"
|
||||
bright_green = "#96EA7F"
|
||||
bright_yellow = "#F8B471"
|
||||
bright_blue = "#87CEEB"
|
||||
bright_magenta = "#D2ADFF"
|
||||
bright_cyan = "#8FD1C7"
|
||||
bright_white = "#FFF9F2"
|
||||
|
||||
# Semantic aliases for clarity
|
||||
error = "#FF7979"
|
||||
success = "#53D390"
|
||||
warning = "#F0E68C"
|
||||
info = "#81C0FF"
|
||||
highlight = "#C695FF"
|
||||
accent = "#68C0B6"
|
||||
|
||||
# ============================================================================
|
||||
# USER & HOSTNAME
|
||||
# ============================================================================
|
||||
|
||||
[username]
|
||||
disabled = false
|
||||
show_always = true
|
||||
style_user = "highlight bold"
|
||||
style_root = "error bold"
|
||||
format = "[$user]($style) on "
|
||||
|
||||
[hostname]
|
||||
disabled = false
|
||||
ssh_only = false
|
||||
trim_at = "."
|
||||
style = "info bold"
|
||||
format = "[$hostname]($style)@"
|
||||
|
||||
[localip]
|
||||
disabled = false
|
||||
ssh_only = false
|
||||
style = "highlight bold"
|
||||
format = "[$localipv4]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# DIRECTORY
|
||||
# ============================================================================
|
||||
|
||||
[directory]
|
||||
disabled = false
|
||||
read_only = " ro"
|
||||
read_only_style = "197"
|
||||
truncation_length = 3
|
||||
truncation_symbol = "…/"
|
||||
style = "info bold"
|
||||
format = "[ $path ]($style)[$read_only]($read_only_style) "
|
||||
|
||||
[directory.substitutions]
|
||||
"Documents" = " "
|
||||
"Downloads" = " "
|
||||
"Music" = " "
|
||||
"Pictures" = " "
|
||||
|
||||
# ============================================================================
|
||||
# GIT MODULES
|
||||
# ============================================================================
|
||||
|
||||
[git_branch]
|
||||
disabled = false
|
||||
symbol = " "
|
||||
style = "info bold"
|
||||
truncation_length = 20
|
||||
truncation_symbol = "…/"
|
||||
format = "on [$symbol$branch]($style) "
|
||||
|
||||
[git_status]
|
||||
disabled = false
|
||||
style = "success bold"
|
||||
conflicted = "🏳"
|
||||
ahead = " ⇡${count}"
|
||||
behind = " ⇣${count}"
|
||||
diverged = "⇕ ⇡${ahead_count} ⇣${behind_count}"
|
||||
untracked = "[ ?${count}](cyan)"
|
||||
stashed = "📦"
|
||||
modified = "[ !${count}](warning)"
|
||||
staged = " +${count}"
|
||||
renamed = " »${count}"
|
||||
deleted = "[ ✖${count}](error)"
|
||||
format = "[🔃$all_status$ahead_behind]($style) "
|
||||
|
||||
[git_commit]
|
||||
disabled = false
|
||||
commit_hash_length = 7
|
||||
tag_disabled = true
|
||||
tag_symbol = "🏷 "
|
||||
style = "warning bold"
|
||||
format = '[$$$hash$tag$$]($style) '
|
||||
|
||||
[git_state]
|
||||
disabled = false
|
||||
style = "warning bold"
|
||||
format = '$$[$state( $progress_current/$progress_total)]($style)$$ '
|
||||
|
||||
[git_metrics]
|
||||
disabled = false
|
||||
added_style = "success bold"
|
||||
deleted_style = "error bold"
|
||||
only_nonzero_diffs = true
|
||||
format = "(📈 [+$added]($added_style))([ -$deleted]($deleted_style)) "
|
||||
|
||||
# ============================================================================
|
||||
# COMMAND DURATION
|
||||
# ============================================================================
|
||||
|
||||
[cmd_duration]
|
||||
disabled = false
|
||||
min_time = 500
|
||||
show_milliseconds = false
|
||||
style = "warning"
|
||||
format = "took [$duration]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# CHARACTER
|
||||
# ============================================================================
|
||||
|
||||
[character]
|
||||
disabled = false
|
||||
success_symbol = "[➜](success bold)"
|
||||
error_symbol = "[✗](error bold)"
|
||||
vimcmd_symbol = "[V](success bold)"
|
||||
vimcmd_replace_one_symbol = "[R1](highlight bold)"
|
||||
vimcmd_replace_symbol = "[R](highlight bold)"
|
||||
vimcmd_visual_symbol = "[V](accent bold)"
|
||||
format = "$symbol "
|
||||
|
||||
# ============================================================================
|
||||
# TIME
|
||||
# ============================================================================
|
||||
|
||||
[time]
|
||||
disabled = false
|
||||
time_format = "%R"
|
||||
style = "bright_white bold"
|
||||
format = "exec_time: [$time]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# SHELL
|
||||
# ============================================================================
|
||||
|
||||
[shell]
|
||||
disabled = false
|
||||
bash_indicator = "bash"
|
||||
zsh_indicator = "zsh"
|
||||
fish_indicator = "fish"
|
||||
powershell_indicator = "pwsh"
|
||||
tcsh_indicator = "tcsh"
|
||||
elvish_indicator = "elvish"
|
||||
nu_indicator = "nu"
|
||||
unknown_indicator = "unknown"
|
||||
style = "info bold"
|
||||
format = "[$indicator]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# JOBS
|
||||
# ============================================================================
|
||||
|
||||
[jobs]
|
||||
disabled = false
|
||||
number_threshold = 1
|
||||
style = "warning bold"
|
||||
format = "[$number]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# BATTERY
|
||||
# ============================================================================
|
||||
|
||||
[battery]
|
||||
disabled = false
|
||||
full_symbol = "🔋 "
|
||||
charging_symbol = "⚡️ "
|
||||
discharging_symbol = "🔋 "
|
||||
unknown_symbol = "🔌 "
|
||||
empty_symbol = "🪫 "
|
||||
format = "[$symbol$percentage]($style) "
|
||||
|
||||
[[battery.display]]
|
||||
threshold = 10
|
||||
style = "error bold"
|
||||
|
||||
[[battery.display]]
|
||||
threshold = 30
|
||||
style = "warning bold"
|
||||
|
||||
[[battery.display]]
|
||||
threshold = 100
|
||||
style = "success bold"
|
||||
|
||||
# ============================================================================
|
||||
# CUSTOM MODULES
|
||||
# ============================================================================
|
||||
|
||||
[custom.example]
|
||||
disabled = true
|
||||
command = "echo 'Custom Module'"
|
||||
when = "true"
|
||||
style = "accent"
|
||||
format = "[$output]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# LANGUAGE MODULES
|
||||
# ============================================================================
|
||||
|
||||
[rust]
|
||||
disabled = false
|
||||
symbol = "🦀 "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[python]
|
||||
disabled = false
|
||||
symbol = "🐍 "
|
||||
style = "info bold"
|
||||
pyenv_version_name = false
|
||||
python_binary = ["python", "python3", "python3.11"]
|
||||
format = 'via [$symbol${pyenv_prefix}(${version} )($$$virtualenv$$ )]($style) '
|
||||
|
||||
[nodejs]
|
||||
disabled = false
|
||||
symbol = "🟢 "
|
||||
style = "success bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[golang]
|
||||
disabled = false
|
||||
symbol = "🐹 "
|
||||
style = "accent bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[java]
|
||||
disabled = false
|
||||
symbol = "☕ "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[ruby]
|
||||
disabled = false
|
||||
symbol = "💎 "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[php]
|
||||
disabled = false
|
||||
symbol = "🐘 "
|
||||
style = "highlight bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[typescript]
|
||||
disabled = false
|
||||
symbol = "📘 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[scala]
|
||||
disabled = false
|
||||
symbol = "🔥 "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[kotlin]
|
||||
disabled = false
|
||||
symbol = "🧠 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[swift]
|
||||
disabled = false
|
||||
symbol = "🛬 "
|
||||
style = "bright_yellow bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[dart]
|
||||
disabled = false
|
||||
symbol = "🎯 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[julia]
|
||||
disabled = false
|
||||
symbol = "⚙️ "
|
||||
style = "highlight bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[haskell]
|
||||
disabled = false
|
||||
symbol = "λ "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[elixir]
|
||||
disabled = false
|
||||
symbol = "🔮 "
|
||||
style = "highlight bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[erlang]
|
||||
disabled = false
|
||||
symbol = "📞 "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[lua]
|
||||
disabled = false
|
||||
symbol = "🌙 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[perl]
|
||||
disabled = false
|
||||
symbol = "🐪 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[zig]
|
||||
disabled = false
|
||||
symbol = "🦆 "
|
||||
style = "warning bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[nim]
|
||||
disabled = false
|
||||
symbol = "👑 "
|
||||
style = "warning bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[ocaml]
|
||||
disabled = false
|
||||
symbol = "🐫 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[crystal]
|
||||
disabled = false
|
||||
symbol = "💠 "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[elm]
|
||||
disabled = false
|
||||
symbol = "🍃 "
|
||||
style = "accent bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# INFRASTRUCTURE MODULES
|
||||
# ============================================================================
|
||||
|
||||
[aws]
|
||||
disabled = false
|
||||
symbol = "🅰 "
|
||||
style = "warning bold"
|
||||
format = "on [$symbol$profile]($style) "
|
||||
|
||||
[[aws.region_aliases]]
|
||||
ap-southeast-2 = "au"
|
||||
eu-west-1 = "uk"
|
||||
|
||||
[azure]
|
||||
disabled = false
|
||||
symbol = "🅰 "
|
||||
style = "info bold"
|
||||
format = "on [$symbol$subscription]($style) "
|
||||
|
||||
[gcloud]
|
||||
disabled = false
|
||||
symbol = "☁️ "
|
||||
style = "info bold"
|
||||
format = 'on [$symbol$account(@$domain)($$$region$$)]($style) '
|
||||
|
||||
[kubernetes]
|
||||
disabled = false
|
||||
symbol = "☸️ "
|
||||
style = "info bold"
|
||||
detect_files = ["kustomization.yaml", "kustomization.yml", "Kustomfile", ".kube"]
|
||||
detect_folders = [".kube"]
|
||||
format = 'on [$symbol$context( $$$namespace$$)]($style) '
|
||||
|
||||
[docker_context]
|
||||
disabled = false
|
||||
symbol = "🐳 "
|
||||
style = "info bold"
|
||||
detect_files = ["docker-compose.yml", "docker-compose.yaml", "Dockerfile"]
|
||||
detect_folders = ["docker"]
|
||||
format = "via [$symbol$context]($style) "
|
||||
|
||||
[terraform]
|
||||
disabled = false
|
||||
symbol = "💠 "
|
||||
style = "highlight bold"
|
||||
format = "via [$symbol$workspace]($style) "
|
||||
|
||||
[pulumi]
|
||||
disabled = false
|
||||
symbol = "🌀 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$stack]($style) "
|
||||
|
||||
[gitlab]
|
||||
disabled = false
|
||||
symbol = "🐱 "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$branch]($style) "
|
||||
|
||||
[github]
|
||||
disabled = false
|
||||
symbol = "🐙 "
|
||||
style = "black bold"
|
||||
format = "via [$symbol$branch]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# ENVIRONMENT VARIABLES
|
||||
# ============================================================================
|
||||
|
||||
[env_var.FOO]
|
||||
disabled = true
|
||||
default = "default_value"
|
||||
style = "info"
|
||||
format = "with [$env_value]($style) "
|
||||
|
||||
# ============================================================================
|
||||
# SYSTEM MODULES
|
||||
# ============================================================================
|
||||
|
||||
[package]
|
||||
disabled = false
|
||||
symbol = "📦 "
|
||||
style = "error bold"
|
||||
format = "is [$symbol$version]($style) "
|
||||
|
||||
[conda]
|
||||
disabled = false
|
||||
symbol = "🅒 "
|
||||
style = "success bold"
|
||||
ignore_base = true
|
||||
format = "via [$symbol$environment]($style) "
|
||||
|
||||
[nix_shell]
|
||||
disabled = false
|
||||
symbol = "🐧 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$state]($style) "
|
||||
|
||||
[gradle]
|
||||
disabled = false
|
||||
symbol = "🎓 "
|
||||
style = "success bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[maven]
|
||||
disabled = false
|
||||
symbol = "📦 "
|
||||
style = "error bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[helm]
|
||||
disabled = false
|
||||
symbol = "🎭 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[cmake]
|
||||
disabled = false
|
||||
symbol = "🔨 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[c]
|
||||
disabled = false
|
||||
symbol = "🔵 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[meson]
|
||||
disabled = false
|
||||
symbol = "🔨 "
|
||||
style = "info bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
|
||||
[guix_shell]
|
||||
disabled = false
|
||||
symbol = "🐧 "
|
||||
style = "success bold"
|
||||
format = "via [$symbol]($style) "
|
||||
|
||||
[vagrant]
|
||||
disabled = false
|
||||
symbol = "📦 "
|
||||
style = "success bold"
|
||||
format = "via [$symbol$version]($style) "
|
||||
Loading…
Add table
Add a link
Reference in a new issue