all repos — zion-terminal @ main

dotfiles

README.md (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
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
# ZION TERMINAL

Meu setup de terminal para uma Orange Pi CM4 usada como cyberdeck de
administração de infraestrutura. Não é um desktop: é um terminal dedicado a
acessar servidores por SSH, operar pela rede Tailscale, diagnosticar rede e
acompanhar os recursos da placa. Tudo em português, sem ambiente gráfico.

Roda em Debian 12 (bookworm) na Orange Pi CM4 (RK3566), mas a maior parte é
bash puro e deve funcionar em qualquer Debian/Armbian recente.

## Instalação

```sh
git clone https://github.com/runawaydevil/zion-terminal.git
cd zion-terminal
./install.sh
```

O `install.sh` copia o projeto para `/opt/zion-terminal`, instala o comando
`zion` em `/usr/local/bin`, liga o MOTD e os aliases no shell, configura o tmux
e habilita o timer de coleta de métricas. Ele pede sudo quando precisa e pode
ser rodado de novo sem estragar nada.

Depois abra uma sessão nova (ou `source ~/.bashrc`) e digite `zion`.

## Comandos

O comando central é `zion`. Sozinho abre o painel; com um subcomando executa uma
função direta. Todos aceitam `--help`.

```
zion            painel interativo
zion status     resumo rápido (CPU, RAM, disco, temperatura, rede)
zion saude      saúde detalhada com estados OK/ATENÇÃO/CRÍTICO
zion doctor     autoteste (POST) do sistema
zion link       resumo de conectividade
zion rede       diagnóstico de rede
zion tailscale  estado e diagnóstico do Tailscale
zion radar      latência dos peers (direto x DERP)
zion mapa       topologia do tailnet
zion ssh        servidores (lê ~/.ssh/config, com favoritos)
zion modo       perfis: campo / manutencao / emergencia / normal
zion panico     war-room em tmux
zion tmux       sessão persistente
zion atualizar  atualização segura (kernel fica em hold)
zion backup     backup das configurações
zion qr         QR de acesso para o celular
zion manual     manual de campo offline
zion tema       troca o tema (ice / amber / green)
zion matrix     chuva digital
```

Aliases prontos: `zz zstatus znet ztail zssh zdoctor zlink zmodo ztemp ztmux`.

## Estrutura

```
bin/zion                     comando principal (vai para /usr/local/bin)
opt/zion-terminal/
  bin/                       subcomandos zion-*
  lib/zion-ui.sh             biblioteca de interface (cabeçalhos, caixas, estados)
  config/                    tema, prompt (bashrc-zion.sh), tmux, ssh
  assets/ascii/              símbolo »Z» e a arte do logo
  docs/                      documentação
etc/profile.d/               MOTD e aliases no login
etc/systemd/system/          zion-collect (timer de métricas)
```

## Temas e personalização

Três temas, trocáveis a quente com `zion tema ice|amber|green`. O tema vale para
o prompt, o MOTD, o painel e a barra do tmux.

Para desligar coisas sem desinstalar:

```
touch ~/.zion-sem-prompt   # volta ao prompt padrão do bash
touch ~/.zion-sem-motd     # sem MOTD no login
touch ~/.zion-sem-tmux     # sem auto-resume do tmux no console local
export ZION_NO_ANIM=1      # sem animações
export NO_COLOR=1          # sem cores
```

## O que não vai no repositório

Dados locais ficam de fora (ver `.gitignore`): logs, backups, favoritos de SSH,
tema escolhido e o `tmux-resurrect` (clonado na instalação). O `~/.ssh/config` e
as chaves nunca entram aqui.

## Desinstalação

```sh
./uninstall.sh --dry-run   # mostra o que seria removido
./uninstall.sh             # remove de verdade
```

Restaura o MOTD, o prompt e o tmux anteriores e tira os ganchos do shell.
Preserva `~/.ssh/config`, chaves e backups.