The Linux desktop ecosystem offers multiple window managers (WMs). Some are developed as part of a desktop environment. Others are meant to be used as standalone application. This is the case of tiling WMs, which offer a more lightweight, customized environment. This article presents five such tiling WMs for you to try out.
i3
i3 is one of the most popular tiling window managers. Like most other such WMs, i3 focuses on low resource consumption and customizability by the user.
You can refer to this previous article in the Magazine to get started with i3 installation details and how to configure it.
sway
sway is a tiling Wayland compositor. It has the advantage of compatibility with an existing i3 configuration, so you can use it to replace i3 and use Wayland as the display protocol.
You can use dnf to install sway from Fedora repository:
$ sudo dnf install sway
If you want to migrate from i3 to sway, there’s a small migration guide available.
Qtile
Qtile is another tiling manager that also happens to be written in Python. By default, you configure Qtile in a Python script located under ~/.config/qtile/config.py. When this script is not available, Qtile uses a default configuration.
One of the benefits of Qtile being in Python is you can write scripts to control the WM. For example, the following script prints the screen details:
> from libqtile.command import Client > c = Client() > print(c.screen.info) {'index': 0, 'width': 1920, 'height': 1006, 'x': 0, 'y': 0}
To install Qlite on Fedora, use the following command:
$ sudo dnf install qtile
dwm
The dwm window manager focuses more on being lightweight. One goal of the project is to keep dwm minimal and small. For example, the entire code base never exceeded 2000 lines of code. On the other hand, dwm isn’t as easy to customize and configure. Indeed, the only way to change dwm default configuration is to edit the source code and recompile the application.
If you want to try the default configuration, you can install dwm in Fedora using dnf:
$ sudo dnf install dwm
For those who wand to change their dwm configuration, the dwm-user package is available in Fedora. This package automatically recompiles dwm using the configuration stored in the user home directory at ~/.dwm/config.h.
awesome
awesome originally started as a fork of dwm, to provide configuration of the WM using an external configuration file. The configuration is done via Lua scripts, which allow you to write scripts to automate tasks or create widgets.
You can check out awesome on Fedora by installing it like this:
$ sudo dnf install awesome
Mark McIntyre
you have
for Qtile. it should be
.
Clément Verna
Thanks updated
Emiliano
Great article, thanks! (current awesome user :-P). I’ll try Sway, thanks!
Hendrik
Note sway will soon release 1.0 version (https://github.com/swaywm/sway/issues/1735) backing up its own Wayland compositor library.
If you are a Awesome user you might want to check out Way Cooler which is a Wayland compositor implementing the Awesome api.
John
Great article, but some screenshots would be nice, I think.
freegoat
Why didn’t gTile get mentioned?
Dann Griggs
i3 looks interesting, but I can reliably break it on my Fedora 28 install. Just install the basic i3 packages, log out of Gnome, and try it. Works fine, neat. Now exit i3 and do: ‘cp /etc/i3/config ~/.i3/config’. Try to start i3 again, it hangs during start up, no keystrokes work, and you have to switch to a VT to kill it. This makes customizing/configuring i3 a problem. Basically, if ~/.i3/config exists, you can’t start i3.
Anyone else run into this?
Marian Šámal
Not sure, but I think the path should he ~/.config/i3/config
Jens Petersen
There is also good ol’ xmonad, which is still well alive and kicking 🙂
waymonad is also under development.
Sharlatan
How about StumpWM (CommonLisp base) so any configuration could load withing current session without lo-gout.
svsv sarma
In the beginning, while learning, I used to tinker with WMs. But now I prefer the default GNOME and trust it to be memory friendly. So, forget about WMs and get on with the work.
Nick
Pro-tip:
i3wm works very well when combined with the XFCE desktop environment.
Due to the modularity of XFCE you can easily replace the default window manager with i3 while retaining all the other niceties of a DE.
Bill O
how about Xmonad?
Bill O
I’ve tried a few times, moving from xmonad to i3, but never successfully.
dg
I didn’t like i3 that much. I would love some detailed qtile and sway tutorial. Which is the most modern tiling manager?