11 Best Tiling Window Managers for Linux

As the name Linux Window manager suggests, the work of window managers is to coordinate how app windows function and they automatically run in the background of your OS to manage the appearance and placement of running applications.

Read Also: 20 Useful Terminal Emulators for Linux

There are several Window Manager apps that you can use on Linux but just as you would expect, here is an article lists the best 11 for you to choose from.

1. i3

i3 is a free, open source, and completely configurable windows manager app targetted at advanced Linux and BSD users and developers. It features a tree data structure which allows for more flexible layouts than its alternatives and it does not require Haskell or LUA.

i3 is among the most loved manual window tiling manager apps because of its vast features which include settings in plain text, custom keyboard shortcuts, and configuration without the need to restart the underlying system.

i3 - Tiling Window Manager for Linux

i3 – Tiling Window Manager for Linux

The package i3 is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install i3    [On CentOS/RHEL]
$ sudo dnf install i3    [On Fedora]
$ sudo apt install i3    [On Debian/Ubuntu]

2. bspwm

bspwm is a free, lightweight, and open source Linux tiling manager known for adhering to the Linux philosophy by concentrating on doing one thing and getting it done properly.

It is based on binary space partitioning which represents windows as the leaves of a complete binary tree and it handles key binding with a separate utility, sxhkd, which allows for smoother performance and support for other input devices.

bspwm’s features include support for multiple windows, partial support for EWMH, automatic mode for automatically setting the position of app tiles, and it is configured and controlled through messages, among others.

bspwm - Tiling Window Manager for Linux

bspwm – Tiling Window Manager for Linux

The package bspwm is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install bspwm    [On CentOS/RHEL]
$ sudo dnf install bspwm    [On Fedora]
$ sudo apt install bspwm    [On Debian/Ubuntu]

3. herbstluftwm

herbstluftwm is a free and open source configurable manual tiling window manager for x11 using Glib and Xlib. Basically, it works using a layout based on splitting frames into sub-frames which can be further split and filled with windows.

herbstluftwm’s main features include tags (i.e. workspaces or virtual desktops), a configuration script which runs at startup, exactly one tag per monitor, etc. Learn more from our article on herbstluftwm here.

herbstluftwm – Tiling Window Manager for Linux

herbstluftwm – Tiling Window Manager for Linux

The package herbstluftwm is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install herbstluftwm    [On CentOS/RHEL]
$ sudo dnf install herbstluftwm    [On Fedora]
$ sudo apt install herbstluftwm    [On Debian/Ubuntu]

Read Also: 10 Best File and Disk Encryption Tools for Linux

4. awesome

awesome is a free and open source next generation tiling manager for X built to be fast and extensible and it is primarily aimed at developers, power users, and anyone who would like to control their graphical environment.

Its features include well-documented source code and API, real multi-head support with per screen desktops, support for D-Bus, support for Lua extensions, no floating or tiled layers, etc.

awesome - Framework Window Manager for Linux

awesome – Framework Window Manager for Linux

The package awesome is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install awesome    [On CentOS/RHEL]
$ sudo dnf install awesome    [On Fedora]
$ sudo apt install awesome    [On Debian/Ubuntu]

5. Tilix

Tilix is an advanced GTK3 tiling terminal emulator and manager that uses the Gnome Human Interface Guidelines. It enables users to organize app windows horizontally and vertically using drag and drop.

Tilix offers its users a lot of features including working with custom titles and custom hyperlinks, support for transparent background images, notifications in the background, multiple panes, and persistent layouts.

Tilix - GTK3 Tiling Terminal Emulator for Linux

Tilix – GTK3 Tiling Terminal Emulator for Linux

The package Tilix is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install tilix    [On CentOS/RHEL]
$ sudo dnf install tilix    [On Fedora]
$ sudo apt install tilix    [On Debian/Ubuntu]

6. XMonad

XMonad is a free and open source dynamic tiling X11 window manager that exists to automate windows searching and alignment. It is extensible using its very own extension library which gives it options for status bars and window decorations. It is also minimal, stable, and easy to configure.

xmonad - Tiling Window Manager for Linux

xmonad – Tiling Window Manager for Linux

