Scroll to navigation

ICEWM(1)   ICEWM(1)

NAME

icewm - lightweight X11 window manager

SYNOPSIS

icewm [OPTIONS]

DESCRIPTION

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 box.
IceWM consists of several programs:
icewm
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 applets.
icewmbg
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.
icewm-session
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.
icesh
Could be used to manage IceWM internals from the command line. Refer to the icesh(1) manpage for details.
icehelp
Is used by icewm to display the IceWM manual and the manpages. See the output of icehelp --help for details.
icewmhint
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.
icesound
Plays audio files on GUI events raised by IceWM. It supports ALSA, AO, EsounD and OSS. See the manpage icesound(1).
icewm-menu-fdo
Generate an IceWM menu with executable desktop applications according to Freedesktop.org specifications.

OPTIONS

Each of the IceWM executables supports the following options:
-c, --config=FILE
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.
-t, --theme=NAME
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
⟨URL: https://www.box-look.org/ ⟩ and stored in either the directory ~/.config/icewm/themes/ or in ~/.icewm/themes/. 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 ~/.config/icewm/theme. When a new theme is selected then this value is overwritten, so that the next time IceWM is started this choice is reused.
-d, --display=NAME
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.
--sync
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.
-h, --help
Gives a complete list of all the available command line options with some very brief explanation.
-V, --version
Shows the software release version for this program.
The icewm program supports some additional options:
--replace
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.
-r, --restart
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 --theme=NAME option like:
icewm -r -t CrystalBlue
The theme name will then be saved to the theme configuration file, before restarting IceWM.
--configured
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.
--directories
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.
-l, --list-themes
IceWM will search all the configuration directories for theme files and print a list of all found themes.
--postpreferences
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 correct.

TASKBAR

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 taskbar menu.
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: MailBoxPath="pop3://myname:password@host.com/"
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 it.
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.

INPUT FOCUS

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 focus.
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 focus.
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 directed.
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 focus.
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.

WINDOW PLACEMENT

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.

WINDOW LAYERS

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.

WORKSPACES

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 quoted.
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

