A window manager is software that manages the windows that applications bring up. For example, when you start an application, there will be a window manager running in the background, responsible for the placement and appearance of windows.
It is important not to confuse a window manager with a desktop environment. A desktop environment typically consists of icons, windows, toolbars, folders, wallpapers, and desktop widgets. They provide a collection of libraries and applications made to operate cohesively together. A desktop environment contains its own window manager.
There are a few different types of window managers. This article focuses on dynamic window managers. A dynamic window manager is a tiling window manager where windows are tiled based on preset layouts between which the user can switch. Layouts typically have a main area and a secondary area. The main area usually shows one window, but one can also change the number of windows in this area. Its purpose is to reserve more space for the more important window(s). The secondary area shows the other windows.
Here’s our recommended free dynamic window managers. All of them are free and open source software.
|Dynamic Window Managers|
|Xmonad||Minimalist, tiling window manager written in Haskell|
|dwm||Manages windows in tiled, monocle and floating layouts|
|Awesome||Highly configurable, tiling window manager initially based on dwm code|
|Qtile||Full-featured, hackable tiling window manager|
|spectrwm||Small dynamic tiling and reparenting window manager|
|wmii||Lightweight tabbed and tiled|
Click the button to make a donation via flattr. Donations help us to maintain and improve the site. You can also donate via PayPal.
Read our complete collection of recommended free and open source software. The collection covers all categories of software.
The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.