The package xmonad is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install xmonad    [On CentOS/RHEL]
$ sudo dnf install xmonad    [On Fedora]
$ sudo apt install xmonad    [On Debian/Ubuntu]

7. Sway

Sway is a free, open source, and lightweight tiling Wayland i3-compatible window manager that automatically arranges app windows to logically maximize desktop space. It arranges windows into a grid by default and supports almost all the commands included in i3.

Its features include support for keyboard shortcuts, its usage of Wayland instead of Xorg, and gaps. Read more about Sway in our article here.

Sway - Tiling Wayland Window Manager for Linux

Sway – Tiling Wayland Window Manager for Linux

Sway is available to install from the default repository of many distributions, if it’s not available check out this wiki page for installation instructions for your distributions.

8. tmux

tmux is an open source terminal multiplexer that enables users to create multiple terminal sessions that they can access and control from a single screen which makes it perfect for running several command line programs at the same time.

tmux makes use of all the space available to it and it is easily usable thanks to its support for keybindings which you can use to split windows and create more panes. You can also share individual shell instances between distinct sessions to be used for different purposes by different users.

Tmux Manage Multiple Linux Terminals Inside Single Console

Tmux Manage Multiple Linux Terminals Inside Single Console

The package tmux is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install tmux    [On CentOS/RHEL]
$ sudo dnf install tmux    [On Fedora]
$ sudo apt install tmux    [On Debian/Ubuntu]

Read Also: 8 Best Linux Console File Managers

9. spectrwm

spectrwm is a small, dynamic, xmonad and dwm-inspired reparenting and tiling window manager built for X11 to be fast, compact, and concise. It was created with the aim of solving the issues of xmonad and dwm face.

spectrwm uses a plain text configuration file, boasts defaults similar to those in xmonad and dwm, and features built-in keyboard shortcuts. Its other features include customizable colors and border width, drag-to-float, quick launch menu, customizable status bar, dynamic RandR support, etc.

spectrwm - Tiling Window Manager for Linux

spectrwm – Tiling Window Manager for Linux

The package spectrwm is provided by the distribution you are using, just use the package manager to install it as shown.

$ sudo yum install spectrwm    [On CentOS/RHEL]
$ sudo dnf install spectrwm    [On Fedora]
$ sudo apt install spectrwm    [On Debian/Ubuntu]

10. JWM

JWM (Joe’s Window Manager) is an open source C-based lightweight window manager for the X11 Window System optimized to work smoothly on older, less powerful computer systems. It requires only the Xlib library to run but is capable of working with a host of other libraries including libXext for shape extension, Cairo and libRSVG for icons and backgrounds, libjpeg and libpng for JPEG and PNG backgrounds and icons respectively, etc.

JWM - Window Manager for Linux

JWM – Window Manager for Linux

JWM is included in a couple of Linux distros e.g. Damn Small Linux and Puppy Linux and has found most of its use on portable PCs like the Raspberry Pi.

$ sudo yum install jwm    [On CentOS/RHEL]
$ sudo dnf install jwm    [On Fedora]
$ sudo apt install jwm    [On Debian/Ubuntu]

11. Qtile

Qtile is a small but full-featured and completely configurable open source tiling window manager developed in Python. It is designed with a focus on simplicity, extensibility using extensions, and customization.

Qtile features easy to write custom layouts, commands, and widgets. It can also be scripted remotely in order to set up work spaces, update status bar widgets, manipulate windows, etc. It has a comprehensive documentation in case you need clarification along the way.

Qtile - Hackable Tiling Window Manager

Qtile – Hackable Tiling Window Manager

There are more tiling managers in the community that you can choose from but not many of them offer nearly a complete feature list as the apps listed above.

Do you know any commendable apps that are worthy of mention? Or have you had experiences with any that influence your choice of one over the other? Feel free to share your thoughts with us in the comments section below.

Best Affordable Linux and WordPress Services For Your Business
Outsource Your Linux and WordPress Project and Get it Promptly Completed Remotely and Delivered Online.

