The return of the tiling window manager

What's Old Is News Again

© Photo by Roman Kraft on Unsplash

© Photo by Roman Kraft on Unsplash

Article from Issue 259/2022
Author(s):

Tiling desktops have been experiencing a resurgence in popularity. Here are a few options that can help keep your desktop better organized.

Tiling desktops are graphical environments in which windows open in a grid. They appeared early in Linux's history and have always had a few followers, especially among developers. For much of the past two decades, though, tiling desktops were ignored in the efforts to mimic Windows and macOS and to improve usability. However, in recent years, tiling desktops have become more popular, most likely because modern computing power means that more users are working with more windows open. Today, users can choose from a variety of tiling desktops. Some have been around for years, and others are more recent.

The idea behind tiling desktops is to reduce clutter on the desktop and make windows easier to find. By contrast, the standard or stacking desktop becomes less orderly with each open window. Most stacking desktops open windows in the upper left corner or some other default location. As users search through windows, the unwanted ones tend to be dragged aside, destroying what little order existed. In fact, the clutter is so great that many stacking desktops have a Show Desktop icon or widget. Others, such as Ubuntu's discarded Unity desktop, encourage users to open only one window at a time. Tiling desktops, on the other hand, arrange windows in a grid, making them easy to find. Should the windows become too numerous and too small for comfortable browsing, users can use virtual workspaces to add another grid. You can remove windows from the grid to increase their size and temporarily stack them on top of the grid. Another advantage of tiling desktops is that they can be easily navigated from the keyboard, although many also support a mouse.

You can get a feel for tiling desktops from terminal multiplexers such as GNU Screen, tmux, or Tilix (Figure 1), which turn a terminal into a tiling environment with multiple prompts. When you are ready to try an actual tiling desktop, here are some of the most popular choices. Many of these options can be installed as desktop environments in distributions, and a couple are also distributions in their own right.

Figure 1: Terminal multiplexers such as Tilix are similar to tiling desktops.

ratpoison

Inspired by the terminal multiplexer GNU Screen, ratpoison [1] (Figure 2) is one of the earliest tiling desktops, and it still has a following today. Ratpoison is written in the C programming language (although some users may prefer StumpWM, which offers similar features and is written in Common Lisp). The name is a playful reference to the fact that ratpoison does not require a mouse, relying instead on keyboard commands that closely follow those of the once popular Emacs text editor. Moreover, although it can launch graphical applications, they are run from the command line. By default, ratpoison uses a single workspace, but it usually installs with a script called rpws to enable additional ones. If you value speed and configurability and have the patience to learn, you will find ratpoison ideal. If you value user-friendliness above all else, you should look at another tiling desktop instead.

Figure 2: One of the earliest tiling desktops, ratpoison is also one of the most minimalist.

awesome

Forked from the older window manager dwm, awesome (Figure 3) quickly went on to eclipse its original inspiration. Like many tiling window managers, awesome is designed for power users and those who enjoy tinkering. Written in C and Lua, awesome has all the expected features of tiling desktops, while enjoying a reputation for speed and configurability. In fact, an online search reveals page upon page dedicated to scripting for awesome, including the awesome project website [2] and Debian's awesome-dedicated wiki [3]. These websites should make customizing awesome much easier.

Figure 3: Awesome is known for its speed and configurability.

XMonad

Although written in Haskell, XMonad [4] (Figure 4) has much in common with awesome. Both were forked from dwm at roughly the same time and are highly configurable, with plenty of scripts available online that users can easily modify. However, XMonad is aimed at more general users, with clear documentation that includes an FAQ and a step-by-step guide to basic navigation. Just as important, XMonad offers many features such as separate layouts for workspaces, separate status bars for screens, and on-the-fly updating of the display when configuration files are updated. Many features introduced by XMonad later have been copied by other tiling managers.

Figure 4: XMonad is known for its innovative approach to tiling as well as for its documentation.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News