Como configurar bspwm e polybar para mais de um monitor

O bspwm é um gerenciador de janelas lado a lado que vem conquistando mais adeptos devido a sua alta personalização e leveza. Podendo rodar facilmente em até micros mais modestos, exige algumas configurações extras e discriminação de monitores é uma dela, em caso de mais de um.

Problema

Caso tenha mais de um monitor e ainda não tenha modificado as configurações do arquivo bspwmrc, seu sistema entende que deve utilizar apenas o monitor principal, não inutiliza os demais, entretanto, tudo será direcionado a ele.

Configurar bspwmrc para entender mais de um monitor

Antes de propriamente configurar, precisamos descobrir as portas que estão sendo utilizadas, para em seguida apontar nas configurações. Para descobrir é bem simples:

  • Com o seu terminal aberto, digite:

xrandr

Note que com esse comando saberemos onde estão conectados e o nome:

  • Com o editor de texto de sua preferência, abra o arquivo localizado em ~/.config/bspwm/bspwmrc

Como utilizo 2 monitores, basta descrever em que monitor ficará cada área de trabalho e quantas deseja usar:

No meu caso, monitor principal:

bspc monitor DVI-I-1 -d 'I' 'II' 'III' 'IV' 'V'

“DVI-I-1” é o apontamento para o monitor específico e “‘I’ ‘II’ ‘III’ ‘IV’ ‘V’” determina que esse monitor terá 5 áreas e com esses rótulos.

Uma vez configurado, é necessário sair (efetuar logoff) e voltar para que o sistema entenda as novas configurações:

image

Isso ainda não garante que a polybar vá aparecer além do monitor principal.


Polybar em mais de um monitor

Polybar, resumidamente, é uma barra de status e menu ricamente personalizável, sendo uma das mais utilizadas pelas pessoas que adotam sistemas minimalistas.

Problema

Por padrão, a barra não vem discriminando o monitor que deve ser exibida, com isso, o sistema assume que deve mostrar apenas na tela principal, tendo a necessidade de mais de um arquivo config e duplicar o apontamento.

Configurar polybar para ser exibida em todos os monitores

Ponto super importante: é preciso saber onde está o arquivo que aponta para a configuração vigente da polybar em execução. Para exemplificar, vou usar como base a minha configuração (sistema ArchCraft).

No meu caso, dentro do diretório ~/.config/bspwm/bin/ existe um arquivo chamado bspbar (pode ser que no seu caso esteja em: ~/.config/polybar/ com o nome launcher.sh)

Esse arquivo é responsável por dizer ao sistema onde está a configuração de sua polybar (módulos, tema, cor, fonte, etc). Ao abrir com um editor de texto, deve estar parecido com esse aqui:


Note que, nesse exemplo, a linha 10 aponta para o arquivo config que desejamos exibir nos outros monitores e, com isso, agora temos o endereço.

Acesse a pasta onde está o arquivo config e duplique. No meu caso, deixo o segundo arquivo com o nome config2. Ficando desta maneira:

image

Com esses dois arquivos de configuração, vamos editar cada um para que sejam exibidas exatamente nos monitores desejados.

Abra o arquivo config e na linha onde está “monitor =” informe o monitor que descobrimos com o comando xrandr:

Mesma coisa no arquivo config2:

Falta apenas mudarmos a configuração que aponta para a barra, acrescentando o apontamento para a segunda. Duplique as configurações e altere o nome final, apontando para a segunda configuração:

image

Com isso, pode sair e voltar que funcionará corretamente.

10 curtidas