A Window Manager (WM) is the system software that controls the appearence, placement and behavior of the windows in a Graphical User Interface (GUI). A WM is always bundled into a desktop environment (DEs), like GNOME, KDE, Xfce and MATE. Window managers can however also be used on their own, as seen in many of the posts on reddit.com/r/unixporn.
Types of window manager
There are different types of window managers that handle windows differently. Amongst the most common types are the following:
- Stacking window managers, also called floating window managers are the most common type of window managers. They allow the windows to stack/float on top of each other. It is the default behaviour of windows in many desktop environments like KDE, GNOME, and M$ Windows.
- Tiling window managers arrange windows in a grid layout that usually takes up most of the screen. Upon spawning a new window they rearrange all windows to fit the new window into the grid. This means that all open windows are vissible at the same time and no space is wasted. Tiling WMs are often controlled by keyboard shortcuts for efficiency. Notable tiling WMs are i3, bspwm and Herbstluftwm.
- Dynamic window managers are window managers that encorporate several layout types. They have the ability to switch between stacking/floating, tiling, or other forms of window behaviour. A lot of window managers these days have the ability to switch between the layout types or have quasi stacking/quasi floating capabilities. Notable dynamic WMs are Awesome and dwm.
Window managers provided by Void Linux
The following is a list of window managers that can be installed through xbps. The list is sorted so that the main functionality of the window manager is highlighted. For instance, bspwm and i3 are both capable of drawing floating windows but have their main focus on tiling and as such are listed under Tiling.
Stacking / Floating
- 2bwm, a fast floating window manager.
- Marco, a window manager for MATE.
- Mutter, a lightweight GTK+3 window manager. The default window manager of GNOME 3.
- Muffin, the Cinnamon window manager
- xfwm, a next generation window manager for the Xfce desktop environment.
- Openbox, a standard compliant, fast, lightweight, extensible window manager.
- mcwm, a "a traditional floating window manager with a lot of features but without the bloat".
- jwm, a light-weight stacking window manager written in C using Xlib at a minimum.
- bspwm, tiling window manager based on binary space partitioning.
- i3, Improved tiling manager.
- sway, i3 compatible window manager for Wayland.
- Herbstluftwm, a manual tiling window manager for X.
- ratpoison, a window manager without mouse dependency.