Skip to content

🚀 Starship Prompt

About

Starship prompt is a powerful addon to modify the shell prompt dynamically based on the current location and state. Therefore we already install the latest version while building the Arkanum image. Additionally we use starship as default prompt in bash.

The included default setup uses the system wide installed NerdFont patched FiraCode Font with its symbols, ligatures and emojis.

Screenshots

screen1

screen2

screen3

screen4

screen5

Referenced Source Files

Dockerfile
RUN \
  echo "**** install starship prompt ****" && \
  curl -sS -o /tmp/install.sh https://starship.rs/install.sh && \
  chmod +x /tmp/install.sh && \
  /tmp/install.sh --verbose --force --version latest && \
  rm -f /tmp/install.sh && \
  echo "eval \"\$(starship init bash)\"" >> /etc/bash.bashrc

ENV STARSHIP_CONFIG=/etc/starship.toml
COPY starship.toml /etc/starship.toml
toml
[aws]
symbol = "  "

[buf]
symbol = " "

[conda]
symbol = " "

[container]
symbol = " "
format = "[$symbol]($style)"

[dart]
symbol = " "

[directory]
read_only = " "

[docker_context]
symbol = " "

[elixir]
symbol = " "

[elm]
symbol = " "

# [git_branch]
# symbol = " "

[golang]
symbol = " "

[haskell]
symbol = " "

[hg_branch]
symbol = " "

[java]
symbol = " "

[julia]
symbol = " "

[memory_usage]
symbol = " "

[nim]
symbol = " "

[nix_shell]
symbol = " "

[nodejs]
symbol = " "

[package]
symbol = " "

[python]
disabled = true

[rust]
symbol = " "

# Custom Prompt
[git_branch]
format = " [$symbol$branch]($style) "
symbol = "🍣 "
style = "bold yellow"

[git_commit]
commit_hash_length = 8
style = "bold white"

[git_state]
format = '[\($state( $progress_current of $progress_total)\)]($style) '

[git_status]
conflicted = "⚔️ "
ahead = "🏎️💨 ×${count}"
behind = "🐢 ×${count}"
diverged = "🔱 🏎️ 💨 ×${ahead_count} 🐢 ×${behind_count}"
untracked = "🛤️ ×${count}|"
stashed = "📦 "
modified = "📝 ×${count}|"
staged = "🗃️ ×${count}|"
renamed = "📛 ×${count}|"
deleted = "🗑️ ×${count}|"
style = "bright-white"
format = "$all_status$ahead_behind"

Released under the AGPLv3 License.