Qtile dual monitor setup, screen is not updating

Hi there, I started using EOS i3 edition last year and I’m a really big fan of it. Recently I decided to switch from EOS i3 to Qtile. So I did a fresh installation of EOS with Qtile. Now, I don’t know much about qtile and it’s configuartion. I have two monitors, first a 1920x1080 monitor and second is a 1366x768 monitor. Now the issue I’m facing that to setup these monitors, I first used xrandr and added a 1366x768 resolution to my second monitor and the by using arandr, I enabled it, marked it as my primary monitor.

Now the problems I’m facing is that firstly, the Qtile bar is only showing up on the primary monitor. And secondly, since I don’t know how multi-monitor or should I say Screens works in Qtile, whenever I try to switch to a workspace on my primary monitor, if that workspace is on my second monitor (1920x1080), it appears on my first monitor instead of simply changing the focus to the second monitor. And another problem is that my first monitor (1366x768) is not updating after closing any application. The screen doesn’t get cleared. If I use a transparent terminal, I can clear see the previous terminal (that I closed) is still there, so for some reason, the screen is showing the updates, If I do any activity but after closing the application, it does not gets updated.

So I was wondering If I was doing something wrong so it would be great if you guys could assist on setting up a dual monitor setup in qtile (And also how to use that setup​:joy:).

Note:- I am using the default configuration that ships with EOS Qtile, I haven’t made any changes so far.

It sounds like you’ve got a lot going on here. I’ll attempt to answer…

I’m not sure how you’ve set your xrandr/arandr config. I add my xrandr command to my .xprofile in my home directory. This lets me load any WM without problems.

I don’t use the EOS qtile config so I don’t know how they have it set up. However, there should be a screen section that defines where the top bar appears. Maybe they define the screen/monitor detection there or a separate file. In any case, check this link, it should help:

  • First, they create a function to get the number of monitors via xrandr with def get_num_monitors() and assign it to a variable with num_monitors =
  • Then, they set the variable for the screen and define how the top bar looks with screens =
  • Finally, They assign the top bar to each screen with if num_monitors > 1

As for why an app isn’t closing? I don’t know. How are you trying to close it? Check your key bindings. It should be using this function lazy.window.kill() Why it’s behind another window? That sounds like it has to do with floating windows maybe? Again just double check your keybindings and your xrandr/arandr config. I’ve had my xrandr screens overlapping in the past and that messed with me for a little bit.

Hope this gives you a place to start

You need to define the bar on each screen where you want it. So with two monitors you should have two “screen” sections, each with its own bar definition.

That is by design. Bind keys to switch focus between first and second monitor. bind lazy.to_screen to do this.

all my dual monitor issues became a thing of the past after i started using autorandr