If You Appreciate What We Do Here On TecMint, You Should Consider:

  1. Stay Connected to: Twitter | Facebook | Google Plus
  2. Subscribe to our email updates: Sign Up Now
  3. Get your own self-hosted blog with a Free Domain at ($3.45/month).
  4. Become a Supporter - Make a contribution via PayPal
  5. Support us by purchasing our premium books in PDF format.
  6. Support us by taking our online Linux courses

We are thankful for your never ending support.

Martins D. Okoi

Martins Divine Okoi is a graduate of Computer Science with a passion for Linux and the Open Source community. He works as a Graphic Designer, Web Developer, and programmer.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

17 Responses

  1. Vlatko says:

    Alas, I have to try tiling wms after this article. Distro hopping, DE hopping, WM hopping… Damn You GNU/Linux.

  2. Mats Rolfson says:

    qtile wasn’t qualified!. Why??

  3. Dave says:

    Tillix, tmux and jwm are not window managers per the title of this article.

    • Martins Okoi says:

      Because they don’t manage the windows of non-terminal apps?

      • shawn chain says:

        tilix is a multiplexing terminal, not a tiling window manager. tmux is a terminal multiplexer, not a tiling window manager either. jwm is a lightweight STACKING window manager. I guess you could call tmux a tiling wm for a console only system (along with gnu screen and dvtm), but that’s really stretching your definition, and the other two certainly don’t qualify.

  4. dragonmouth says:

    Why would I want to use a tiling WM rather than a more traditional stacking WM? From what I can see, they look simplistic and primitive.

    • Martins Okoi says:

      Because tiling can be a cooler way to organize windows

    • nico says:

      The visual appearance is certainly not the main draw. Tiling window managers main goal is the efficient organization of space, both in the sense of actual physical space on your screen, and also in the sense of conceptual space.

      When I talk of conceptual space, I mean the notion of organization of tasks. Tiling wms allow me to easily compare documents side by side, group collections of related tasks. and see exactly all of the information I need at the same time.

      For instance, I use a tiling wm at home, but at work I do not. At work I frequently find myself wanting to shift through a few different instances of file managers, each with a few tabs studying different parts of a file tree, or alternatively 4 or 5 terminal windows, also each tabbed up a few times.

      I find that I spend a lot of my time at work simply shifting through this mess, looking for the specific instance that I wanted, or carefully arranging windows so that I can compare 3 or 4 sources of information at once. At home, on my tiling wm, all of these issues are almost nonexistent. My work computer nearly drives me insane sometimes for this reason.

      Upon observation of other people using stacking wms, I found that most of them try to keep very few things running at once, and often close and reopen files several times in a session. They probably aren’t thinking specifically that they are avoiding my brand of chaos though: It is just a habit for them. Tiling wms got me out of this habit, because they make it unnecessary. Having 8 or 9 terminals going at the same time does not feel any more confusing than having one of them.

      Your complaint is somewhat valid: Tiling wms may well look simplistic and primitive. They are not about style, appearance, user friendliness or intuitiveness. They are about efficiency and functionality ONLY. While many see form vs. function as a sort of balance, often trying to find compromises that improve both together, tiling wms are about what happens when you attempt ONLY to optimize function and disregard form entirely. They are absolutely not for everyone, but some people (myself included) find it very hard to work without them.

      • dragonmouth says:

        “They are about efficiency and functionality ONLY”

        Only if you are used to them and fluent in their usage. For somebody who isn’t (like me), using them is very inefficient. Don’t get me wrong, I am not criticizing anybody for using tiling wms. I just wanted to know what the allure was. Now I know. Different strokes for different folks.

      • Martins Okoi says:

        I concur!

    • Aldrin T says:

      What I actually love about tiling wm is the accessibility of workspaces.

      Most of the windows occupy the whole screen and do not if you open more than one window in a single workspace, but they do not overlap by default. So you can have a whole workspace just for your web-browser, a workspace for multiple virtual terminals that do not stack on each other, a workspace for an email client and some other workspace that do not do tiling and behaves like a traditional one.

      I have no idea what’s the use of overlapping windows though but if there’s an advantage in using an overlapping windows then tiling wm can do it too.

      The desktop is also much cleaner without icons and shortcuts scattered around. Even if you manage to keep it clean it’ll eventually become a mess.

Got something to say? Join the discussion.

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.