posted by Rahul Gaitonde on Thu 22nd Jul 2004 18:23 UTC
IconIceWM is a lightweight window manager for UNIX-like systems. Although widely used, it is often underrated - there is hardly any IceWM-related content on the Internet. This article is my attempt to share my experiences as a longtime IceWM user. It contains tips and tricks, usage scenarios, and makes use of examples whenever possible to better demonstrate IceWM's features and capabilities. Finally, the article is meant for those with some familiarity with UNIX, but who are new to IceWM.

1. Introduction to IceWM

IceWM is mean to be a fast, lightweight, unobtrusive window manager. It isn't a full-fledged desktop environment like, for instance KDE, GNOME, CDE or XFce. See Appendix A at the end of the article for the difference between a Window Manager and a Desktop Enviroment.

The IceWM interface looks a lot like a simple Windows 95 default desktop. So even for those of you new to UNIX, IceWM won't be too difficult to start using. It can be extensively themed too, to resemble Windows NT, XP, MacOS 9 and OS X. So if you're a recent convert to Linux, and don't want (or can't afford) the full-fledged capabilities of KDE or GNOME, IceWM is for you. Just theme it to look like your old OS! No wonder it's also known as the "impersonator".

IceWM is also for the UNIX gurus out there. Being fairly minimalistic, you can use it simply as a means to manage the dozens of terminal windows you'll have open. Another reason that experienced Linux/UNIX 'power users' will like IceWM is that it's extremely unobtrusive. Once you've got it customised the way you want it, you won't notice it. Quite a difference from Windows XP's irritating popup messages and ubiquitious branding. It's like XP's constantly hammering into your brain - "You're Using Microsoft Windows XP And You Better Not Forget It"! Unfortunately, neither GNOME nor KDE are much better - think of all the applications which begin with 'K' or 'G'! IceWM, on the other hand, accomplishes the one thing that is essential for an effective window manager - it makes you forget about its existence.

Finally, IceWM is remarkably flexible, while remaining simple to configure. All of IceWM's features can be configured via five plaintext configuration files, all of which but one are usually under 25 lines in length. While there are graphical tools for configuring IceWM, I find them very inadequate, and almost everyone will find it easier to edit the files by hand.

Well, enough of an introduction to IceWM. Let's get down to the specifics. First, the obligatory download-and-install procedure.

2. Getting, Configuring and Installing IceWM

2.1 Obtaining and compiling IceWM

You can get IceWM at There are both source tarballs and binary versions available for download. If you don't have root privileges on your machine, then the source is what you'll need. You can install in your home directory.

For the RPM, as root, type

rpm -Uvh icewm-<version-number>.rpm

For the tarball, we go through the 3-step ritual of configuring, compiling and installing. Say you're installing in ~/icewm. First we'll untar the archive. For files ending in .tar.gz, we type

tar -zxvf <filename>.tar.gz
and for files that end in .tar.bz2, type
tar -jxvf <filename>.tar.bz2

"cd" into the archive directory, and type the following:

$./configure --prefix=/home/rahul/icewm

The "--prefix" option will ensure that icewm is installed in a directory within your home directory. Other options you might want to add to the configure script:

Disable internationalization
Disable internationalized message
Support gradients (experimental, implies -enable-antialiasing)
Support antialiasing (experimental, implies -enable-xfreetype)
Display GNOME 2 menus
Use Imlib for images path to imlib-config

The "imlib" option enables IceWM to use .pngs and other non-xpm file formats for use as icon files. That's usually a good idea.

Once the configure script is done, type

$ make && \
make install && \
xmessage -center ' Done!' || \
xmessage -center ' Error!'

Then go on doing some other work. Once the system's finished compiling and installing, a message window will popup with either " Done!" if everything went off fine, else you'll see " Error!".

Table of contents
  1. "IceWM, Page 1/6"
  2. "IceWM, Page 2/6"
  3. "IceWM, Page 3/6"
  4. "IceWM, Page 4/6"
  5. "IceWM, Page 5/6"
  6. "IceWM, Page 6/6"
e p (0)    68 Comment(s)

Technology White Papers

See More