Polybar (Português)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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 polybarAUR, 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