Switch to a Lighter Window Manager

Switch to a Lighter Window Manager

GNOME and KDE are great, but they are a little heavy. If you're on an older system, or you just want a change of pace, you can use other window managers under Ubuntu, such as Fluxbox, XFCE, and Enlightenment.

If there's one thing that's great about Linux, it's choice. If you don't like a particular program, there's a pretty good chance that Linux has at least one alternative. This even applies to your entire desktop environment. The desktop environment comprises a lot of different programs, such as a window manager (which handles drawing borders around your windows, moving them, and so forth), panels so you can launch programs, background-management programs, and more. The most popular of these desktop environments are GNOME and KDE. Ubuntu defaults to GNOME [Hack #15] as its desktop environment but also offers a Kubuntu alternative [Hack #16] that automatically defaults to KDE instead.

If you don't particularly like GNOME or KDE, you still have other options. Linux has a large number of window managers that you can use instead of a full desktop environment such as GNOME or KDE, and all of the popular ones are available for Ubuntu. There are a number of reasons why you might want to give some of these window managers a try:

  • Both GNOME and KDE need a fair amount of resources to run. Most of the alternative window managers require substantially fewer resources, so they might be attractive if you are using an older computer or if you just just want better performance out of your desktop.

  • Alternative window managers often offer a totally different set of features and, in some cases, a different way to look at how to manage your windows. Some of these features include the ability to group windows into a single tabbed window (Fluxbox) or set up lots of fancy eye candy and control your windows' placement to a fine degree (Enlightenment).

