IceWM

Window Manager


IceWM website logo

IceWM is a window manager for the X Window System. The goal of IceWM is speed, simplicity, and not getting in the user’s way. It comes with a taskbar with pager, global and per-window keybindings and a dynamic menu system. Application windows can be managed by keyboard and mouse. Windows can be iconified to the taskbar, to the tray, to the desktop or be made hidden. They are controllable by a quick switch window (Alt+Tab) and in a window list. A handful of configurable focus models are menu-selectable. Setups with multiple monitors are supported by RandR and Xinerama. IceWM is very configurable, themeable and well documented. It includes an optional external background wallpaper manager with transparency support, a simple session manager and a system tray. IceWM is available on popular Linux distributions like Debian, Ubuntu, Arch, OpenSUSE, Gentoo, Slackware, CentOS, antiX, NixOS, and also compiles on most *BSDs.

Software

IceWM was coded from scratch in C++ by Marko Maček since 1997. It is now maintained at Github.

Releases

The latest released version is 3.4.6 (2024-03-07).

Features

  • Easy to use, simple and fast
  • Standards compliant
  • Fully usable with keyboard
  • Alt+Tab window switching
  • Efficient resource usage
  • Task bar (optional)
  • Multiple workspaces
  • Fully documented
  • A large number of themes
  • Usable with GNOME and KDE environments
  • Regenerates menus when configuration changes
  • Support for sound effects
  • Multiple focus modes
  • Manual placement of windows option
  • Autoraising of windows option
  • Tooltips
  • Configurable keybindings
  • Supports DockApps in a container
  • Tabbed windows

Screenshots

The IceWM Screenshots Collection

Themes

IceWM is themeable. The visual appearance of icewm can be changed by a theme, which is a collection of settings and small images. More than 400 themes can be downloaded from box-look.org. Extra is a collection of 75 highlights.

Translations

IceWM is translated into three dozen languages. To improve the translation for your language at Weblate, first register an account either here or there, then update.

Documentation

Bug Tracking

Report your icewm bugs on Github.

Install the latest release as follows

$ wget https://github.com/ice-wm/icewm/releases/download/3.4.6/icewm-3.4.6.tar.lz
$ tar -x --lzip -vpf icewm-3.4.6.tar.lz
$ cd icewm-3.4.6
$ ./configure --prefix=/usr
$ make
$ sudo make install

Install from unreleased development source code

Gettext must be installed.

$ git clone https://github.com/bbidulock/icewm
$ cd icewm
$ ./autogen.sh
$ ./configure --prefix=/usr
$ make
$ sudo make install

If you have cmake, an alternative is:

$ git clone https://github.com/bbidulock/icewm
$ cd icewm
$ ./rebuild.sh -r --prefix=/usr
$ cd build
$ sudo make install

Install package dependencies

To install all package dependencies in one go use the following script.

$ wget https://ice-wm.org/scripts/os-depends.sh
$ sudo bash -x ./os-depends.sh

Verify package dependencies by:

$ pkg-config --modversion x11 xext xcomposite xdamage xfixes xrender xrandr xinerama xft fontconfig sm ice sndfile alsa ao gio-2.0 gio-unix-2.0 gdk-pixbuf-xlib-2.0 imlib2 librsvg-2.0 xpm libpng libjpeg
# or simpler:
$ ./rebuild.sh -d

More installation and configuration

License

IceWM is released under the terms of the GNU Library General Public License.

Contribute to ongoing development and support of IceWM by donating.

Merchandise

Show you’re an afficionado and visit our shop.