File: README.md

package info (click to toggle)
icewm 3.9.0-2
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 14,248 kB
  • sloc: cpp: 75,834; ansic: 2,532; makefile: 1,546; sh: 564; perl: 430; xml: 193; python: 84
file content (203 lines) | stat: -rw-r--r-- 7,118 bytes parent folder | download
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
[icewm -- read me first file.  2025-03-09]: #

Ice Window Manager (IceWM)
==========================

IceWM is a window manager for the X Window System. The features of IceWM are
speed, simplicity, and not getting in the user's way.

> The name was decided on a very hot day... (and Marko started writing it in
> winter ;-)  The aim of IceWM is to have good 'Feel' and decent 'Look'. 'Feel'
> is much more important than 'Look' ...

This is a fork of the IceWM CVS on [sourceforge][12].  It includes all changes
from the `icewm-1-3-BRANCH` branch, greatly enhanced EWMH/ICCCM compliance, as
well as patches collected from Arch Linux, Debian, pld-linux, the IceWM bug
list, and various other GitHub forks.


Release
-------

This is the `icewm-3.9.0` package, released 2025-08-31.  This release, and
the latest version, can be obtained from [GitHub][1], using a command such as:

    $> git clone https://github.com/bbidulock/icewm.git

Please see the [NEWS][3] file for release notes and history of user visible
changes for the current version, and the [ChangeLog][4] file for a more
detailed history of implementation changes.  The [TODO][5] file lists features
not yet implemented and other outstanding items.

Please see the [INSTALL][7] file for installation instructions.

When working from `git(1)`, please use this file.  An abbreviated
installation procedure that works for most applications appears below.

This release is published under LGPL.  Please see the license
in the file [COPYING][9].


Quick Start
-----------

The quickest and easiest way to get icewm up and running is to run the
following commands:

    $> git clone https://github.com/bbidulock/icewm.git
    $> cd icewm
    $> ./autogen.sh
    $> ./configure
    $> make
    $> make DESTDIR="$pkgdir" install

This will configure, compile and install icewm the quickest.  For those who
like to spend the extra 15 seconds reading `./configure --help`, some compile
time options can be turned on and off before the build.

For general information on GNU's `./configure`, see the file [INSTALL][7].
To disable sound support, use --without-icesound. When the image library
supports SVG natively, you can use --disable-librsvg and --disable-nanosvg.

Please see the [INSTALL][7] file for more detailed installation instructions.
An alternative way to build IceWM using CMake is [documented here][19].
The [ChangeLog][4] file contains a detailed history of implementation changes.
The [COMPLIANCE][6] file lists the current state of EWMH/ICCCM compliance.  The
[NEWS][3] file has release notes and history of user visible changes of the
current version.  The [TODO][5] file lists features not yet implemented and
other outstanding items.

This release is published under LGPL license that can be found in the file
[COPYING][9].

Prerequisites
-------------

Building from tarball requires:

 - gcc or clang
 - imlib2 or libgdkpixbuf
 - libxcomposite
 - libxdamage
 - libxfixes
 - libxft
 - libxinerama
 - libxpm
 - libxrandr
 - libxrender

Building from git also requires:

 - complete autoconf or cmake toolchain
 - either markdown or asciidoctor
 - pod2man

For optional features:

  - libjpeg, libpng, librsvg or nanosvg
  - gettext, libfribidi

Configuring IceWM
-----------------

Documentation for configuring the window manager can be obtained from [IceWM
Website][13] or from the [online manual][15].
Since version 1.4.3 a complete and up-to-date set of manual pages is provided.
Use [__icewm__(1)][26] as a starting point.


Included Utilities
------------------

Currently, the only included utilities are:

 - [__icesh__(1)][25] (_a versatile window manipulation tool_),
 - [__icewmbg__(1)][22] (_a background setting program_),
 - [__icewm-session__(1)][27] (_a program to launch the window manager, icewmbg and
   icewmtray in an orderly fashion_),
 - [__icewm-menu-fdo__(1)][24] (_a utility to genenerate XDG menus_),
 - [__icewmhint__(1)][23] (_a utility to set IceWM-specific window options hint_).
 - [__icesound__(1)][21] (_play audio files when interesting GUI events happen_).


Third-party Utilities
---------------------

Unspecified keyboard shortcuts can be handled with the __bbkeys__(1) utility
available from [GitHub][16].

XDG compliant menus may be generated using the __xde-menu__(1) utility
available from [GitHub][20].

For additional utilities see the [IceWM FAQ][14].


Bug Reports
-----------

Issues can be reported on [GitHub][2].  Please try to submit short patches or
pull requests if you can.  If you would like to perform regular maintenance
activities (e.g. if you are a maintainer of an IceWM package for a
distribution), contact me for push access.

I normally like to have the issuers of problem reports close the report once
it has been resolved.  I do not want you to think that we are being dismissive,
because I welcome all reports.

Bug reports, feedback, and suggestions pertaining to the original CVS version
can be sent to: Marko.Macek@gmx.net or icewm-user@lists.sourceforge.net

See also [BUGS][8], [TODO][5] and the sites at:

  - https://ice-wm.org/
  - https://sourceforge.net/projects/icewm/


Development
-----------

If you would like to develop against this fork, the easiest way is to obtain a
[GitHub account][10], fork the [repository][1] and perform your development.
Send me a pull request when you have something stable.  If you submit regular
pull requests that get accepted, I will just give to push access to save time.


Translations
------------

You can provide translations by using the [openSUSE weblate tool][11].
There are two XDG files,
[icewm.desktop][17] and [icewm-session.desktop][18] which may need manual
translations.  If you have difficulties using the tools, just send me the updated
`.po` file or a patch to apply.


[1]: https://github.com/bbidulock/icewm
[2]: https://github.com/bbidulock/icewm/issues
[3]: https://github.com/ice-wm/icewm/blob/3.9.0/NEWS
[4]: https://github.com/ice-wm/icewm/blob/3.9.0/ChangeLog
[5]: https://github.com/ice-wm/icewm/blob/3.9.0/TODO
[6]: https://github.com/ice-wm/icewm/blob/3.9.0/COMPLIANCE
[7]: https://github.com/ice-wm/icewm/blob/3.9.0/INSTALL
[8]: https://github.com/ice-wm/icewm/blob/3.9.0/BUGS
[9]: https://github.com/ice-wm/icewm/blob/3.9.0/COPYING
[10]: https://github.com/
[11]: https://l10n.opensuse.org/projects/icewm/icewm-1-4-branch/
[12]: https://sourceforge.net/projects/icewm/
[13]: https://ice-wm.org/
[14]: https://ice-wm.org/FAQ/
[15]: https://ice-wm.org/manual/
[16]: https://github.com/bbidulock/bbkeys/
[17]: https://github.com/ice-wm/icewm/blob/master/lib/icewm.desktop
[18]: https://github.com/ice-wm/icewm/blob/master/lib/icewm-session.desktop
[19]: https://github.com/ice-wm/icewm/blob/master/INSTALL-cmakebuild.md
[20]: https://github.com/ice-wm/xde-menu/
[21]: https://ice-wm.org/man/icesound
[22]: https://ice-wm.org/man/icewmbg
[23]: https://ice-wm.org/man/icewmhint
[24]: https://ice-wm.org/man/icewm-menu-fdo
[25]: https://ice-wm.org/man/icesh
[26]: https://ice-wm.org/man/icewm
[27]: https://ice-wm.org/man/icewm-session

[ vim: set ft=markdown sw=4 tw=80 nocin nosi fo+=tcqlorn spell: ]: #