Contents

Icewm Guide|Legacy vs modern look|Features and more

Installation

To install a basic icewm environment we need the following

  • icewm
  • nitrogen for desktop background (may use feh or xset)
  • tint2 ( optional replacement panel. icewm has a built in panel)
  • lxappearance ( for customization)

We will use the terminal to install icewm and essential packages:

1
sudo apt install icewm nitrogen tint2 lxappearance
1
sudo dnf install icewm icewm-themes nitrogen tint2 lxappearance
1
sudo pacman -S icewm nitrogen tint2 lxappearance

To get the latest version especially on debian and ubuntu (fedora and arch have a relatively updated version). Two methods

  1. you can copy the latest binaries of icewm and icewm-common from debian sid or ubuntu’s latest repo (currently lunar) as i showed in the video
  2. build it yourself

To build it yourself needs the following dependencies

1
2
3
4
5
6
sudo apt install asciidoctor autoconf automake autopoint build-essential cmake \
fonts-dejavu gettext git libfontconfig1-dev libfribidi-dev libgdk-pixbuf2.0-dev \
libimlib2-dev libtool libsm-dev libx11-dev libxext-dev libxft-dev libxinerama-dev \
libxrandr-dev libxrender-dev libxcomposite-dev libxdamage-dev libxfixes-dev \
libpng-dev libjpeg-dev libxpm-dev librsvg2-dev markdown x11-utils xterm xdg-utils \
yad libao-dev libasound2-dev libsndfile1-dev libpulse-dev

install the latest release as follows ( taken from icewm website)

1
2
3
4
5
6
wget https://github.com/ice-wm/icewm/releases/download/3.4.0/icewm-3.4.0.tar.lz
tar -x --lzip -vpf icewm-3.4.0.tar.lz
cd icewm-3.4.0
/configure --prefix=/usr
make
sudo make install

Theme

extra icewm themes can be found on the following website box-look.org

The themes I currently use are

Preferences

General settings - paths, colors, fonts…

Prefoverride

Settings that should override the themes. example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
ModSuperIsCtrlAlt=1
KeyWinTileLeft="Ctrl+1"
KeyWinTileRight="Ctrl+2"
KeySysTileVertical="Ctrl+3"
KeyWinSmartPlace="Ctrl+4"
KeySysMenu=""
TaskBarShowWorkspaces=0
ShowWorkspaceStatus=0
ShowTaskBar=0
RebootCommand="loginctl reboot"
ShutdownCommand="loginctl poweroff"
TerminalCommand=sakura
SuspendCommand="loginctl suspend"
MenuMouseTracking=1
#TitleBarHeight=0
HideTitleBarWhenMaximized=1
ClickToFocus=0
TaskBarShowWorkspaces=0 # 0/1
WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4 ", " 5 "," 6 "," 7 "," 8 ","9 "

Menu of startable applications. Usually customized by the user.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
prog "xfce4-terminal" /usr/share/icons/papirus/apps/terminal.png xfce4-terminal
prog "Gedit" /usr/share/icons/papirus/apps/gedit.png gedit
prog "Thunar" /usr/share/icons/papirus/apps/thunar.png thunar
prog "Virtualbox" virtualbox virtualbox
menufile "HDMI" terminal personal
menu Applications /usr/share/icons/papirus/apps/applications-science.png {
includeprog icewm-menu-fdo --sep-before --no-sep-others
}
separator
prog "Download video clip" /usr/share/icons/papirus/apps/youtube-dl.png ~/scripts/video-download.sh
prog "Play video from clipboard" /usr/share/icons/papirus/apps/mpv.png ~/scripts/mpv-clipboard.sh
prog "Videocut" video ~/scripts/videocut.sh
prog "Flameshot" /usr/share/icons/papirus/apps/flameshot.png flameshot gui  
prog "vokoscreenNG" /usr/share/icons/papirus/apps/vokoscreen.png vokoscreenNG 
prog "VLC" /usr/share/icons/hicolor/48x48/apps/vlc.png vlc
prog "Firefox" /usr/share/icons/papirus/apps/firefox-esr.png firefox
prog "Tor Browser" /usr/share/icons/papirus/apps/tor.png torbrowser-launcher

Programs

Automatically generated menu of startable applications (this should be used for wmconfig, menu or similar packages, perhaps as a part of the login or X startup sequence).

winoptions

Application window options

1
2
3
4
Doublecmd.workspace:0
firefox.workspace:1 
Sublime_text.workspace:2
VirtualBox Machine.workspace:4

icesh

1
2
3
4
5
6
7
8
9
icesh -f close
icesh restart
icesh logout
icesh -f borderless
icesh -f bordered
icesh -a bordered
icesh -a borderless
icesh -f sizeto 70% 100% top left
icesh -f sizeto 70% 100% top right

keys

Global keybindings to launch applications (not window manager related)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# Valid modifiers are Alt, Ctrl, Shift, Meta, Super and Hyper.
#// Numpad 1 = "KP_END"
#// Numpad 2 = "KP_DOWNARROW"
#// Numpad 3 = "KP_PGDN"
#// Numpad 4 = "KP_LEFTARROW"
#// Numpad 5 = "KP_5"
#// Numpad 6 = "KP_RIGHTARROW"
#// Numpad 7 = "KP_HOME"
#// Numpad 8 = "KP_UPARROW"
#// Numpad 9 = "KP_PGUP"
#// Numpad 0 = "KP_INS"
#// Numpad . = "KP_DEL"
#// Numpad ⏎ = "KP_ENTER"
#// Numpad + = "KP_PLUS"
#// Numpad - = "KP_MINUS"
#// Numpad * = "KP_MUL"
#// Numpad / = "KP_SLASH" 
key "Alt+Ctrl+t"            /usr/bin/xfce4-terminal
key "Alt+Ctrl+b"            xdg-open about:blank
key "Alt+Ctrl+s"            xdg-open https://www.google.com
key "Alt+1"       icesh -f maximize
key "KP_DEL"        icesh -f close     # the dot in numpad
key "KP_INS"        icesh -f close     # 0 in numpad
key "Super+Shift+s"           icesh -f  above 
key "Super+Shift+r"           icesh restart 
key "Super+Shift+q"           icesh logout 
key "Super+KP_Subtract"     amixer sset Master 5%-
key "Super+KP_Add"          amixer sset Master 5%+
key "Ctrl+Escape"           icesh -f close
key "XF86AudioLowerVolume"  amixer sset Master 5%-
key "XF86AudioRaiseVolume"  amixer sset Master 5%+
key "XF86AudioMute"         amixer sset Master toggle
key "XF86HomePage"          xdg-open about:blank
key "XF86Search"            xdg-open https://www.google.com
key "XF86Eject"             eject
key "XF86Calculator"        /bin/sh -c "gnome-calculator || xcalc || ( type bc >/dev/null 2>&1 && /usr/bin/xterm -e bc -l)"

switchkey "Super+p"         icewm-menu-xrandr

toolbar

Quick launch application icons on the taskbar.

1
2
3
prog "/usr/bin/xterm" utilities-terminal /usr/bin/xterm
prog "Web browser" web-browser xdg-open about:blank
prog "Thunar" thunar thunar