If you want to stick with KDE or GNOME, there are some simple things you can do to lighten their resource usage. In KDE, run the program kpersonalizer (it's in the package of the same name) to reduce KDE's level of eye candy. In GNOME, use the Configuration Editor [Hack #15] to set /apps/metacity/general/reduced_resources to true.

Even if you don't have a particular reason to try a different window manager, it doesn't hurt to install a few and see how they approach window management. You can easily switch back to your preferred desktop environment if you don't like them.

In this hack, we describe a few other window managers and how to install and use them in Ubuntu. There are hundreds of window managers we could cover, but here we will talk about three of the more popular alternatives to GNOME and KDE: XFCE, Fluxbox, and Enlightenment.

Generate Program Menus

The first step before you install a new window manager is to install and update a program to manage application menus so that you can launch applications without the GNOME or KDE launchers. Use your preferred package installation tool and install the package called menu. Once the program is installed, open a terminal and update the current list of programs for this menu:

$ sudo update-menus

Change to Your New Window Manager

We will discuss how to install and use each of the different window managers, but since you will use the same method to change to each of them, we'll describe that first. Each of these window managers is integrated with the desktop manager Ubuntu uses (GDM by default, KDM for Kubuntu) and will add itself to the list of available sessions when you install it.

After you install a particular window manager, log out of your current desktop environment to get to the main login screen. Click on the Sessions button to see a list of available desktop environments and window managers, and select the window manager you'd like to try. After you log in, you will be presented with the option to accept this window manager permanently or to accept it just for this session. If you want to switch back, log out and then select your previous window manager from the list (GNOME under Ubuntu, KDE under Kubuntu).


If you are interested in other window managers or desktop environments, probably one of the first desktop environments to try is XFCE. XFCE (http://www.xfce.org) aims to be lightweight, so you will get many of the familiar features of a full desktop environmentsuch as a panel, desktop icons, and a taskbarbut with improved performance.

To install XFCE, use your preferred package-installation program to install the xfce4 package. The desktop environment and many accompanying tools will be installed. XFCE has a number of other nonessential plug-ins and programs that you can install as well. Just use your package manager's search tool with the keyword xfce to show them all.

Once XFCE is installed, log out, choose the XFCE session, log in, and you will be presented with the default XFCE desktop (see Figure).

The default Ubuntu XFCE desktop

XFCE is organized into a panel at the bottom where you can launch common tools such as a terminal, XFCE's file manager xffm, a web browser, and other applications. To launch applications that aren't in the panel, right-click on the desktop to open the main menu. You can change a launcher's settings by right-clicking on it in the panel. You can also right-click on other parts of the panel to add new items, such as launchers, pagers, and other programs.

Along the top of the desktop is the taskbar, where you can see and switch between all open applications on the current desktop. Right-click on one of the applications in the taskbar to get extra options, such as the ability to maximize, close, and hide the program.

XFCE provides a graphical configuration tool you can access by clicking on the wrench icon in the panel. This program lets you configure anything from the desktop background to keybindings, screensaver settings, and the taskbar. Click the User Interface icon to open the theme manager, where you can configure the look and feel of XFCE.

To log out of XFCE, click the power icon on the panel, or right-click on the desktop and choose Quit. For more information about XFCE, visit the official page at http://www.xfce.org.

Use Fluxbox

Fluxbox (http://www.fluxbox.org) is an alternative window manager that is popular for its speed and ability to group windows into tabs. While it is relatively lightweight, Fluxbox offers a number of features, including the ability to remember window placement, configurable panels, and add-ons that let you have icons on your desktop (fbdesk) and a pager (fbpager).

To install Fluxbox, select the fluxbox package in your preferred package management tool. After it is installed, log out of your current desktop environment, select the Fluxbox session, and log back in to see the default Fluxbox desktop, shown in Figure.

Default Ubuntu Fluxbox desktop

By default, the Fluxbox desktop is pretty bare; there is only a small panel along the bottom of the screen. This panel contains a taskbar to display all applications open on the current desktop and can switch to new desktops. Right-click on the panel to change panel-specific options.

Instead of an application menu in the panel, Fluxbox displays the menu whenever you right-click on the desktop. In addition to the standard application categories, such as Apps and Games, the main menu has a Configuration submenu where you can configure Fluxbox settingsincluding how it focuses windows and toolbar settings, as shown in Figure. There is also a Styles menu that lets you change the theme.

Fluxbox Configuration submenu

As mentioned previously, Fluxbox allows you to group windows together with tabs. Middle-click on the titlebar of a window and then drag and drop it onto another window. Fluxbox will automatically tab the windows together so that you can click on one of the tabs on the titlebar to select a window. To remove a tab, middle-click on it in the titlebar and drag and drop it onto the desktop.

To exit Fluxbox, right-click on the desktop and select Exit. For more information on Fluxbox, visit the main project page at http://www.fluxbox.org.

Seek Enlightenment

Enlightenment (http://www.enlightenment.org) has long been known as the window manager with all the eye candy. Back in the days of 100 MHz processors, it was also known as being slow. These days, Enlightenment offers the same eye candy with almost infinite configurability and, with modern computers, a really snappy response.

To install Enlightenment, install the enlightenment package with your preferred package manager. In addition, you may want to install the e16keyedit and e16menuedit tools, since they provide the GUI to edit your keybindings and main menu, respectively. After the enlightenment package is installed, log out of your current desktop, choose the Enlightenment session, and then log back in.

The default Enlightenment desktop is almost as bare as Fluxbox (see Figure). Along the top is a desktop dragbar, which you can use to switch desktops. If you are on any desktop other than the main root desktop, you can also drag the desktop dragbar down to reveal the desktop underneath. At the bottom left of the desktop is the Enlightenment pager. The pager displays a view of each desktop, along with any windows open on that desktop. You can drag and drop windows from one desktop to another by dragging them within the pager, or even by dragging them from the pager and dropping them on the current desktop. Along the bottom right of the desktop is the iconbox. The iconbox stores icons for any windows you iconify (minimize), instead of having them appear in a taskbar. Right-click on the iconbox to configure its settings, including its size and whether the background is transparent. To access the main application menu, middle-click on the desktop. Right-click on the desktop to configure Enlightenment settings, including the number of desktops, background settings, and so on. Right-click and select Special FX Settings to see the different types of eye candy you can configure.

Default Ubuntu Enlightenment desktop

Enlightenment also offers advanced window memory. Window memory allows you to remember settings about a particular window, such as its location, its size, which desktop it's on, and other settings. The next time you start the program, Enlightenment will remember and use any or all of the settings you told it to remember. This way, you can, for instance, always have your web browser open on a particular desktop. To configure which settings to remember, right-click on the titlebar for a window and select Remember.

Window grouping is another feature Enlightenment offers that many other window managers don't. To group windows, right-click the titlebar on the first window and select Window Groups

To exit Enlightenment, middle-click on the desktop and select Log Out. For more information about Enlightenment, middle-click on the desktop and select Help, or you can visit the main project page at http://www.enlightenment.org.

Other Window Managers

There are plenty of other window managers you can install under Ubuntu, such as Blackbox, Openbox, WindowMaker, Afterstep, and FVWM. To install any of these window managers, search for its name in your preferred package manager and then install the corresponding package. Most of the major window managers will add themselves to your sessions menu so you can easily select them when you log in.

 Python   SQL   Java   php   Perl 
 game development   web development   internet   *nix   graphics   hardware 
 telecommunications   C++ 
 Flash   Active Directory   Windows