I've been using Qtile on-and-off again for probably a decade or longer. Qtile is a full-featured, hackable tiling window manager written and configured in Python. It was originally written for X11 but it does have a Wayland session. Let's try it out!
Your support is very much appreciated. Thanks, guys!
In the last two or three years, I would
say one of the most common questions I
get is, "Hey DT, when are you going to
switch to Whan? Man, you need to switch
to Whan DT because X11 is old and
deprecated and only old fuddy duddies
still run X11. All the cool kids are on
Whan yada yada yada. When are you going
to move to Whan?" Right. Well,
[laughter] I and my answer has always
been for the last 16 years because
that's how long Wayland has been under
development for 16 years and it's still
not ready, but I will switch when it's
ready and when it's available on the
desktop environments and window managers
that I actually want to run. I'm not a
Gnome user. I know Wayland is fantastic
on Gnome. I'm not going to run Gnome. I
know Whan kind of works on a couple of
window managers like Hyperland and Sway.
Uh Sway is basically a i3 clone and i3
is one of my least favorite window
managers as far as tiling window
managers. I just don't like it.
Hyperlands okay, but it's not my kind of
window manager. I want to use a dynamic
tiling window manager that handles
multimonitors the way Xmonad does or
Qile does. And I've been primarily using
those window managers for a number of
years now. And I've been using Qile on
X11 and Qile for the last few years has
been working on Whan support and they
have a Whan login session. It's kind of
experimental. It's kind of in beta
format. So I mean you may or may not get
on Wayan to work on your machine. I had
to jump through some hoops, but I've
been playing around with it for the last
couple of days. I've spent a few hours
playing with on Whan. Now, I've always
wanted to play around with QAL on
Wayland, but the problem was I never
could get it to work. Every time I tried
to log into the Whan session for QTL,
I'd just get a black screen, it would
freeze, and it would freeze hard. You
couldn't even drop to a TTY. You would
have to hard reboot the computer. And
yeah, I I couldn't figure out what the
problem was. And a couple of days ago, I
was like, well, I'm going to investigate
the situation. I'm going to really try
to get a Whan session running with QL.
And the problem was my config and it's
probably going to be the problem with
your config as well. So let me go to my
config.py for QTL. This is Qile's config
file. And what I ended up doing is I
ended up starting with a brand new like
default configuration. And I was able to
log into a plain default QL desktop
using Wayland. if I just deleted my
config and used the default config that
gets shipped, which is a very plain
vanilla kind of config. So then I
started adding all of my config arts
back to the default config slowly, you
know, in small little chunks to see if I
could spot whatever is the problem with
my config. And honestly, it was pretty
obvious when I got to it because it was
like the last thing in my config that's
the problem. The last thing in my config
was I have this block here where I have
this startup hook here where we auto
start an auto start file. So uh your
startup programs like I want for example
the wallpaper drawn. I want Cocky to
launch. I want next cloud to la you know
I've got some things that I want to auto
start every time I log in to Qile. And
the problem with this, let me do a split
here, is my auto start file that I was
using and this is what I was using on
the exorg session for Qile and some of
this stuff that it was trying to launch
just does not work on Whan. So when Qile
was launching and it was running the
startup hook, you know, it's the first
thing it runs is all the startup stuff,
you know, some of this was just not
going to run. For example, pycom the
compositor that I was using for exorg
obviously doesn't need to run in whin
because the compositor on whin it's it's
using wl roots. So I know that was a
problem. Also drawing my wallpaper using
the waypaper program was a problem cuz
wayaper on x11 I set it to use fe to set
the wallpaper. Fe is for x11 right. For
[snorts] whining sessions I need
waypaper to use a different backend. I
installed swaybg
uh for waypaper to use as the the
backend to draw the wallpaper on way. I
got rid of better lock screen. I made
all of this quite a bit different for
for my auto start file on Wayland. Uh
and then I added a couple of interesting
things that I needed. I needed this
particular program Kenchi and this is
because I use multimonitors. There's a
couple of programs I needed to install.
Uh let me switch to a different screen
and and let me clear the screen and zoom
in. So some of the things you need to
install here on Arch Linux. So I
installed the following packages. So
initially I needed to do a Pac-Man and I
went ahead and installed python-pand
python-pwl
roots and then exorg-xan
was also not on my system and I wanted
to make sure xland was there just in
case I needed it for some app support.
So I installed those programs there and
I'm just going to go ahead and cancel
installing all of that. And then the
next thing I installed, we needed to do
a Pac-Man- capital S. Uh if you need a
wallpaper program, install waypaper.
It's a really cool program. You need a
backend to it, right? So you need
something that uh actually sets the
wallpaper, some back-end program. Use
Swaybg, for example. When you have that
installed, you can use Waypaper to
actually set your wallpaper. So it's
just a standard wallpaper program. You
just pick a wallpaper. For example, I
picked that one and it just changed my
wallpaper there. So pretty neat little
program there. And you have your engines
down here. Swaybg is the backend that
I'm using for the Whan session. If I
move over to the X11 session of Qile, I
have FE installed and I need to actually
manually switch that inside Waypaper if
I'm going to use the uh X11 session for
QTL and have Waypaper set the background
for me. Now, one of the most annoying
things that I ran into was setting my
monitors because I have three monitors.
The monitors were out of order, right?
I've got monitor one, two, three, but
they were all out of order like it's so
I had to rearrange them on X11. Of
course, you would do this with XR
renderer or you would use a guey front
end to the XR renderer program. You
would use a reander, right? And I needed
something like that for Whan and Whan
does have a program for this. I found
this particular program called Wis. If I
type W view displays here, it's a very
similar program to something like a
renderer. It lists my three monitors and
I can rearrange them in the order that
they should be in. And you know, just
click uh there'll be a button up here
that says activate or you know, set it
or whatever. You click the button and
it's done. And all your monitors are in
the right order. But there's a problem
with W displays. It doesn't do the same
thing that Arander did. A renderer wrote
a little bash script giving you the
command, the X renderer command to put
those monitors in the right order. And
because it wrote that command to a
config file, you could use that config
file in your window manager auto start
file, for example. So every time you log
in, it automatically arranges your
monitors in the right order. W displays
does not do that. You would have to
manually go into the guey program and
change it every time you log in.
Naturally, that's not what I wanted to
do. But there is this program here
called Kenchi. It's a a command line
program that basically reads a config
file. There's a config file on my
system. If I actually open this with
Vim. Let's open config
config. This here, right, this is what I
needed. And you can make WD displays
actually write to this Kchi file if in
conjunction with Kchi you install a
different version of WD displays. Do not
install for example you would normally
think you would do a Pac-Man-SW displays
is the normal program. Well there is
this program here W displays persistent.
So I think this may have been in the
AUR. install that along with this Kenchi
command line program. And now when you
use WD displays to arrange your
monitors, it'll give you that config
file and Kenchi automatically just every
time you log in, you know, will set your
monitors right. As long as you have Kchi
in your auto start file. So if I go back
to Emacs and go back to my auto start
file, um let's see
there is the config.py. We'll open a
split. Let's go to the auto start for
Whan. And that's why in my auto start
programs, the very first thing I launch
is Kani to put the monitors in the right
order. And then I launch Emacs, the
Emacs server, the Emacs Damon. I have
Waypaper draw the uh wallpaper for me. I
also have Cony running, but Cony I I
need to adjust this. It doesn't work
quite right on the way session because
the Cony windows always stay above the
actual windows. Uh, so I've got to
config it a little differently for Coni
to work properly in Whan, but that is a
very minor gripe. A couple of other
packages I needed to install because it
was going to cause me some problems. OBS
wouldn't record my desktop uh for
whatever reason. And I think part of
that was just because I didn't have a
XDG desktop portal package. So I needed
a portal WLR, which is the WL roots,
which is the compositor that QL is based
off of. But even installing that, OBS
still did not offer me any way to
actually do a screen capture. And I
found this program inside the AUR. So
you wouldn't be able to do this with
Pac-Man. You use something like Paru for
example. And I installed this package
WLR for WL roots. OBS-HG.
This package here basically is a plugin
for OBS. Uh you don't have to do
anything. It it sets itself up. You just
install that. And now it every time I
open OBS, I now have an option to
actually uh do a screen capture to
record my desktop. Without this package,
I was not able to actually get OBS uh
working properly for me here inside Qile
on Whan. So that is it. I had to install
several different new programs obviously
to get Whan working. I had to make sure
that whatever auto start file that I was
running for QL made sure I have to make
sure that that auto start file is not
trying to run anything that's a X11 only
kind of program because that was uh just
locking things up to the point you would
have to do a hard reboot. Once I got all
that straight uh pretty much the rest of
my config stayed the same. I didn't have
to really do anything. Now are there any
problems with QL on Whan? Well, yeah.
It's not all sunshine and rainbows. So,
uh, I haven't lived in it too long and
I'm not really going to live in it cuz
right now, um, there's a couple of, uh,
things that I I just I I can't stand.
Some of the programs just don't work.
Some of the programs I use on a daily
basis, uh, one of the most obvious ones
because I'm a trader. You know, I trade
the the markets every day, I run a
second YouTube channel where, you know,
I talk about options trading and teach
people a little bit about how to trade
options. And you know, my broker here,
my uh trading platform is Tasty Trade.
It's going to take a second to load up.
It's a Java app, but one of the problems
with it is it's basically unusable
because anything that is a menu doesn't
actually work. Like this menu here, I
click on it. Where' the menu go? This
menu here, it's a drop down. You can
kind of see it appear for just a split
second. You may not even see that on the
video because it just the frame rate,
but uh you know, none of the menus in it
work. makes it practically unusable. And
of course, I could never deal with this.
And this is a program I use, you know,
every day, you know, Monday through
Friday when the stock market is open.
And I can't have this not working
because it could be dangerous, right?
[laughter] I need to be able to get in
and out of uh some of the trades that
I'm doing. So, that is a deal breaker
for me. And then I just tried to close
the uh window. And where did that popup
go? Right. The pop-ups sometimes are
appearing behind the window. And that's
for various programs. You can actually
see this with my file manager. Let's go
to a guey file manager like PC man. I'm
going to go down here to this test file
and I'm just going to hit the delete key
on my keyboard and it gives me a
confirmation. Do you really want to move
that test file to the trash can? Yes or
no. I'm going to choose no. Uh so that
works there when it's full screen. But
when I do it in floating mode, get the
window in floating. And now hit the
delete key. Where is the pop-up window
that's saying, hey, yes or no? Well,
it's behind the window, right? And that
is extremely annoying. This happens in a
lot of programs. These popups, I've got
a lot of popups that don't work right in
OBS. Like, if I need to change settings
in OBS, I'll, you know, click the little
settings cog wheel. But the window,
where's the window? Well, it's behind
the main window. Like, I've got to drag
windows around to finally find the
little dialogue boxes. And that's a deal
breaker. I mean, that's annoying enough.
That would bother me. But the fact that
uh that my trading platform just doesn't
work at all. And I use that practically
every day would prevent me from using uh
Qile on Wayland as a daily driver just
yet. Now, other than that, the actual
window manager itself, you know, the
tiling and the layouts and the widgets
and everything, all of that seems to
work. Uh, you know, I pull up my web
browser, everything in the web browser,
of course, you know, web- based, you
know, all that's fine. Uh, for the most
part, I would say, you know, it's like
95% of the way there. So, does QTL on
Whan works? Yeah, it kind of works.
Like, it's it's getting close. And, you
know, probably I would think, you know,
a year, maybe two years out, it'll be to
the point where maybe I could move over
to it and live in it full-time. You
know, I wouldn't do it right now because
it just doesn't make any sense because
I'm not gaining anything. If anything,
I'm giving up a lot, right? because I'm
basically I would be adding all of these
headaches to my life. You know, programs
not quite working right. And for what
advantage? No real advantage. And I say
no real advantage because uh for me X11
and Wayland don't do too much. I don't
have any kind of exotic, you know, like
monitor setups that, you know, maybe
Whan would provide an advantage for me.
Like you got different refresh rates and
different screen orientations and
resolutions on various multimonitors.
all of my multimonitor setups, I'm using
the same monitor for all three monitors.
They're the same refresh rates and the
same resolutions and all of that. So,
X11 Whan, you know, it doesn't offer me
any real advantages, but it would offer
me a hell of a lot of headaches, right?
A lot of heartache and pain moving to
Whan right now, but I am pretty excited.
I was actually pretty happy spending the
last couple of days trying to get this
to work and I will keep playing around
in it. One of the things with having a a
Whan session in Qile, I can log in
between the two. I can log out of the
Wayland session and log into the X11
session and vice versa. Matter of fact,
right now I'm using two different
configs, one for X11 and one for Whan, I
can actually write my Q-tile config in
such a way that, you know, through some
if statements and things that hey, if
the display server is X11, do this. If
it's Whan, do that. So uh you could have
one config that handles both the X11 and
the Whan sessions if you write it in
such a way. One final thing I need to
mention is uh I don't have a cy tray
obviously here in the Qile session
either. One of the things with X11 I
have a cy tray widget and I do have
Nexcloud the desktop client for Nexcloud
open all the time. And I've got a couple
of other things like Flameshot and
things like that that are not as
important, but I use NexCloud all the
time. And I really have grown used to
having that NexCloud cyst tray widget
there. And now not having a cy tray.
Like I don't even know if the next cloud
desktop client is running on my system
or not. Let me open up a terminal here.
So let me I'm just going to run a kill
all nextcloud just to see if it's
running. No process was found. So, it's
not even running right now cuz it can't
run because it's a cyr outlet and that's
a problem cuz it syncs files between
various machines of mine. So, that's
another issue I'd have to deal with. But
that's it for this video. Before I go, I
need to thank a few special people. I
need to thank the producers of this
episode. Matt, Steve, George, Dar, Lee,
Mark, Methos, Urion, Peace, Arch of
Door, Roland, Morento, and Abuntu, and
Willie. These guys, they're the
producers of this episode. They're my
highest tiered patrons over on Patreon.
Without these guys, this episode about
getting Coutile to run on Whan wouldn't
have been possible. The show is also
brought to you by each and every one of
these fine ladies and gentlemen. All
these names you're seeing on the screen
right now. These are all my supporters
over on Patreon because I don't have any
corporate sponsors. I'm sponsored by you
guys, the community. If you like my work
and want to see more videos about Linux
and free and open source software like,
subscribe to Dro Tube over on Patreon.
Peace, guys.