0.51.1 pre snapshot. Be careful, it may be buggy. It fixes some bugs though.
[wmaker-crm.git] / README
blob3f5d13573a91a222bda44979ba5799e20d8957cf
4                                 GNU Window Maker
5                                X11 Window Manager
7                            <http://windowmaker.org>
8                          <ftp://ftp.windowmaker.org>
10                                      by
12                              Alfredo K. Kojima 
14                                  Dan Pascu
16                               Matthew Hawkins
19                                Web/FTP Master
21                                Phillip Smith
25                 Congratulations! You have purchased an extremely fine
26         device that would give you thousands of years of trouble-free 
27         service, except that you undoubtably will destroy it via some 
28         typical bonehead consumer maneuver. Which is why we ask you
29         to PLEASE FOR GOD'S SAKE READ THIS OWNER'S MANUAL CAREFULLY
30         BEFORE YOU UNPACK THE DEVICE. YOU ALREADY UNPACKED IT, DIDN'T
31         YOU? YOU UNPACKED IT AND PLUGGED IT IN AND TURNED IT ON AND 
32         FIDDLED WITH THE KNOBS, AND NOW YOUR CHILD, THE SAME CHILD WHO
33         ONCE SHOVED A POLISH SAUSAGE INTO YOUR VIDEOCASSETTE RECORDER
34         AND SET IT ON "FAST FORWARD", THIS CHILD ALSO IS FIDDLING
35         WITH THE KNOBS, RIGHT?  AND YOU'RE JUST NOW STARTING TO READ 
36         THE INSTRUCTIONS, RIGHT???  WE MIGHT AS WELL JUST BREAK THESE 
37         DEVICES RIGHT AT THE FACTORY BEFORE WE SHIP THEM OUT, YOU 
38         KNOW THAT? 
39                                 -- Dave Barry, "Read This First!"
42 Description
43 ===========
45 Window Maker is the GNU window manager for the X Window System. It was
46 designed to emulate the look and feel of part of the NEXTSTEP(tm) GUI. It's
47 supposed to be relatively fast and small, feature rich, easy to configure and
48 easy to use, with a simple and elegant appearance borrowed from NEXTSTEP(tm).
50 Window Maker was designed keeping integration with GNUstep in mind and is the
51 "official" window manager for it. It is also part of the GNU project
52 (www.gnu.org) Read more about GNUstep further on this file.
54 Hints (information given by applications to integrate well with the window 
55 manager) for Motif(tm), OPEN LOOK(tm), KDE and GNOME are also supported. 
56 So you can replace any of the window managers for these environments
57 with Window Maker while keeping most, if not all, of the native window manager
58 functionality.
60 Window Maker was previously called WindowMaker.
62 Window Maker has no connection with Windowmaker, the software for
63 making windows and doors.
66 Documentation
67 =============
69 * README files all over the source tree have info related to the stuff
70 in the directories.
72 * INSTALL has installation instructions and some troubleshooting tips.
73 You're meant to read it before installing. it was not written just to 
74 fill up space in the package...
76 * FAQ: Frequently Asked Questions. READ IT!!! FAQ.I18N is for
77 internationalization related questions.
79 * NEWS: list user visible changes from the previous version. Read it if
80 you are upgrading.
82 * MIRRORS: some alternative places where you can get Window Maker,
83 including platform specific packages of Window Maker.
85 * BUGFORM: use it to send bug reports. Please do use it.
87 * ChangeLog: what changed from the previous version?
89 * BUGS: list of known bugs
92 *** User Guide
94 The Window Maker User's Guide can be downloaded from the official ftp
95 or web sites.
96 It can also be viewed in HTML format in:
97 http://people.delphi.com/crc3419/WMUserGuide/index.htm
99 The User Guide explains how to use Window Maker, the configuration files
100 and options.
103 *** man pages
105 Type "man wmaker" in the shell prompt to get general help about Window Maker
109 Directories & Files in the Source Tree
110 ======================================
112 * Install is a script for configuring and compiling Window Maker in a easy
113 way (not that the normal way is difficult, but...).
115 * AUTHORS: the credits
117 * TODO: plans for the future
119 * util/ has various utility programs.
121 * WPrefs.app/ is the configuration program. 
123 * src/wconfig.h has compile time options you can change to select some
124 options/features and other stuff. 
126 * WINGs/ NEXTSTEP lookalike widget library
128 * wrlib/ image processing library
130 * po/ has message catalogs wich are the translated versions of the messages
131 displayed by Window Maker.
133 * docklib-x.x.tar.gz  a library for writing dockapps
136 Mailing List
137 ============
139 There is a mailing list for discussing Window Maker at
140 wm-user@windowmaker.org To subscribe to it, send a message containing:
141         subscribe 
142 in the subject of the message to wm-user-request@windowmaker.org
144 If you got a problem, ask there (after reading the docs, of course). The
145 people there is more likely to be able to answer your questions than we are.
146 For bug reports use the BUGFORM.
148 If you have a problem with a precompiled version of Window Maker 
149 (rpm, deb etc), first ask the person who made the package.
151 IMPORTANT NOTE: when asking for help (in the mailing list or to the
152 developerts, directly) *always* send information about the system you are
153 using. You can use the system information section at the end of BUGFORM as a
154 guideline. Another thing: please don't send HTML mail.
157 GNUstep
158 =======
160 GNUstep is a complete object-oriented development system, based on the
161 OpenStep specification released by NeXT(tm) (now Apple(tm)) and Sun(tm). It
162 will provide everything one needs to produce cross-platform, object-oriented,
163 graphical (and non-graphical) applications; providing among other things,
164 base system libraries, a high-level GUI application framework that uses a
165 Display PostScript(tm)-like imaging model (DGS), objects for accessing
166 relational databases, distributed objects and a graphical development
167 environment, with tools like interface modeller, a project management system
168 (project center) and other tools.
170 The GNUstep development system will be used to create a user environment,
171 with everything needed for a complete graphical user interface, such as a
172 file viewer, text editors and other applications. Note that the user
173 environment (or "desktop environment") is only a small part of the whole
174 GNUstep project and therefore it does not "compete" with other projects like
175 KDE or GNOME, simply because they are completely different things.
177 For more information on the GNUstep project, visit: http://www.gnustep.org
178 and http://gnustep.current.nu
181 Running multiple instances of Window Maker
182 ==========================================
184 It is not a good idea to run more than one instance of Window Maker
185 from the same user (so that wmaker will use the same configuration
186 files) at the same time. You might get unexpected behaviour when Window Maker
187 updates it's configuration files.
190 Sound support
191 =============
193 Sound is supported for Linux and FreeBSD systems with the use of a
194 separately distributed module. You can download it at:
195 http://www.frontiernet.net/~southgat/wmsound
197 Note that you must compile Window Maker with the --enable-sound configure
198 flag and set the DisableSound option to NO.
201 OpenL**k support
202 ================
204 I guess many users, mainly from the academic world, have to use
205 applications written using the OpenL**k toolkits, so having support
206 for these apps must be of some use.
208 To enable, use --enable-openlook when doing the configure. Note that
209 not everything is implemented. 
211 Implemented stuff include decoration hints and the push-pin. Not implemented
212 stuff include _SUN_WINDOW_STATE (the compose led state stuff), drag and drop
213 interest stuff, header (not sure what's it) and footer strings.
215 Please give me feedback if something doesn't work. If the feature is
216 already implemented, but is not working because of a bug, I'll try to
217 have that fixed. If it's a non-implemented feature and you mention that
218 it's important (ie: not just cosmetical), I'll consider implementing it.
220 The "out" state of the pushpin is emulated as a pushed-in close button.
221 Just click on the button to make it pushed-out, which corresponds
222 to the pinned-in state of the pushpin. If you push again in the pushed-out
223 close button, it will act as a normal close button: it will close the window.
226 Performance Tuning
227 ==================
229 If you want to diminish Window Maker's memory usage and improve performance,
230 while keeping a nice appearance and good functionality, follow the items
231 bellow:
233 - use solid textures for everything, mainly titlebars and menus. If you
234   want a nice looking desktop, use the Traditional style.
235 - turn NewStyle and Superfluous off
236 - do not bind many shortcuts in the menu and keep only the essential items
237   in the menu
238 - turn on DisableClip
239 - edit wconfig.h and disable the NUMLOCK_HACK and the features you
240   don't use anyway (keep in mind that some of the #defines might not
241   work, as they are not fully supported). Make sure to always keep
242   NumLock and ScrollLock turned off.
243 - turn on DisableAnimations. You can also #undefine ANIMATIONS in wconfig.h
244 - strip down the default IconPath and PixmapPath entries to contain only 
245   the paths that you really have in your system. 
246 - do not use large images in the root background
247 - remove support for image formats you don't use
248 - to reduce memory usage, disable the icon cache, by setting the RIMAGE_CACHE
249   environment variable to 0. If you want to increase performance at the cost
250   of memory usage, set it's value to a value like the number of different
251   icons you use.
254 Keyboard Mouse Control
255 ======================
257 Many people ask about adding keyboard control of mouse, like in fvwm,
258 but Window Maker will not have such feature. The XKB extension supports
259 mouse simulation from the keyboard, in a much more powerfull fashion than
260 any simulation done by a window manager. 
262 To enable it, hit the Control+Shift+NumLock or Shift+NumLock key combination. 
263 You should hear the speaker beeping. To disable it, do the same thing.
265 To control the mouse the numeric keypad is used as follows:
266 - 4 (left arrow), 7 (Home), 8 (up arrow), 9 (PgUp), 6 (right arrow), 
267 3 (PgDn), 2 (down arrow) and 1 (End) move the mouse to the corresponding
268 direction;
269 - holding one of the above keys and then holding the 5 key will move the
270 pointer faster;
271 - / will select the first mouse button (left button);
272 - * will select the second mouse button (middle button);
273 - - will select the third mouse button (right button);
274 - 5 will do a click with the currently selected mouse button;
275 - + will do a double-click with the currently selected button;
276 - 0 (Ins) will click and hold the currently selected button;
277 - . (Del) will release the currently selected button that was previously
278 clicked with the 0 (Ins) key.
281 The above key values work in a XFree86 3.2 (X11R6.1) X server but your
282 milleage may vary.
285 How to make a gdb backtrace
286 ===========================
288 Backtraces can help us fix bugs that make Window Maker crash. If you
289 find a bug that crashes Window Maker, please send a backtrace with your
290 bug report.
292 To make a usefull backtrace, you need a core file with debugging
293 information produced by Window Maker when it crashes. The default
294 for Window Maker is to restart another window manager when it crashes,
295 so you will not get a core file. You need to edit the src/wconfig.h
296 file *after* running configure and change the line that looks like:
298 #undef NO_EMERGENCY_AUTORESTART
302 #define NO_EMERGENCY_AUTORESTART
304 Then, in the src directory type:
305 make CFLAGS=-g
306 make install
308 and wait for Window Maker to be installed.
310 Once having Window Maker installed, start X and reproduce the bug so
311 that Window Maker crashes. When it does crash, type the following from
312 your shell:
314 script
315 gdb wmaker path_to_the_core_file
317 Then, in the gdb prompt type "bt". Quit from gdb by typing "quit"
318 and then, in the shell prompt, type "exit".
320 The file named typescript will contain the backtrace.
324 Copyrights & Disclaimers
325 ========================
327 Window Maker is copyrighted by Alfredo K. Kojima and is licensed through the
328 GNU General Public License. Read the COPYING file for the complete license.
330 The icons that are distributed with this program and were made by Marco van
331 Hylckama Vlieg are licensed through the OpenContent License. Read the 
332 COPYING.OPL file for the complete license.
334 NeXT, OpenStep and NEXTSTEP are a trademarks of NeXT Computer, Inc.
335 All other trademarks are property of their respective owners.
337 The authors reserve the right to make changes in the software without prior
338 notice.
341 Authors
342 =======
344 Alfredo K. Kojima <kojima@windowmaker.org>
345 Dan Pascu <dan@windowmaker.org>
346 Matt Hawkins <matt@windowmaker.org>
348 Please don't ask us questions before reading the documentation (esp. the
349 FAQ, this file and INSTALL files) and about "cool" things you see in
350 people's desktop screenshots.
353 The AUTHORS file contains a list of the people who have contributed to the
354 project. The name of people who have helped with localization (translation)
355 can be found in po/README and Window Maker/README
357 If you have any comments, fixes and bug reports (filled BUGFORMs) send them
358 to developers@windowmaker.org
363 Musicware
364 =========
366 If you use Window Maker and *really* like it, please consider making my day
367 by sending me a music CD (or a MiniDisc or even a MP3 CDR) of your favorite
368 band, singer, instrumentist, composer or whatever :^). I like listening to
369 music and would love to get new CDs, especially from other parts of the
370 world. I like almost any kind of music, from Ozzy Osbourne to Bach (mas não
371 pagode e sertanejo pelamordideus :), so I will be happy to receive just about
372 anything.
374 Snail mail address:
376 Alfredo Kengi Kojima
377 Rua Firmino O. Bimbi, 255/25B
378 Porto Alegre - RS
379 CEP 91751-330
380 Brazil