icewm - lightweight X11 window manager
IceWM is a lightweight window manager for the X11 window system. It aims to be
small, fast and familiar to new users. IceWM is called a re-parenting window
manager, because it draws small frames around application windows. Windows are
manipulated via the mouse by dragging or resizing this frame. It is also
called a stacking window manager, because windows can overlap. Many windows
may exist, some hidden behind others, while interaction takes place with the
currently visible ones. IceWM supports a configurable number of virtual
desktops. It provides a taskbar for monitoring applications and a pager to
switch between desktops. IceWM is mostly compatible with the ICCCM 2.0 and
EWMH window manager protocols.
IceWM was originally designed to emulate the look of Motif, OS/2
Warp 4, OS/2 Warp 3 and Windows 95. Since it has a theming engine other
styles are possible. The installation comes with several preconfigured
themes. The IceWM menu allows to choose between them.
Generally, it tries to make all functions available by both
keyboard and mouse. Configurability is very good through various preferences
files. However, configuring is not required: it works fine out of the
IceWM consists of several programs:
Is the actual window manager. It positions application
windows on screen and decorates them with borders. It gives input focus to the
current active application. IceWM supports three different focus modes: click
to focus, sloppy mouse focuse and a custom user-definable focus mode. IceWM
also draws a small taskbar at the bottom of the screen, which gives easy
access to programs, to active applications, and to a small set of monitoring
The background setting application. It can assign plain
background color or images in different formats to the X background. Each
workspace can have its own background. It supports semitransparency.
Semitransparent background image and color can be configured. When the
background image has changed then icewmbg can be notified to update the
background. Multihead monitor setups are fully supported. This program should
be started before icewm. See the icewmbg(1) manpage for details.
Runs all of the above when needed. It first loads
additional environment variables from the optional env file. Then it
starts icewmbg and icewm. It also runs the startup script. It
implements basic session management. icewm-session is the preferred program to
start the IceWM system. On termination the shutdown script will be run
first, then icewm-session will terminate icewm and icewmbg. Icewm-session will
also start icesound if you give it the --sound option. See the output
of icewm-session --help for details.
Could be used to manage IceWM internals from the command
line. Refer to the icesh(1) manpage for details.
Is used by icewm to display the IceWM manual and
the manpages. See the output of icehelp --help for
Is a simple utility for passing IceWM hints to IceWM by
window class and instance. Icewmhint uses a special property,
"_ICEWM_WINOPHINT", on the root window to pass special hints
to IceWM. See the icewmhint(1) manpage.
Plays audio files on GUI events raised by IceWM. It
supports ALSA, AO, EsounD and OSS. See the manpage icesound(1).
Generate an IceWM menu with executable desktop
applications according to Freedesktop.org specifications.
Each of the IceWM executables supports the following options:
Use FILE as the source of configuration options. By
default IceWM looks for a file named "preferences". Typically this
file is stored as one of ~/.config/icewm/preferences,
or ~/.icewm/preferences, or in one of the
configuration directories explained below. It contains a long list of options
which allow the user to tweak the behavior of IceWM to ones taste. A default
preferences file contains comments about the purpose of each option,
the range of useful values and the current or default value. A preferences
file is a readable text file which can be modified with the help of a text
editor. If this option is given to icewm-session then it is passed on to
icewm. If icewm is started independently then this option can be given to
icewm directly. However, usually one will want to use a preferences file from
a default location.
Use NAME as the name of the IceWM theme
to use. A
theme defines the look and feel of IceWM, like colors, fonts, buttons and
button behavior. Originally a theme defined options to emulate the appearance
of other desktop environments, like Motif, OS/2 Warp, or Windows. Over the
years many new original themes have been designed with beautiful icons and
backgrounds, which advance the state of the art in desktop look and feel. Many
of them can be downloaded from the website
⟩ and stored in either the
. You can then activate such a theme
via the menu in the lower left corner of the display. A default theme is
specified in either ~/.icewm/theme
, or in
. When a new theme is selected
then this value is overwritten, so that the next time IceWM is started this
choice is reused.
NAME specifies the connection to the X11 server. If this
option is missing, as is usually the case, then NAME is read from the
environment variable DISPLAY.
This option is sometimes used in software development of
IceWM. It specifies to use a slower synchronous communication mode with the
X11 server. This is irrelevant for normal use of IceWM.
Gives a complete list of all the available command line
options with some very brief explanation.
Shows the software release version for this
The icewm program supports some additional options:
Instructs IceWM to replace an existing window manager.
Once that window manager notices that it is to be replaced it will cease
operations and typically stop execution. This allows IceWM to establish itself
as the only active window manager.
Instructs the currently running IceWM to restart itself.
This can be used to reload the IceWM configuration after modifications. It is
the preferred way to restart IceWM from the command line or in scripts. To
load a different theme from the command line, combine this with the
The theme name will then be saved to the theme
configuration file, before restarting IceWM.
Shows a list of configuration options which were enabled
when IceWM was compiled from source code. This can be helpful if one suspects
some functionality may be missing.
Gives a list of directories where IceWM will look for
configuration data. This list is printed in the actual order in which IceWM
uses it to search for configuration files.
IceWM will search all the configuration directories for
theme files and print a list of all found themes.
This gives a long list of all the internal IceWM options
with their actual values after icewm has processed all of the
configuration and theme files. In some advanced scenarios this can be helpful
to inspect which configuration was chosen or whether option formatting was
On startup IceWM launches the taskbar at the bottom of the screen. The taskbar
consists from left to right of the following components:
The menu button in the lower left corner gives access to
the IceWM root menu. This menu has submenus to start applications, to
control IceWM settings, and the IceWM Logout menu.
The Show Desktop button unmaps all application windows to
fully uncover the desktop.
The Window list menu button gives access to a menu with a
list of active windows for the current workspace and a list of workspaces
with submenus for their active application windows.
The toolbar is a list of icons for applications which are
defined in the toolbar configuration file.
The workspace list shows one button for each workspace. The
current workspace is indicated by a pressed button. Pressing another
workspace button switches to that workspace. The number of workspaces and
their names are defined in the preferences file by the WorkspaceNames
option. When PagerShowPreview is turned on a small graphical summary
for each workspace is shown. By pressing the middle mouse button the
window list is shown. The right button activates the window list
menu. By using the scroll wheel over the workspace list one can
quickly cycle over all workspaces.
The task pane consists of a list of wide buttons for each
application which is running on the current workspace. Each task button
shows the application icon and the application title. The active application
is indicated by a pressed button. This is the application which has input
focus. Pressing another button activates that application: it is brought to
the foreground and receives input focus. By (double-)clicking on an active
button that application is minimized. By clicking on on a minimized button
its task is restored and activated.
Clicking on a task button with the middle mouse button will lower
that application window. Another middle click will raise it. If the shift
key is also pressed then the task is mapped to the current workspace. When
the Alt key is pressed down then tasks can be closed by clicking with the
middle mouse button.
The order of the tasks in the task pane can be changed by
dragging them. Keep the left mouse button down on a task button and move it
to the desired position.
By clicking on a task with the right mouse button the window menu
for that task is opened. Entries in this menu can also be activated by
pressing the letter which is underlined.
If there are not many application buttons then a stretch of plain
taskbar is visible. Clicking on it with the right mouse button gives the
The tray applet shows Docklet objects.
The APM applet shows battery power status.
The Net applet shows network activity. Network devices to
monitor are given by the NetworkStatusDevice option.
The Mem applet monitors memory usage.
The CPU applet monitors processor utilization.
The Mailbox applet monitors mailbox status changes. The
location of the mailbox is given by the MailBoxPath preferences
option or else by the MAIL environment variable. It can be the path
of a local mail spool file or the specification of a remote POP3 or
IMAP location. For example:
The Clock applet shows the current time and date. It is
configured by the TimeFormat option.
The taskbar collapse button collapses the taskbar and hides
Not all IceWM applets may show up on the taskbar. They must have
been enabled during configuration of the IceWM software. Their appearance is
also controlled by options in the preferences file.
Of all visible windows only one can be the active window. This is the
window which has input focus. It is the primary receiver of keyboard
and mouse events and hence one can interact with the application which created
that window. A primary task of a window manager is to allow the user to switch
input focus between different windows. The primary means to do this is the
mouse pointer. By moving the mouse pointer over the screen to another window,
and perhaps also by clicking on a window, input focus can be directed.
The FocusMode option controls the way IceWM gives input
focus to applications. It is initialized by the focus_mode
configuration file. The focus mode is set via the Focus menu. IceWM
supports six focus models:
1.Click-to-focus is the default focus mode. In
this mode changing input focus requires to click a window with the left mouse
button. The window is raised if needed. When an application requests focus its
taskpane button flashes. This gives the option to honor this request or to
ignore it. When a new application window appears it automatically receives
focus. Also when a hidden application raises to the front it receives
2.Sloppy-mouse-focus sets input focus merely by
moving the mouse pointer over a window. It is called sloppy, because if the
mouse then leaves the window and moves to the desktop background the input
focus remains with the last active window. When a window receives focus it is
raised. When an application requests focus its taskpane button flashes. A new
application or an application which raises to the front automatically receives
3.In Explicit-focus focus is even more
user-controlled than Click-to-focus. When a window receives focus it is
not raised by default, unless the frame border is clicked. No flashing occurs
when an application requests focus. When a new application window appears it
does not receive focus. Only by explicit clicking on a window is focus
4.Strict-mouse-focus is like Sloppy but
focus remains with the last window. New applications don’t receive
focus and are mapped behind other windows. When an application raises to the
front it still does not get focus.
5.Quiet-sloppy-focus is like Sloppy but no
disturbing flashing occurs on the taskbar when an application requests
6.Custom-mode is a focus mode which is defined in
detail by ten options in the preferences file. These are: ClickToFocus,
FocusOnAppRaise, RequestFocusOnAppRaise, RaiseOnFocus, RaiseOnClickClient,
FocusChangesWorkspace, FocusOnMap, FocusOnMapTransient,
FocusOnMapTransientActive, MapInactiveOnTop. All non-Custom focus modes
override these ten options.
Apart from the mouse, IceWM supports changing input focus in two
other ways. Both involve the keyboard. The first uses the QuickSwitch
window. It is activated by pressing Alt+Tab or
Alt+Shift+Tab. A window pops up in the center of the screen with a
narrow band over the next or previous window which will receive input focus
when the Alt key is released. By repeatedly pressing Alt+Tab or
Alt+Shift+Tab one can cycle through all windows.
The second keyboard method involves pressing Alt+Esc or
Alt+Shift+Esc. Input focus is immediately changed to the next or
previous window, which will be raised to make it fully visible.
A second important task of a window manager is to place new windows on the
screen. By default IceWM chooses a placement with minimal overlap, but this is
determined by the SmartPlacement option in the preferences file. If
SmartPlacement is turned off then windows are placed in sequence from left to
right and top to bottom. One can also turn on ManualPlacement. Then new
windows appear initially in the top left corner and the mouse cursor changes
into a fist. By moving the fist cursor to a suitable location and clicking the
new window will appear at the mouse click location.
Windows can overlap. Which window appears on top is determined by three
features. Newer windows appear over older windows. By clicking on a window it
is raised to the top. But both are overruled by the window layer.
Windows can be placed in different layers via the Layers menu. Click
with the right mouse button on the window frame and select Layer. From
there choose one of seven window layers. These are ordered from higher to
lower. Windows in higher layers appear over windows in lower layers.
IceWM supports multiple virtual desktops called workspaces. A workspace is like
a screen where a subset of all application windows are mapped. Thanks to
multiple workspaces we can more easily manage a large number of applications.
The number of workspaces and their names are configurable in the
preferences file through the WorkspaceNames option. By default
four workspaces are created with the names 1, 2, 3 and 4 thus:
WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4 "
This syntax is typical for IceWM options which receive multiple
values. It is a list of comma separated values each of which can be
The workspaces are visible on the toolbar. One can switch to a
different workspace by pressing the workspace button in the toolbar, but
after becoming familiar with the keyboard shortcuts below one will
want to use a hotkey to choose a workspace. If the EdgeSwitch options
is enabled in the preferences file (with sub-options
HorizontalEdgeSwitch and VerticalEdgeSwitch) then one can move
to the next or previous workspace by moving the mouse to the edge of the
screen. The ContinuousEdgeSwitch option enables continuous movement
to subsequent workspaces. The EdgeSwitchDelay option says how long to
wait before a change of workspace occurs.
To move an application window to a different workspace one can use
a keyboard shortcut. Another option is to select the Move To submenu
in the window menu of the window frame. If the application has input focus
then a Shift + left button click on the destination workspace button will
also move it there.
Please beware that changing the names of workspaces in the
preferences file and then restarting IceWM will not make the changed names
visible on the toolbar. This is because the old names are preserved as
properties by the X server and restored by IceWM when it restarts. To remove
these from the X server run:
xprop -root -remove _WIN_WORKSPACE_NAMES -remove _NET_DESKTOP_NAMES
IceWM supports a large number of hotkeys to activate some behavior with a single
key combination. These are all configurable in the preferences file. Here we
give their default values, followed by their preferences names and short
descriptions of their effect:
KeyWinRaise raises the window which currently has input
KeyWinOccupyAll makes the active window occupy all
KeyWinLower lowers the window which currently has input
KeyWinClose closes the active window.
KeyWinRestore restores the active window to its visible
KeyWinNext switches focus to the next window.
KeyWinPrev switches focus to the previous window.
KeyWinMove starts movement of the active window. Move the
window either by the mouse or by the arrow keys. The arrow keys can be
accelerated four times by the Shift key or sixteen times by the Control key.
Press the left button or the Enter key when done. To cancel press
KeyWinSize starts resizing of the active window. Resize
the window either by the mouse or by the arrow keys. The arrow keys can be
accelerated four times by the Shift key or sixteen times by the Control key.
Press the left button or the Enter key when done. To cancel press
KeyWinMinimize iconifies the active window.
KeyWinMaximize maximizes the active window with
KeyWinMaximizeVert maximizes the active window
KeyWinFullscreen maximizes the active window without
KeyWinRollup rolls up the active window.
KeyWinHide hides the active window.
KeyWinMenu posts the window menu.
KeyWinArrangeNW moves the active window to the top left
corner of the screen.
KeyWinArrangeN moves the active window to the top middle
of the screen.
KeyWinArrangeNE moves the active window to the top right
of the screen.
KeyWinArrangeE moves the active window to the middle
right of the screen.
KeyWinArrangeSE moves the active window to the bottom
right of the screen.
KeyWinArrangeS moves the active window to the bottom
middle of the screen.
KeyWinArrangeSW moves the active window to the bottom
left of the screen.
KeyWinArrangeW moves the active window to the middle left
of the screen.
KeyWinArrangeC moves the active window to the center of
KeySysWinMenu posts the system window menu.
KeySysDialog opens the IceWM system dialog in the center
of the screen.
KeySysMenu activates the IceWM root menu in the lower
KeySysWindowList opens the IceWM system window list in
the center of the screen.
KeySysAddressBar opens the address bar in the taskbar
where a shell command can be typed. Pressing the Enter key will execute the
command. If AddressBarCommand was configured it will be used to execute
the command otherwise /bin/sh is used. If the Control
key was also pressed then the command is executed in a terminal as given by
TerminalCommand. The address bar maintains a history which is navigable
by the up/down keys. A rich set of editing operations is supported, including
cut-/copy-/paste-operations and file completion using Tab or Ctrl-I.
KeySysWorkspacePrev goes one workspace to the left.
KeySysWorkspaceNext goes one workspace to the
KeySysWorkspaceLast goes to the previous workspace.
KeySysWorkspacePrevTakeWin takes the active window one
workspace to the left.
KeySysWorkspaceNextTakeWin takes the active window one
workspace to the right.
KeySysWorkspaceLastTakeWin takes the active window to the
KeySysWorkspace1 goes to workspace 1.
KeySysWorkspace2 goes to workspace 2.
KeySysWorkspace3 goes to workspace 3.
KeySysWorkspace4 goes to workspace 4.
KeySysWorkspace5 goes to workspace 5.
KeySysWorkspace6 goes to workspace 6.
KeySysWorkspace7 goes to workspace 7.
KeySysWorkspace8 goes to workspace 8.
KeySysWorkspace9 goes to workspace 9.
KeySysWorkspace10 goes to workspace 10.
KeySysWorkspace11 goes to workspace 11.
KeySysWorkspace12 goes to workspace 12.
KeySysWorkspace1TakeWin takes the active window to
KeySysWorkspace2TakeWin takes the active window to
KeySysWorkspace3TakeWin takes the active window to
KeySysWorkspace4TakeWin takes the active window to
KeySysWorkspace5TakeWin takes the active window to
KeySysWorkspace6TakeWin takes the active window to
KeySysWorkspace7TakeWin takes the active window to
KeySysWorkspace8TakeWin takes the active window to
KeySysWorkspace9TakeWin takes the active window to
KeySysWorkspace10TakeWin takes the active window to
KeySysWorkspace11TakeWin takes the active window to
KeySysWorkspace12TakeWin takes the active window to
KeySysTileVertical tiles all windows from left to right
KeySysTileHorizontal tiles all windows from top to bottom
KeySysCascade makes a horizontal cascade of all windows
which are maximized vertically.
KeySysArrange rearranges the windows.
KeySysUndoArrange undoes arrangement.
KeySysArrangeIcons rearranges icons.
KeySysMinimizeAll minimizes all windows.
KeySysHideAll hides all windows.
KeySysShowDesktop unmaps all windows to show the
KeySysCollapseTaskBar hides the taskbar.
You can control windows by a modified mouse button press:
MouseWinMove moves the window under the mouse over the
MouseWinSize moves the window if the mouse is in the
center, but resizes the window if the mouse is out of the center. Keep the key
and button pressed. To enlarge the window move the mouse button away from the
center. To shrink it move towards the center of the window.
MouseWinRaise raises the window under the mouse.
Clicking on the desktop activates a menu. The middle button
shows the window list (DesktopWinListButton=2). The right button shows the
root menu (DesktopMenuButton=3).
The title frame of a window also listens for mouse clicks.
Left double clicking maximizes the window (TitleBarMaximizeButton=1). Middle
double clicking rolls up the window (TitleBarRollupButton=2). Pressing a
mouse button and moving it will move the window. Alt + left button click
lowers the window.
When the mouse is on the window frame then a left click
raises the window. Dragging with the left button down resizes the window.
Clicking the right button pops up the context menu. Dragging with the right
button moves the window.
IceWM supports the following signals:
IceWM will restart itself. It is a way to reload the
configuration. A good alternative is to use the -r or --restart
IceWM will cease to manage application windows and
terminate. If IceWM was started by icewm-session then icewm-session will also
IceWM will initiate the Logout procedure. If a
LogoutCommand preferences option was configured it will be
Developers may use this to toggle logging of X11
The directory for user private configuration files. The
default value is "$HOME/.config".
The directory for user private configuration files. The
default value is "$HOME/.icewm".
The name of the X11 server. See Xorg(1) or
Xserver(1). This value can be overridden by the --display option.
Gives the location of your mailbox. If the schema is
omitted the local "file" schema is assumed. This is used by the
mailbox applet in the taskbar to show the status of your mailbox. If the
MailBoxPath option in the preferences file is set, then that one
IceWM looks for configuration files in the following directories, in the given
order, until it finds one:
Contains user-specific configurations.
Contains user-specific configurations.
/etc/icewm/ or /etc/X11/icewm/
Contains system-wide customized defaults. Please note
that your local installation may have been configured to use a different
system location. The output of icewm --directories
will show this location.
/usr/share/icewm/ or /usr/local/share/icewm/
Default local installation settings.
icewm-session loads additional environment
variables from the file env. Each line is subjected to posix-shell
expansion by wordexp(3). Comment lines starting by a #-sign are
ignored. icewm-session will load those expanded lines which contain a name,
followed by an equals sign, followed by the value (which may be empty).
Defines the initial value for FocusMode. Its default
value is FocusMode=1 (Click-to-focus). This can be changed via the
menu. IceWM will save the Focus menu choice in this file.
Global keybindings to launch applications, which need not
be window manager related. Each non-empty line starts with the word
After one or more spaces follows a double-quoted string of the
bound X11 key combination like "Alt+Ctrl+Shift+X". Then after at
least one space follows a shell command line which will be executed by IceWM
whenever this key combination is pressed. For example, the following line
creates a hotkey to reload the IceWM configuration:
key "Ctrl+Shift+r" icewm --restart
A menu of startable applications; usually customized by
the user. IceWM provides either the program icewm-menu-fdo or the
program icewm-menu-gnome2 to generate a default menu. Similar programs
are xdg_menu, mmaker (MenuMaker), xde-menu,
Contains general settings like paths, colors and fonts,
but also options to control the IceWM focus behavior and the applets which are
started in the taskbar. The icewm installation will provide a default
preferences file, which can be copied to the IceWM user configuration
directory and modified.
Settings which override the settings from a theme. Some
of the IceWM configuration options from the preferences file which control the
look-and-feel may be overridden by the theme, if the theme designer thinks
this is desirable. However, this prefoverride file will again override
this for a few specific options of your choosing. It is safe to leave this
file empty initially.
An automatically generated menu of startable
applications. This could be used by wmconfig, menu or similar programs to give
easy access to all the desktop applications which are installed on the
This file contains the name of the default theme. On
startup icewm reads this file to obtain the theme name, unless icewm was
started with the --theme option. Whenever a different theme is selected
from the IceWM Menu then the theme file is overwritten with the name of the
selected theme. This theme file contains the keyword Theme, followed by
an equals sign, followed by a double-quoted string with the theme name. The
theme name is the name of the theme directory, followed by a slash, followed
by the theme file. Usually the theme file is just "default.theme",
but a theme may have alternatives. Alternatives are small tweakings of a
theme. These are specified in their own ".theme" file, which
replaces "default.theme". If no theme file exists then IceWM will
use the default setting of Theme="default/default.theme".
Contains names of quick to launch applications with icons
for the taskbar. Each non-empty non-comment line starts with the keyword
After one or more spaces follows a name, which is displayed in a
tooltip whenever the mouse cursor hovers over the toolbar icon. This name may
be a double quoted string. Then follows the bare name of the icon to use
without extensions. This icon will be shown in the toolbar. The last component
is a shell command line which will be executed whenever the user presses the
icon in the toolbar. For example, the following line in toolbar will create a
button with tooltip “Mozilla Firefox” with the firefox
icon which launches Firefox
prog "Mozilla Firefox" firefox /usr/bin/firefox --private-window
Contains settings to control window appearance and
behavior which are specific to applications or groups of applications. Options
can control the border, whether it appears on the taskbar, the window list,
the system tray and the workspaces. Also its layer, geometry, whether it is
movable, resizable and closable. Full details for this file are explained in
the IceWM Manual.
Contains commands to be executed on IceWM startup. This
is an executable script with commands to tweak X11 settings and launch some
applications which need to be active whenever IceWM is started. It is run by
icewm-session when IceWM starts.
Contains commands to be executed on IceWM shutdown. This
is an executable script with commands to be executed in the last stage of
IceWM termination. Typically they may undo some of the effects of the
startup script. It is run by icewm-session when IceWM
Contains icons which are used to picturally identify
applications. Usually these files are in the XPM format, but the PNG and SVG
image formats are also supported. The names of icon files may follow a
specific naming pattern, like app_32x32.xpm. They start with a
basename, usually this is just a single word. Then follows an underscore,
followed by a size specification in the format _SIZExSIZE. This is followed by
a dot and the file extension, where the extension denotes the icon image
format. Common sizes are 16, 32 and 48 for small, large and huge icons. This
depends on the respective IconSize preferences options.
Pictures of digits for the LED clock which is displayed
in the bottom-right corner of the taskbar. These can be seen when the
TaskBarShowClock and TaskBarClockLeds options are both set to 1.
Icons which are used to display different states of the
mailbox applet in the taskbar. There are five states and each has its own
icon: mail.xpm, newmail.xpm, unreadmail.xpm, nomail.xpm, errmail.xpm.
Audio files which are played by icesound on GUI
events. These are: startup.wav, shutdown.wav, restart.wav, launchApp.wav,
workspaceChange.wav, windowOpen.wav, windowClose.wav, dialogOpen.wav,
dialogClose.wav, windowMax.wav, windowRestore.wav, windowMin.wav,
windowHide.wav, windowRollup.wav, windowMoved.wav, windowSized.wav,
Pictures to customize the look of the taskbar. These
include: taskbarbg.xpm, taskbuttonactive.xpm, taskbuttonbg.xpm,
taskbuttonminimized.xpm, toolbuttonbg.xpm, workspacebuttonactive.xpm,
A directory to store themes. Each theme is stored in its
own subdirectory in the themes directory. A theme contains at least a
default.theme file, and optionally "theme
alternatives" which are additional files which have a
".theme" filename extension and which contain tweakings of the
Examples of the above configuration files can be found in the default
installation path or in the system-wide defaults. See the output of
icewm --directories for their locations.
ICCCM 2.0: mostly. EWMH: mostly. See the file COMPLIANCE in the distribution for
IceWM is licensed under the GNU Library General Public License. See the file
COPYING in the distribution for full details.