all repos — zion-terminal @ 66508a0a605214d34c7a2231848d44ee63b394b2

dotfiles

opt/zion-terminal/config/bashrc-zion.sh (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
# =====================================================================
# ZION TERMINAL - Ambiente interativo (aliases + prompt)
# Cyberdeck criado por Pablo Murad em 2026
# Carregado pelo ~/.bashrc. Desative o prompt com: touch ~/.zion-sem-prompt
# =====================================================================
case $- in *i*) ;; *) return ;; esac
[ -n "${ZION_BASHRC_LOADED:-}" ] && return; ZION_BASHRC_LOADED=1

. /opt/zion-terminal/config/tema.sh 2>/dev/null

# --- Aliases do ZION ---
alias zz='zion'
alias zstatus='zion status';  alias znet='zion rede';     alias ztail='zion tailscale'
alias zssh='zion ssh';        alias zlogs='zion logs';    alias zupdate='zion atualizar'
alias ztemp='zion saude';     alias zdisco='df -h /';     alias zservicos='systemctl --failed'
alias ztmux='zion tmux';      alias zmatrix='zion matrix'; alias zdoctor='zion doctor'
alias zlink='zion link';      alias zmodo='zion modo'
alias ll='ls -alh --color=auto'; alias la='ls -A --color=auto'
command -v fdfind >/dev/null && alias fd='fdfind'
command -v batcat >/dev/null && alias bat='batcat'

# --- Prompt autoral (segue o tema, mostra git-sujo/root/erro) --------
_zion_prompt() {
  local ec=$?
  if [ -e "$HOME/.zion-sem-prompt" ]; then PS1='\u@\h:\w\$ '; return; fi
  if [ "${TERM:-dumb}" = dumb ]; then PS1='zion> '; return; fi
  local temp gcor branch gi ecd uc mark tema
  temp=$(cat /sys/class/thermal/thermal_zone0/temp 2>/dev/null); temp=$((temp/1000))
  if   [ "$temp" -ge 80 ]; then gcor="$ZCRIT"
  elif [ "$temp" -ge 65 ]; then gcor="$ZWARN"
  else                          gcor="$ZOK"; fi
  branch=$(git symbolic-ref --short HEAD 2>/dev/null || git rev-parse --short HEAD 2>/dev/null)
  if [ -n "$branch" ]; then
    local mk cor
    if git diff --quiet --ignore-submodules HEAD 2>/dev/null; then mk='✓'; cor="$ZOK"; else mk='✗'; cor="$ZWARN"; fi
    gi=" \[$ZDISC\][\[$ZS\]${branch}\[$ZDISC\] \[$cor\]${mk}\[$ZDISC\]]\[$ZR\]"
  fi
  [ "$ec" -ne 0 ] && ecd=" \[$ZCRIT\]✗${ec}\[$ZR\]"
  uc="$ZA"; mark='❯'
  [ "$(id -u)" -eq 0 ] && { uc="$ZCRIT"; mark='#'; }
  PS1="\[$ZP$ZB\]$ZSYM\[$ZR\] \[$uc\]ZION:\u\[$ZR\] \[$ZDISC\]\w\[$ZR\]${gi} \[$gcor\]${temp}°\[$ZR\]${ecd}\n\[$ZP\]${mark}\[$ZR\] "
}
if [ "${TERM:-dumb}" != dumb ]; then PROMPT_COMMAND=_zion_prompt; else PS1='zion> '; fi