KEYBOARD SHORTCUTS

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:
Alt+F1
KeyWinRaise raises the window which currently has input focus.
Alt+F2
KeyWinOccupyAll makes the active window occupy all workspaces.
Alt+F3
KeyWinLower lowers the window which currently has input focus.
Alt+F4
KeyWinClose closes the active window.
Alt+F5
KeyWinRestore restores the active window to its visible state.
Alt+F6
KeyWinNext switches focus to the next window.
Alt+Shift+F6
KeyWinPrev switches focus to the previous window.
Alt+F7
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 Escape.
Alt+F8
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 Escape.
Alt+F9
KeyWinMinimize iconifies the active window.
Alt+F10
KeyWinMaximize maximizes the active window with borders.
Alt+Shift+F10
KeyWinMaximizeVert maximizes the active window vertically.
Alt+F11
KeyWinFullscreen maximizes the active window without borders.
Alt+F12
KeyWinRollup rolls up the active window.
Alt+Shift+F12
KeyWinHide hides the active window.
Alt+Space
KeyWinMenu posts the window menu.
Ctrl+Alt+KP_7
KeyWinArrangeNW moves the active window to the top left corner of the screen.
Ctrl+Alt+KP_8
KeyWinArrangeN moves the active window to the top middle of the screen.
Ctrl+Alt+KP_9
KeyWinArrangeNE moves the active window to the top right of the screen.
Ctrl+Alt+KP_6
KeyWinArrangeE moves the active window to the middle right of the screen.
Ctrl+Alt+KP_3
KeyWinArrangeSE moves the active window to the bottom right of the screen.
Ctrl+Alt+KP_2
KeyWinArrangeS moves the active window to the bottom middle of the screen.
Ctrl+Alt+KP_1
KeyWinArrangeSW moves the active window to the bottom left of the screen.
Ctrl+Alt+KP_4
KeyWinArrangeW moves the active window to the middle left of the screen.
Ctrl+Alt+KP_5
KeyWinArrangeC moves the active window to the center of the screen.
Shift+Esc
KeySysWinMenu posts the system window menu.
Alt+Ctrl+Del
KeySysDialog opens the IceWM system dialog in the center of the screen.
Ctrl+Esc
KeySysMenu activates the IceWM root menu in the lower left corner.
Alt+Ctrl+Esc
KeySysWindowList opens the IceWM system window list in the center of the screen.
Alt+Ctrl+Space
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.
Alt+Ctrl+Left
KeySysWorkspacePrev goes one workspace to the left.
Alt+Ctrl+Right
KeySysWorkspaceNext goes one workspace to the right.
Alt+Ctrl+Down
KeySysWorkspaceLast goes to the previous workspace.
Alt+Ctrl+Shift+Left
KeySysWorkspacePrevTakeWin takes the active window one workspace to the left.
Alt+Ctrl+Shift+Right
KeySysWorkspaceNextTakeWin takes the active window one workspace to the right.
Alt+Ctrl+Shift+Down
KeySysWorkspaceLastTakeWin takes the active window to the previous workspace.
Alt+Ctrl+1
KeySysWorkspace1 goes to workspace 1.
Alt+Ctrl+2
KeySysWorkspace2 goes to workspace 2.
Alt+Ctrl+3
KeySysWorkspace3 goes to workspace 3.
Alt+Ctrl+4
KeySysWorkspace4 goes to workspace 4.
Alt+Ctrl+5
KeySysWorkspace5 goes to workspace 5.
Alt+Ctrl+6
KeySysWorkspace6 goes to workspace 6.
Alt+Ctrl+7
KeySysWorkspace7 goes to workspace 7.
Alt+Ctrl+8
KeySysWorkspace8 goes to workspace 8.
Alt+Ctrl+9
KeySysWorkspace9 goes to workspace 9.
Alt+Ctrl+0
KeySysWorkspace10 goes to workspace 10.
Alt+Ctrl+bracketleft
KeySysWorkspace11 goes to workspace 11.
Alt+Ctrl+bracketright
KeySysWorkspace12 goes to workspace 12.
Alt+Ctrl+Shift+1
KeySysWorkspace1TakeWin takes the active window to workspace 1.
Alt+Ctrl+Shift+2
KeySysWorkspace2TakeWin takes the active window to workspace 2.
Alt+Ctrl+Shift+3
KeySysWorkspace3TakeWin takes the active window to workspace 3.
Alt+Ctrl+Shift+4
KeySysWorkspace4TakeWin takes the active window to workspace 4.
Alt+Ctrl+Shift+5
KeySysWorkspace5TakeWin takes the active window to workspace 5.
Alt+Ctrl+Shift+6
KeySysWorkspace6TakeWin takes the active window to workspace 6.
Alt+Ctrl+Shift+7
KeySysWorkspace7TakeWin takes the active window to workspace 7.
Alt+Ctrl+Shift+8
KeySysWorkspace8TakeWin takes the active window to workspace 8.
Alt+Ctrl+Shift+9
KeySysWorkspace9TakeWin takes the active window to workspace 9.
Alt+Ctrl+Shift+0
KeySysWorkspace10TakeWin takes the active window to workspace 10.
Alt+Ctrl+Shift+bracketleft
KeySysWorkspace11TakeWin takes the active window to workspace 11.
Alt+Ctrl+Shift+bracketright
KeySysWorkspace12TakeWin takes the active window to workspace 12.
Alt+Shift+F2
KeySysTileVertical tiles all windows from left to right maximized vertically.
Alt+Shift+F3
KeySysTileHorizontal tiles all windows from top to bottom maximized horizontally.
Alt+Shift+F4
KeySysCascade makes a horizontal cascade of all windows which are maximized vertically.
Alt+Shift+F5
KeySysArrange rearranges the windows.
Alt+Shift+F7
KeySysUndoArrange undoes arrangement.
Alt+Shift+F8
KeySysArrangeIcons rearranges icons.
Alt+Shift+F9
KeySysMinimizeAll minimizes all windows.
Alt+Shift+F11
KeySysHideAll hides all windows.
Alt+Ctrl+d
KeySysShowDesktop unmaps all windows to show the desktop.
Alt+Ctrl+h
KeySysCollapseTaskBar hides the taskbar.

