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:
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:
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:
Com isso, pode sair e voltar que funcionará corretamente.