No matter how many screens you use with your computer, you will never be able to install all application windows on your desktop. Unless, of course, you have the right tool.
A window manager is a perfect tool that meets this requirement very well and allows you to fully exploit the potential of your computer screen / external display.
But what exactly is it, what can it do, and what are the best window managers you can use in Linux? Here is a guide with answers to all these questions.
What is a window manager?
Just like any other Unix-like operating system, Linux also uses the X Window System (or X11) as the default window system to generate the essential GUI elements required by various GUI-based applications to function.
However, other than that, the X11 system doesn’t have much to offer. Therefore, you cannot use it to manage and organize application windows on your desktop according to your preferences.
This is where a window manager comes in. It allows you to manage the way application windows appear and behave on your computer screen or on an external monitor. This way, you can control their location, and therefore their appearance, so that you can make the most of your screen’s screen space and improve your multitasking experience.
The best window managers for Linux
Below is a list of the best window managers for Linux, both floating and tiled, which you can use to make the most of your screen space.
Xmonad is a free and open source dynamic tile window manager for Linux. It is written in Haskell and comes with a configuration file that helps you customize its behavior to your preferences.
Since it is written in Haskell, it can be quite difficult to understand and configure the xmonad configuration file right away, especially if you have no previous experience with Haskell. However, for those with a good grasp of the language, the scope of customization and usability goes far beyond what you can get with most window managers.
One of the biggest advantages of xmonad is that it automates window layouts for you, so you can better focus on getting your job done. When it comes to its feature set, the program offers an extensive library of extensions, Xinerama support (for multi-monitor setups), and on-the-fly reconfiguration, among others.
To install xmonad on Debian / Ubuntu, run:
sudo apt install xmonad
On Arch Linux:
sudo pacman -S xmonad
On Fedora / CentOS and other RHEL-based systems:
sudo dnf install xmonad
Awesome started out as a fork of DWM (Dynamic Window Manager), but then grew into a full-fledged Linux window manager. One of the goals of the program has been to offer a quick and easy window management solution without compromising on advanced functionality. And for the most part, he’s managed to live up to that.
It is written in Lua, which is a powerful programming language with a wide scope for customization. If you are a power user who wants full control over the GUI and window management, Awesome can provide just about anything you want, with a well-documented API to help you along the way.
One of the things that stands out from some of the other window managers is that instead of using the Xlib library which is known to induce latency, it uses the asynchronous XCM library which ensures that your actions are not subjected to so much. latency.
To install Awesome on Debian / Ubuntu:
sudo apt install awesome
On Arch Linux:
sudo pacman -S awesome
On Fedora / CentOS / RHEL:
sudo dnf install awesome
DWM or Dynamic Window Manager is one of the older Linux window managers on this list. It is a dynamic window mosaic manager that inspired the development of popular window managers like xmonad and awesome mainly because of its minimal and simplistic features that work well.
However, due to this lightweight approach, DWM faces some shortcomings. One of them is the lack of a config file, which makes it difficult to customize program elements, as you now have to modify its source code and build it every time you want to make a change.
It is for this reason that DWM is generally a preferred window manager for those who need a simple window manager that just does a job – window management – as opposed to something that is full of elements and additional features, which could add complexity to the experience.
To install DWM on Debian and Ubuntu, use:
sudo apt install dwm
On Arch Linux:
sudo pacman -S dwm
Installing DWM on Fedora / CentOS and RHEL systems is simple:
sudo dnf install dwm
IceWM is a stacking window manager written in C ++. It focuses entirely on providing a fast and smooth window management experience, which makes it perfect for underpowered Linux machines. However, despite its light weight, the program doesn’t compromise on essential usability and customization.
It uses a plain text file, which is much easier to edit and makes it easier to customize. Not only that, it also offers documented guides to help you modify the configuration file. Additionally, there are random (read “useful”) tooltips here and there to familiarize you with GUI elements and their functionality.
A nice addition to the GUI in IceWM is the integrated taskbar at the bottom which further simplifies the management and organization of application windows and workspaces on the desktop. Likewise, it also supports RandR and Xinerama, which is a good idea to help you with multi-monitor setups.
To install IceWM on Debian / Ubuntu:
sudo apt install icewm
On Arch Linux:
sudo pacman -S icewm
On Fedora / CentOS / RHEL:
sudo dnf install icewm
The i3 window manager is a manual window tiler that supports many settings for organizing windows. It’s written in C, and just like IceWM, it also provides the configuration functionality through a plain text file, making it easy to change its elements to your style.
Basically, i3 aims to be fast and minimal while appealing to advanced users. As such, you get essential features like manual window placement, themes, multiple focus modes, as well as advanced options like a taskbar, configurable keyboard shortcuts, and the ability to create custom scripts for further customization.
Overall, i3’s approach is great for all kinds of users because it gives you control over how you want to use the program on your system. You can either use it as is or modify it completely to suit your needs. And that also makes it suitable for low power computers.
On Debian / Ubuntu:
sudo apt install i3
To install i3 on Arch Linux:
sudo pacman -S i3
On Fedora / CentOS / RHEL systems:
sudo dnf install i3
Effectively manage Windows applications on Linux
If you’re someone who has to go back and forth between a bunch of apps on your computer (and screens), you can use any of the window managers above to make the most of the space. off your screen and multitask efficiently.
If you are new to Linux, we recommend that you check out the i3 window manager. It’s fast, minimal, and offers just about all the essential features you’ll need to keep your app windows organized and maximize your productivity.
Want to save screen space while improving your productivity in Linux? Upgrade to a tiled window manager like i3 today.
About the Author