Waybar é um painel altamente configurável, ideal para ambientes que utilizam o Wayland, como Hyprland, Sway, entre outros.
Oferece diversos módulos nativos e permite também a criação de módulos personalizados, possibilitando uma barra adaptada às preferências do usuário.
Já foi demonstrado como configurar o Waybar em um guia anterior. A leitura prévia desse material é recomendada para facilitar o entendimento das instruções a seguir. Neste artigo, serão apresentados recursos adicionais para melhorar a experiência com o Hyprland.
Utilizando o módulo de grupo no Waybar
Conforme documentado na wiki oficial do Waybar, o módulo group
permite incorporar múltiplos módulos dentro de uma única unidade visual, organizando o painel de forma mais eficiente.
Essa abordagem permite agrupar módulos relacionados (ou não) sob um único ponto de acesso, tornando a interface mais limpa e funcional.
Exemplo de configuração de um grupo
Abaixo, um passo a passo para criação de um grupo que reúna os módulos de CPU, memória e temperatura.
1. Estrutura inicial do grupo
O grupo é definido com a seguinte estrutura:
"group/<nome_do_grupo>": {
...
}
Por exemplo, para um grupo chamado hardware
:
"group/hardware": {
...
}
Os módulos a serem incluídos dentro do grupo, como cpu
, memory
e temperature
, devem estar definidos separadamente fora do grupo no arquivo ~/.config/waybar/config.jsonc
.
Atenção: em arquivos JSONC, adicione sempre uma vírgula após o último módulo anterior, exceto se for o último do bloco.
2. Definindo a orientação
A orientação do conteúdo do grupo pode ser especificada com a chave orientation
. Exemplos de valores: horizontal
, vertical
, orthogonal
ou inherit
.
"group/hardware": {
"orientation": "horizontal"
}
Para barras horizontais (superior ou inferior), o valor adequado é "horizontal"
.
3. Aplicando efeito de gaveta (drawer)
Para ocultar temporariamente os módulos do grupo e exibi-los sob demanda (com efeito de expansão), utilize o bloco drawer
:
"group/hardware": {
"orientation": "horizontal",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
}
}
Com "transition-left-to-right": false
, apenas o primeiro item do grupo ficará visível inicialmente. Os demais serão revelados ao passar o cursor sobre o primeiro item.
4. Adicionando os módulos ao grupo
Inclua os módulos desejados no campo modules
. O primeiro da lista será o visível (gatilho da gaveta):
"group/hardware": {
"orientation": "horizontal",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"custom/hardware-wrap",
"cpu",
"memory",
"temperature"
]
}
O módulo "custom/hardware-wrap"
é um item personalizado que serve como rótulo ou placeholder visível do grupo. Ele deve ser definido separadamente da seguinte forma:
"custom/hardware-wrap": {
"format": "Hardware",
"tooltip-format": "Hardware group"
}
5. Estilizando o módulo personalizado (CSS)
Adicione regras de estilo para o item personalizado no arquivo ~/.config/waybar/style.css
:
#custom-hardware-wrap {
box-shadow: none;
background: #202131;
text-shadow: none;
padding: 0px;
border-radius: 5px;
margin: 3px 6px;
padding: 0 4px;
color: #98C379;
}
6. Inserindo o grupo na barra
Por fim, adicione o grupo ao painel, por exemplo, à direita:
"modules-right": ["group/hardware", "pulseaudio", "tray"]
Isso garante que o grupo hardware aparecerá ao lado dos módulos de áudio e da bandeja do sistema.
Grupo recolhido
Grupo expandido
Conclusão
O uso do módulo group
permite otimizar o espaço na barra, melhorando a organização e a estética do painel. Informações adicionais e exemplos podem ser consultados na wiki do módulo group do Waybar, incluindo recursos como botões personalizados e controle de energia.