feat(server): a deliberate powerlevel10k prompt instead of the wizard's
p10k is now installed on shron, so the red prompt the role split was built around finally applies to the machine it was meant for. Cloned into $ZSH_CUSTOM/themes rather than installed as a package: no root, nothing outside the user's home, and undone by deleting a directory. Without a configuration p10k runs its setup wizard on the first interactive shell. Over SSH that is a login that sits there waiting for an answer, so the server gets a written configuration and the wizard is disabled outright. It is not a copy of beastix's. That one assumes a Nerd Font and a wide terminal; a server is reached from whatever is at hand, so this uses ASCII, one line, and a short segment list. user@host is always shown, on red - which is the whole point. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
4b38b80875
commit
39f9d11200
@@ -0,0 +1,45 @@
|
||||
# powerlevel10k configuration for the server role.
|
||||
#
|
||||
# Deliberately not the wizard's output. A server is reached from whatever
|
||||
# terminal happens to be at hand, so this uses ASCII rather than the icon set
|
||||
# that assumes a Nerd Font, and keeps the segment list short enough to read at
|
||||
# a glance during an incident.
|
||||
#
|
||||
# Sourced from 50-server.zsh, which runs after oh-my-zsh has loaded
|
||||
# powerlevel10k - the same point in the sequence at which p10k expects its own
|
||||
# ~/.p10k.zsh. beastix keeps its own file and is untouched by this.
|
||||
|
||||
# No glyphs. The prompt has to be legible from a phone terminal too.
|
||||
typeset -g POWERLEVEL9K_MODE=ascii
|
||||
typeset -g POWERLEVEL9K_ICON_PADDING=none
|
||||
|
||||
# One line, no frame. Nothing decorative survives being read in a hurry.
|
||||
typeset -g POWERLEVEL9K_PROMPT_ON_NEWLINE=false
|
||||
typeset -g POWERLEVEL9K_RPROMPT_ON_NEWLINE=false
|
||||
typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(context dir vcs prompt_char)
|
||||
typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status command_execution_time time)
|
||||
|
||||
# The point of the whole exercise: user@host, always, in red. shron carries
|
||||
# mail, web and cloud, and the prompt should answer "which machine is this"
|
||||
# before the next command is typed.
|
||||
typeset -g POWERLEVEL9K_ALWAYS_SHOW_CONTEXT=true
|
||||
typeset -g POWERLEVEL9K_ALWAYS_SHOW_USER=true
|
||||
typeset -g POWERLEVEL9K_CONTEXT_TEMPLATE='%n@%m'
|
||||
typeset -g POWERLEVEL9K_CONTEXT_BACKGROUND=red
|
||||
typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=white
|
||||
typeset -g POWERLEVEL9K_CONTEXT_DEFAULT_BACKGROUND=red
|
||||
typeset -g POWERLEVEL9K_CONTEXT_DEFAULT_FOREGROUND=white
|
||||
typeset -g POWERLEVEL9K_CONTEXT_ROOT_BACKGROUND=red
|
||||
typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=yellow
|
||||
|
||||
typeset -g POWERLEVEL9K_DIR_BACKGROUND=blue
|
||||
typeset -g POWERLEVEL9K_DIR_FOREGROUND=white
|
||||
typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_unique
|
||||
|
||||
# Only mention how long something took when it was long enough to notice.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=3
|
||||
typeset -g POWERLEVEL9K_TIME_FORMAT='%D{%H:%M}'
|
||||
|
||||
# Instant prompt would need a cache file this machine has no reason to carry.
|
||||
typeset -g POWERLEVEL9K_INSTANT_PROMPT=off
|
||||
typeset -g POWERLEVEL9K_DISABLE_CONFIGURATION_WIZARD=true
|
||||
Reference in New Issue
Block a user