Polybar (Português)

From ArchWiki
Status de tradução: Esse artigo é uma tradução de Polybar. Data da última tradução: 2020-05-05. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.

A polybar é uma ferramenta rápida e fácil de usar para criar barras de status. Seu objetivo é ser facilmente personalizável, fazendo uso de muitos módulos que permitem uma ampla variedade de funcionalidades (modificáveis), como a exibição de workspaces, a data ou volume do sistema. A polybar é especialmente útil para gerenciadores de janela que possuem uma barra de status limitada ou inexistente, como awesome ou i3. Polybar também pode ser usado com ambientes de desktop como o Plasma.

Instalação

Instale o pacote polybar, ou a versão de desenvolvimento polybar-gitAUR.

Configuração

Copie o exemplo de configuração do /usr/share/doc/polybar/config para o $XDG_CONFIG_HOME/polybar/config.

Executando a Polybar

A polybar pode ser executada com os seguintes argumentos:

Usage: polybar [OPTION]... BAR

  -h, --help               Display this help and exit
  -v, --version            Display build details and exit
  -l, --log=LEVEL          Set the logging verbosity (default: WARNING)
                           LEVEL is one of: error, warning, info, trace
  -q, --quiet              Be quiet (will override -l)
  -c, --config=FILE        Path to the configuration file
  -r, --reload             Reload when the configuration has been modified
  -d, --dump=PARAM         Print value of PARAM in bar section and exit
  -m, --list-monitors      Print list of available monitors and exit
  -w, --print-wmname       Print the generated WM_NAME and exit
  -s, --stdout             Output data to stdout instead of drawing it to the X window
  -p, --png=FILE           Save png snapshot to FILE after running for 3 seconds

No entanto, você provavelmente deve querer executar a polybar com a rotina de inicialização do gerenciador de janelas. Veja #Executando com WM.

Exemplo de configuração

Uma configuração polybar muito básica pode ser assim:

[bar/minhabarra]
modules-right = date

[module/date]
type = internal/date
date = %Y-%m-%d%

Ela define uma barra chamada minhabarra com um módulo chamado date.

Por padrão, a polybar também instalará uma configuração de amostra com muitos módulos pré-configurados no /usr/share/doc/polybar/config

Nota: A configuração de amostra não foi projetada para funcionar "pronta" para todos, você precisará modificá-la para corresponder à sua configuração

Executando com WM

Crie um arquivo script executável contendo a lógica de inicialização, por exemplo $HOME/.config/polybar/launch.sh:

#!/bin/bash

# Termine instâncias de barras em execução
killall -q polybar

# Espere até que os processos em execução sejam terminados
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done

# execute a Polybar, usando a configuração padrão ~/.config/polybar/config
polybar minhabarra &

echo "Polybar lançada..."

Este script significa que reiniciar a WM também reiniciará a polybar.

bspwm

Se estiver usando bspwm, adicione o seguinte no seu bspwmrc:

$HOME/.config/polybar/launch.sh

i3

Se estiver usando o i3, adicione o seguinte na sua configuração:

exec_always --no-startup-id $HOME/.config/polybar/launch.sh

Resolução de problemas

Não é possível abrir o arquivo de objeto compartilhado libjsoncpp.so

Tente reinstalar, conforme descrito nesta issue do GitHub.

Caso contrário, tente instalar o pacote jsoncpp.

Veja também