IceWM

From LinuxReviews
Jump to navigationJump to search
Xorg.png

Ice Window Manager is a very light-weight all in one desktop environment and stacking window manager made for the X window system. The name implies it is just another window manager but there's more to it. IceWM has a built-in configurable panel with a menu, window switcher and a clock. This makes it possible to use it as an alternative to desktop environments. IceWM eats less than 20MB RAM making it a great choice on resource-limited hardware.

Features and usability

Icewm-fedora-default.jpg
Default IceWM desktop on Fedora 31.

IceWM has a built-in panel which it calls a "Taskbar" at the bottom of the screen. The default items are, from left to right, a menu, a virtual work-space switcher, an application window list, a network monitoring tool and a clock. What items appear in the "Taskbar" is configurable from the menu. The Taskbar can be set to auto-hide and there is also a "double height" setting which doesn't actually double the panels height, instead it creates two separate panel rows with the same height (technically the total height is doubled).

Taskbar-configuration-icewm.jpg
IceWM's "Taskbar" configuration in IceWM 1.4.3 on Debian 10 Buster.

There is no huge selection of panel applications available for IceWM. What you get to choose from is mostly enabled by default. You are out of luck if you want volume controls or things like that running on your panel.

Icewm-1.5.4.jpg
IceWM 1.5.5 running typical applications on Gentoo Linux.

The window manager part of IceMW is fine. It is a regular traditional stacking window manager, not a compositing window manager. It has all the standard window management features. Windows can be resized, minimized, maximized, rolled up and stacked in layers so they are above or below normal windows. IceWM has a "tray icon" area and all windows can be set to appear in the icon tray instead of the regular window list even if they do not have tray icon support.

The desktop background does not have much in terms of functionality. There are no desktop applications or icons for that matter. You can right-click the desktop and get IceWM's menu and that's it, that is all there is in terms of desktop functionality.

Antx-19.png
IceWM running on AntiX 19 beta 2

IceWM is really light when it comes to resource-use, specially RAM use. A IceWM desktop with all the standard background services will use about 220 MB RAM on Debian 10 Buster. 20 MB will be occupied by IceWM itself, 60 MB by Xorg and 140 MB will be occupied by all kinds of silly bloat Debian background bloat like NetworkManager, systemd and other "services" - many of which can be turned off.

The light Linux distribution AntiX, which uses IceWM as the default environments, clocks in at just 170 MB after login.

Users of modern computer monitors will very quickly notice that IceWM does have one totally deal-breaking limitation: It has absolutely no concept of Dots Per Inch. None. It does not care if you have Xfs.dpi: 160 in your .Xresources and there is no configuration option. This is a big deal-breaker if you are using resolutions above 1080p or 1080p on smaller monitors like 15.5" laptops. IceWM themes can configure the size of panels and the fonts in the menu so this can party be solved by installing a theme specially designed with HiDPI monitors in mind.

Verdict and conclusion

IceWM provides a basic desktop environment using little to no resources. There is a reason it is the default desktop in very light-weight distributions like AntiX. It is probably a great choice for very old and really weak machines like a Athlon XP or Pentium 4.

More feature-complete and advanced "light" desktop environments like LXQt and Xfce are better choices if your hardware is not ancient. IceWM is much lighter and that may make a difference if you want to run a desktop on a single-core 1.2 GHz CPU with 1 GB RAM for some reason. However, it's limitations compared to desktop environments which have a selection of panel applications and desktop icons and things like that means LXQt and Xfce may be preferable if the hardware is just old and simple and kind of slow. IceWM's advantages are just not huge compared to what it lacks on something like a Athlon II x3 with 4 GB RAM. That being said, IceWM is very feature-rich compared to a pure window manager like Fluxbox and it does have all the pure basics covered. You could find that it has all the features you need from desktop environment if you try it.

IceWM has been around since 1997 and it is still actively maintained with IceWM 1.5.5 being released June 2019. It is available in all the distributions repositories and some, like AntiX, use it as the default desktop option.

Links

IceVM's source is at https://github.com/bbidulock/icewm and it's homepage is at https://ice-wm.org/


avatar

Anonymous (22d08a848a)

3 months ago
Score 0

"There is no huge selection of panel applications available for IceWM. What you get to choose from is mostly enabled by default. You are out of luck if you want volume controls or things like that running on your panel." "There are no desktop applications or icons"

Natively — no volume control on the taskbar and no desktop icons, but you regain your luck utilizing external programs. E.g. the bottom antiX screenshot in the article shows `volumeicon` on the taskbar, `rox` icons on the desktop and `conky` on the desktop.

Volume control: `volumeicon` https://gith...o/volumeicon

Language switcher (icewm KeyboardLayouts `man 5 icewm-preferences` may be overly simplistic): `gxkb` https://gith...n-tools/gxkb or `fbxkb` http://fbxkb.sourceforge.net/

Power management: `powerkit` https://gith...lie/powerkit or `lxqt-powermanagement` or `xfce4-power-manager`

Menu: `jgmenu` https://jgmenu.github.io/

Don't like built-in taskbar — use an external panel `tint2` https://gitlab.com/o9000/tint2 or `lxpanel` or `xfce4-panel`

Desktop icons: `spacefm --desktop` or `pcmanfm --desktop` or `rox` (I don't know how — rox is peculiar) or `xfdesktop`

Regarding window management proper, IceWM offers quite a few advanced options not found in some popular/mainstream window managers: hide window(s); tile windows; hide title bar; remember window configuration and placement per-application; switch between windows with or without showing list of them; switch between windows of the same class (read of the same application, ignoring others). `man 1 icewm`

IceWM can be keyboard-driven, without mouse.

IceWM is nerdy — for most configuration you can't just point-and-click — you need to edit textual configfiles
Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.