IceWM FAQ and Howto: Configuration

Next Previous Contents

## 4. Configuration

Congratulations! Now you have IceWM up and running. You don't like the default look? Don't worry: This section is on customizing IceWM.

As it is the case with most Linux and Unix programs IceWM can be configured using plain text config files.

## 4.1 You mean I have to edit these files?

There is a lot of utilities nowadays. See utilities section - Tools for IceWM.

The config files need to be changed if you want to change IceWM's behavior. This does not necessarily mean that you have to use an editor for this - graphical configuration tools for IceWM are available, although IceWM doesn't feature in-built configuration. More about these tools in the Utilities section. Still hand editing of these files is most effective and you can find even more than you are looking for. To notify IceWM about the changes you've made just send it a SIGHUP or restart it from the Logout menu.

## 4.2 Where are the configuration files?

You could not find the config files? Maybe you were looking in wrong places - the location depends upon the method you used to install IceWM.

In a plain vanilla source install, the global version of the files will be located in `/usr/local/lib/Xll/icewm/`. If you installed the standard RPM, they will be in `/usr/X11R6/lib/X11/icewm/` or `/usr/local/share/icewm`. The system wide configuration files for the Debian package seem to be in `/etc/X11/icewm/`.

However, if you wish to make a configuration of your own you should not edit these global config files but create a subdirectory of your home directory called `~/.icewm/`. Copy the system wide files to your local `.icewm` directory and edit these copies.

Note: You may have to alter the permissions of the copies in order to read and write to them.

## 4.3 The configuration files

You can customize IceWM by editing the following configuration files:

`"menu"`

  Controls the contents of the `start` menu

`"preferences"`

  Controls the general behavior of IceWM

`"keys"`

  Controls which additional key combos are available to users

`"toolbar"`

  Controls the row of launcher icons on the taskbar and has the same syntax as the menu file

`"winoptions"`

  Controls the behavior of individual applications (as identified by the names of their respective windows)

`"startup"`

  Applications that should be started at IceWM startup.

`"theme"`

  IceWM theme path/name.

`"prefoverride"`

  To override theme preferences.

### menu

The `menu` file controls the contents in your menu (You knew that, right?). It has the following syntax:

> `

>         prog Program Icon app -with -options

> `

    prog

is a keyword, telling IceWM that it's a program entry. Other keywords are

    separator

to draw a separator and

    menu Xyz folder_icon {
      prog ...
    }

to open a new sub menu called Xyz.

    Program

is the name which will be shown in the menu. Enclose it in apostrophes if you need more than one word here.

    Icon

will be used as the menu entry's icon, if a corresponding image is found in IceWM's IconSearchPath. And finally

    app -with -options

is what's going to be started if a user chooses this entry.

Note that the menu only shows entries which are found in your PATH, IceWM is clever enough to omit non-usable entries.

### preferences

The `preferences` file is the main configuration file. The default file is pretty much self documenting, so go and have a look. In case you ever wondered about themes: they can define all the options you can use in this file - and their definitions override all your personal customization!

### keys

In the `keys` file one can define shortcuts for starting programs. The existing entries make clear what one has to define.

### toolbar

The `toolbar` file defines some buttons which can be clicked next to the menu in the toolbar. It uses the same format as the menu file. You can also have folders in the toolbar. The easiest way to do that is simply by copying a menu from the /menu file over to the /toolbar file.

### winoptions

The `winoptions` file can be used to define the appearance of X applications like on which desktop they should appear, if should have a border, menu, titlebar, etc.

### startup

The `startup` file can list apps you want to start at IceWM startup. It can look like this:

> `

>     idesk&
>     (sleep 2; psi&)&

> `

Do not forget to make this file executable

> `

>     chmod +x startup

> `

Note: Do not put shell specification (like #!/bin/bash) on the beginning of the file. Also make sure all applications are starting at background (&).

### theme

The `theme` file is new from IceWM 1.2.10. It specifies which theme should be used

> `

>     Theme=myfavorittheme/default.theme
>     #Theme=myfavorittheme/default.theme

> `

# contains theme history.

The `theme` file is changed every time you switch theme in menu and selected theme is therefore used after IceWM restart.

### prefoverride

The `prefoverride` file is new from IceWM 1.2.12. In this file you can specify any preference which will override any preference specified by theme or anything else. This is introduced to solve troubles with order of preferences interpretation and give a usr possibility to customize global things he wants to have allways same.

Next Previous Contents