MOUSE BINDINGS

You can control windows by a modified mouse button press:
Alt+Pointer_Button1
MouseWinMove moves the window under the mouse over the screen.
Alt+Pointer_Button3
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.
Ctrl+Alt+Pointer_Button1
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.

SIGNALS

IceWM supports the following signals:
SIGHUP
IceWM will restart itself. It is a way to reload the configuration. A good alternative is to use the -r or --restart option.
SIGINT, SIGTERM
IceWM will cease to manage application windows and terminate. If IceWM was started by icewm-session then icewm-session will also terminate.
SIGQUIT
IceWM will initiate the Logout procedure. If a LogoutCommand preferences option was configured it will be executed.
SIGUSR2
Developers may use this to toggle logging of X11 events.

ENVIRONMENT VARIABLES

XDG_CONFIG_HOME=PATH
The directory for user private configuration files. The default value is "$HOME/.config".
ICEWM_PRIVCFG=PATH
The directory for user private configuration files. The default value is "$HOME/.icewm".
DISPLAY=NAME
The name of the X11 server. See Xorg(1) or Xserver(1). This value can be overridden by the --display option.
MAIL=URL
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 takes precedence.

FILES

IceWM looks for configuration files in the following directories, in the given order, until it finds one:
$HOME/.config/icewm/
Contains user-specific configurations.
$HOME/.icewm/
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.
Configuration files
env
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).
focus_mode
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.
keys
Global keybindings to launch applications, which need not be window manager related. Each non-empty line starts with the word key. 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
menu
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, xdgmenumaker.
preferences
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.
prefoverride
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.
programs
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 system.
theme
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".
toolbar
Contains names of quick to launch applications with icons for the taskbar. Each non-empty non-comment line starts with the keyword prog. 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 when clicked:
prog  "Mozilla Firefox"  firefox  /usr/bin/firefox --private-window
winoptions
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.
startup
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.
shutdown
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 terminates.
Configuration subdirectories
icons
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.
ledclock
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.
mailbox
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.
sounds
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, windowLower.wav.
taskbar
Pictures to customize the look of the taskbar. These include: taskbarbg.xpm, taskbuttonactive.xpm, taskbuttonbg.xpm, taskbuttonminimized.xpm, toolbuttonbg.xpm, workspacebuttonactive.xpm, workspacebuttonbg.xpm.
themes
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 "default.theme" file.

EXAMPLES

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.

CONFORMING TO

ICCCM 2.0: mostly. EWMH: mostly. See the file COMPLIANCE in the distribution for full details.

SEE ALSO

icewmbg(1), Xorg(1), Xserver(1), xinit(1), xprop(1), xwininfo(1), wmctrl(1).
IceWM Help from the IceWM menu contains a manual (a little outdated, but still useful).

⟨URL: http://www.icewm.org/manual/ ⟩ gives the IceWM Manual (somewhat outdated).

⟨URL: http://www.icewm.org/FAQ/ ⟩ gives frequently asked questions.

⟨URL: http://www.icewm.org/themes/ ⟩ explains how to design new themes.

⟨URL: https://github.com/bbidulock/icewm/ ⟩ for current software development.

⟨URL: https://www.box-look.org/browse/cat/142/ord/latest/ ⟩ for new themes.

BUG REPORTS

If you find a bug in IceWM please use the bug reporting system on .br
⟨URL: https://github.com/bbidulock/icewm/issues ⟩ to report it. We welcome all friendly feedback.

COPYING

IceWM is licensed under the GNU Library General Public License. See the file COPYING in the distribution for full details.
2017-12-25