Files
window-maker.github.io/docs/FAQ.html

1865 lines
121 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>Window Maker: FAQ</title>
<meta charset="utf-8">
<link rel="stylesheet" href="/style.css" media="screen">
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport"
content="width=device-width, minimumscale=1.0, maximum-scale=1.0">
</head>
<body>
<div id="wrapper">
<header>
<h1>
<a href="/">
<span class="first">Window</span><span class="second">Maker</span>
</a>
</h1>
</header>
<aside>
<nav class="menu">
<ul>
<li id="dock">
<a href="#"></a>
</li>
<li id="home" title="Home">
<a href="/">Home</a>
</li>
<li id="news" title="News">
<a href="/news">News</a>
</li>
<li id="docs" title="Documentation">
<a href="/docs">Documentation</a>
</li>
<li id="mail" title="Mailing lists">
<a href="/lists">Mailing</a>
</li>
<li id="devel" title="Development">
<a href="/dev">Development</a>
</li>
<li id="screenshots" title="Screenshots">
<a href="/screenshots">Screenshots</a>
</li>
<li id="themes" title="Themes">
<a href="/themes">Themes</a>
</li>
<li id="links" title="Links">
<a href="/links">Links</a>
</li>
</ul>
</nav>
</aside>
<article>
<div class="document" id="faq">
<h1 class="title">FAQ</h1>
<p>Have questions about Window Maker? If so, look no further. Below is our
collection of Frequently Asked Questions and their corresponding answers. Many
of these have been adapted from the <a class="reference external" href="http://web.archive.org/web/20030401182339/http://www.dpo.uab.edu/~grapeape/wmfaq.html">original FAQ</a>
by Chris Green. Questions are routinely taken and added in from the mailing
lists and IRC forums.</p>
<div class="contents topic" id="table-of-contents">
<p class="topic-title first">Table of Contents</p>
<ul class="auto-toc simple">
<li>
<p><a class="reference internal" href="#introduction-to-window-maker" id="id2"><span class="sectnum">1</span> Introduction to Window Maker</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#what-is-window-maker" id="id3"><span class="sectnum">1.1</span> What is Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#where-can-i-get-window-maker" id="id4"><span class="sectnum">1.2</span> Where can I get Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#where-are-the-mailing-lists-and-archives" id="id5"><span class="sectnum">1.3</span> Where are the mailing lists and archives?</a></p></li>
<li><p><a class="reference internal" href="#where-can-i-find-more-documentation" id="id6"><span class="sectnum">1.4</span> Where can I find more documentation?</a></p></li>
<li><p><a class="reference internal" href="#what-is-an-appicon" id="id7"><span class="sectnum">1.5</span> What is an appicon?</a></p></li>
<li><p><a class="reference internal" href="#how-can-i-get-a-question-added-to-the-faq" id="id8"><span class="sectnum">1.6</span> How can I get a question added to the FAQ?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-report-bugs" id="id9"><span class="sectnum">1.7</span> How do I report bugs?</a></p></li>
<li><p><a class="reference internal" href="#is-there-an-anomymous-cvs-server" id="id10"><span class="sectnum">1.8</span> Is there an anomymous cvs server?</a></p></li>
<li><p><a class="reference internal" href="#where-can-i-find-the-window-maker-irc-channel" id="id11"><span class="sectnum">1.9</span> Where can I find the Window Maker IRC channel?</a></p></li>
<li><p><a class="reference internal" href="#what-is-the-difference-between-appicons-mini-windows-and-minimized-applications" id="id12"><span class="sectnum">1.10</span> What is the difference between appicons, mini-windows, and minimized applications?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-make-sense-of-window-maker-s-version-number-scheme" id="id13"><span class="sectnum">1.11</span> How do I make sense of Window Maker's version number scheme?</a></p></li>
</ul>
</li>
<li>
<p><a class="reference internal" href="#installing-window-maker" id="id14"><span class="sectnum">2</span> Installing Window Maker</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#why-are-no-icons-showing-up-after-installing-window-maker" id="id15"><span class="sectnum">2.1</span> Why are no icons showing up after installing Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-make-window-maker-link-against-libtiff" id="id16"><span class="sectnum">2.2</span> How do I make Window Maker link against libtiff?</a></p></li>
<li>
<p><a class="reference internal" href="#how-do-i-switch-cde-s-window-manager-to-use-windowmaker" id="id17"><span class="sectnum">2.3</span> How do I switch CDE's window manager to use WindowMaker?</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#method-1" id="id18"><span class="sectnum">2.3.1</span> Method 1:</a></p></li>
<li><p><a class="reference internal" href="#method-2" id="id19"><span class="sectnum">2.3.2</span> Method 2:</a></p></li>
<li><p><a class="reference internal" href="#difference-between-the-methods-according-to-thomas" id="id20"><span class="sectnum">2.3.3</span> Difference between the methods: (according to Thomas)</a></p></li>
<li><p><a class="reference internal" href="#owen-stenseth-adds" id="id21"><span class="sectnum">2.3.4</span> Owen Stenseth adds:</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#do-i-need-to-rerun-wmaker-inst-with-every-new-version-of-window-maker" id="id22"><span class="sectnum">2.4</span> Do I need to rerun wmaker.inst with every new version of Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#why-am-i-only-getting-a-root-menu-with-xterm-and-exit-items" id="id23"><span class="sectnum">2.5</span> Why am I only getting a root menu with xterm and exit items?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-window-maker-to-use-more-than-16-colors-on-my-sgi-indy-workstation" id="id24"><span class="sectnum">2.6</span> How do I get Window Maker to use more than 16 colors on my SGI Indy Workstation?</a></p></li>
<li><p><a class="reference internal" href="#using-windowmaker-with-solaris-2-6-cde" id="id25"><span class="sectnum">2.7</span> Using WindowMaker with Solaris 2.6 CDE</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-install-window-maker-on-a-solaris-box" id="id26"><span class="sectnum">2.8</span> How do I install Window Maker on a Solaris box?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-fix-an-error-such-as-libwraster-so-1-cannot-open-shared-object-file" id="id27"><span class="sectnum">2.9</span> How do I fix an error such as libwraster.so.1: cannot open shared object file?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-fix-an-error-dealing-with-aclocal-configure-in-15-macro-am-prog-libtool-not-found-in-library" id="id28"><span class="sectnum">2.10</span> How do I fix an error dealing with aclocal: configure.in: 15: macro 'AM_PROG_LIBTOOL' not found in library?</a></p></li>
<li><p><a class="reference internal" href="#when-i-run-wmaker-it-quits-complaining-about-register-frame-info" id="id29"><span class="sectnum">2.11</span> When I run wmaker, it quits complaining about '__register_frame_info'</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-make-libjpeg-link-against-window-maker" id="id30"><span class="sectnum">2.12</span> How do I make libjpeg link against Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-start-window-maker-after-running-wmaker-inst" id="id31"><span class="sectnum">2.13</span> How do I start Window Maker after running wmaker.inst?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-make-libpng-link-against-window-maker" id="id32"><span class="sectnum">2.14</span> How do I make libpng link against Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-make-giflib-or-libungif-to-link-against-window-maker" id="id33"><span class="sectnum">2.15</span> How do I make giflib or libungif to link against Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-fix-an-error-similar-to-wrlib-could-not-allocate-shared-memory-segment-invalid-argument" id="id34"><span class="sectnum">2.16</span> How do I fix an error similar to "wrlib: could not allocate shared memory segment: invalid argument"</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-add-window-maker-to-the-solaris-dtlogin-screen" id="id35"><span class="sectnum">2.17</span> How do I add Window Maker to the Solaris dtlogin screen?</a></p></li>
<li><p><a class="reference internal" href="#what-happened-to-libproplist" id="id36"><span class="sectnum">2.18</span> What happened to libPropList?</a></p></li>
</ul>
</li>
<li>
<p><a class="reference internal" href="#configuring-window-maker" id="id37"><span class="sectnum">3</span> Configuring Window Maker</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#what-are-those-files-inside-my-gnustep-directory" id="id38"><span class="sectnum">3.1</span> What are those files inside my ~/GNUstep directory?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-enable-the-normal-x-sloppy-focus-mode" id="id39"><span class="sectnum">3.2</span> How do I enable the normal X sloppy focus mode?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-my-auto-arrange-icons-to-work" id="id40"><span class="sectnum">3.3</span> How do I get my auto-arrange icons to work?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-my-meta-tab-to-cycle-through-windows-correctly" id="id41"><span class="sectnum">3.4</span> How do I get my Meta-Tab to cycle through windows correctly?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-a-tile-background-for-my-appicons-those-things-in-the-dock" id="id42"><span class="sectnum">3.5</span> How do I get a tile background for my appicons (those things in the dock)?</a></p></li>
<li><p><a class="reference internal" href="#how-do-you-dock-insert-program-here-that-doesn-t-have-an-appicon-in-the-new-version-of-windowmaker" id="id43"><span class="sectnum">3.6</span> How do you dock &lt;insert program here&gt; that doesn't have an appicon in the new version of WindowMaker?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-x11amp-to-not-have-a-title-bar-or-any-other-program-for-that-matter" id="id44"><span class="sectnum">3.7</span> How do I get x11amp to not have a title bar ( or any other program for that matter )?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-set-a-pixmap-background" id="id45"><span class="sectnum">3.8</span> How do I set a pixmap background?</a></p></li>
<li><p><a class="reference internal" href="#can-i-put-pixmaps-in-my-root-menu-and-title-bars" id="id46"><span class="sectnum">3.9</span> Can I put pixmaps in my root menu and title bars?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-my-minimize-icon-to-look-like-the-triangle-i-see-in-screenshots" id="id47"><span class="sectnum">3.10</span> How do I get my Minimize Icon to look like the triangle I see in screenshots?</a></p></li>
<li><p><a class="reference internal" href="#why-does-netscape-have-a-black-and-white-icon-when-i-minimize-it" id="id48"><span class="sectnum">3.11</span> Why does Netscape have a black and white Icon when I minimize it?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-superfluous-bells-and-whistles-working" id="id49"><span class="sectnum">3.12</span> How do I get superfluous bells and whistles working?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-the-classic-next-tm-like-style-back" id="id50"><span class="sectnum">3.13</span> How do I get the classic NeXT(tm)-like style back?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-the-window-menu-with-only-a-two-button-mouse" id="id51"><span class="sectnum">3.14</span> How do I get the window menu with only a two button mouse?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-edit-my-root-menu" id="id52"><span class="sectnum">3.15</span> How do I edit my root menu?</a></p></li>
<li><p><a class="reference internal" href="#wprefs-disappeared-from-the-dock-how-do-i-get-it-back" id="id53"><span class="sectnum">3.16</span> WPrefs disappeared from the Dock! How do I get it back?</a></p></li>
<li><p><a class="reference internal" href="#how-can-i-define-my-own-icon-for-a-program-instead-of-the-icon-the-application-supplies" id="id54"><span class="sectnum">3.17</span> How can I define my own Icon for a program? (instead of the Icon the Application Supplies?)</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-turn-off-the-workspace-titles-between-workspaces" id="id55"><span class="sectnum">3.18</span> How do I turn off the workspace titles between workspaces?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-add-dynamic-items-to-my-root-menu" id="id56"><span class="sectnum">3.19</span> How do I add dynamic items to my root menu?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-remove-or-hide-appicons" id="id57"><span class="sectnum">3.20</span> How do I remove or hide appicons?</a></p></li>
<li><p><a class="reference internal" href="#i-disabled-my-titlebar-how-can-i-get-it-back" id="id58"><span class="sectnum">3.21</span> I disabled my titlebar. How can I get it back?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-remove-alt-mouse1-from-the-action-window-maker-grabs-for-an-application" id="id59"><span class="sectnum">3.22</span> How do I remove ALT+Mouse1 from the action Window Maker grabs for an application?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-configure-the-dock-and-clip-to-use-less-space-on-a-small-screen" id="id60"><span class="sectnum">3.23</span> How do I configure the Dock and Clip to use less space on a small screen?</a></p></li>
<li><p><a class="reference internal" href="#why-do-dashes-not-work-as-menu-entries" id="id61"><span class="sectnum">3.24</span> Why do dashes not work as menu entries?</a></p></li>
</ul>
</li>
<li>
<p><a class="reference internal" href="#using-window-maker" id="id62"><span class="sectnum">4</span> Using Window Maker</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#how-do-add-new-icons-to-the-dock" id="id63"><span class="sectnum">4.1</span> How do add new icons to the Dock?</a></p></li>
<li><p><a class="reference internal" href="#what-is-the-difference-between-the-exit-and-exit-session-option" id="id64"><span class="sectnum">4.2</span> What is the difference between the Exit and Exit Session Option?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-dock-icons-on-the-clip" id="id65"><span class="sectnum">4.3</span> How do I "dock" icons on the clip?</a></p></li>
<li><p><a class="reference internal" href="#why-do-none-of-my-key-bindings-ie-alt-work-in-window-maker" id="id66"><span class="sectnum">4.4</span> Why do none of my key bindings (ie: Alt+#) work in Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-rename-workspaces" id="id67"><span class="sectnum">4.5</span> How do I rename workspaces?</a></p></li>
<li><p><a class="reference internal" href="#how-can-i-resize-a-window-if-the-window-is-larger-than-my-current-desktop" id="id68"><span class="sectnum">4.6</span> How can I resize a window if the window is larger than my current desktop?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-undock-appicons" id="id69"><span class="sectnum">4.7</span> How do I "undock" appicons?</a></p></li>
<li><p><a class="reference internal" href="#when-i-run-wmaker-it-complains-about-not-being-able-to-load-any-fonts" id="id70"><span class="sectnum">4.8</span> When I run wmaker it complains about not being able to load any fonts.</a></p></li>
<li><p><a class="reference internal" href="#what-is-the-purpose-of-being-able-to-draw-a-box-on-the-root-menu-with-a-left-click" id="id71"><span class="sectnum">4.9</span> What is the purpose of being able to draw a box on the root menu with a left click?</a></p></li>
</ul>
</li>
<li>
<p><a class="reference internal" href="#application-compatibility" id="id72"><span class="sectnum">5</span> Application Compatibility</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#how-do-i-assign-gimp-an-appicon" id="id73"><span class="sectnum">5.1</span> How do I assign gimp an appicon?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-an-appicon-for-xemacs-20-3" id="id74"><span class="sectnum">5.2</span> How do I get an appicon for XEmacs 20.3+?</a></p></li>
<li><p><a class="reference internal" href="#where-do-i-get-the-nifty-clock-program-i-always-see-on-people-s-desktops" id="id75"><span class="sectnum">5.3</span> Where do I get the nifty clock program I always see on people's desktops?</a></p></li>
<li><p><a class="reference internal" href="#how-do-you-dock-asclock" id="id76"><span class="sectnum">5.4</span> How do you dock asclock?</a></p></li>
<li><p><a class="reference internal" href="#where-can-i-get-more-dockapps" id="id77"><span class="sectnum">5.5</span> Where can I get more dockapps?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-an-appicon-for-rxvt-so-i-can-dock-it" id="id78"><span class="sectnum">5.6</span> How do I get an appicon for rxvt so I can dock it?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-allow-alt-to-work-in-an-rxvt-xterm-session" id="id79"><span class="sectnum">5.7</span> How do I allow Alt+# to work in an rxvt/xterm session?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-different-icons-for-different-rxvt-s-and-xterms" id="id80"><span class="sectnum">5.8</span> How do I get different icons for different rxvt's and xterms?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-launch-multiple-instances-of-xterm-from-one-appicon" id="id81"><span class="sectnum">5.9</span> How do I launch multiple instances of XTerm from one appicon?</a></p></li>
<li><p><a class="reference internal" href="#window-maker-breaks-scilab" id="id82"><span class="sectnum">5.10</span> Window Maker breaks scilab.</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-a-transparent-xterm-rxvt-xconsole" id="id83"><span class="sectnum">5.11</span> How do I get a transparent xterm/rxvt/xconsole?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-dock-an-arbitrary-console-application-like-mutt" id="id84"><span class="sectnum">5.12</span> How do I dock an arbitrary console application like mutt?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-an-appicon-for-netscape" id="id85"><span class="sectnum">5.13</span> How do I get an appicon for Netscape?</a></p></li>
<li><p><a class="reference internal" href="#how-can-i-dock-an-application-from-a-remote-machine-using-ssh" id="id86"><span class="sectnum">5.14</span> How can I dock an application from a remote machine using ssh?</a></p></li>
<li><p><a class="reference internal" href="#how-do-you-make-an-omnipresent-window-not-take-focus-whenever-switching-workspaces" id="id87"><span class="sectnum">5.15</span> How do you make an omnipresent window not take focus whenever switching workspaces?</a></p></li>
</ul>
</li>
<li>
<p><a class="reference internal" href="#themes-and-dockapps" id="id88"><span class="sectnum">6</span> Themes and Dockapps</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#what-exactly-are-themes" id="id89"><span class="sectnum">6.1</span> What exactly are themes?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-install-a-theme" id="id90"><span class="sectnum">6.2</span> How do I install a theme?</a></p></li>
<li><p><a class="reference internal" href="#why-do-my-themes-not-load-the-background" id="id91"><span class="sectnum">6.3</span> Why do my themes not load the background?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-make-a-theme" id="id92"><span class="sectnum">6.4</span> How do I make a Theme?</a></p></li>
<li><p><a class="reference internal" href="#i-untarred-a-theme-in-gnustep-library-windowmaker-like-the-readme-says-but-it-doesnt-show-up-in-the-menu" id="id93"><span class="sectnum">6.5</span> I untarred a theme in ~/GNUstep/Library/WindowMaker like the README says,but it doesnt show up in the menu!</a></p></li>
</ul>
</li>
<li>
<p><a class="reference internal" href="#miscellaneous-questions" id="id94"><span class="sectnum">7</span> Miscellaneous Questions</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#is-there-a-pager-for-window-maker" id="id95"><span class="sectnum">7.1</span> Is there a pager for Window Maker?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-use-getstyle-and-setstyle" id="id96"><span class="sectnum">7.2</span> How do I use getstyle and setstyle?</a></p></li>
<li><p><a class="reference internal" href="#why-was-libproplist-removed-from-the-distribution" id="id97"><span class="sectnum">7.3</span> Why was libPropList removed from the distribution?</a></p></li>
<li><p><a class="reference internal" href="#why-don-t-you-distribute-normal-diff-or-xdelta-patches" id="id98"><span class="sectnum">7.4</span> Why don't you distribute normal diff or xdelta patches?</a></p></li>
<li><p><a class="reference internal" href="#will-you-add-gnome-or-kde-support" id="id99"><span class="sectnum">7.5</span> Will you add GNOME or KDE support?</a></p></li>
<li><p><a class="reference internal" href="#how-can-i-produce-a-backtrace-when-window-maker-keeps-crashing" id="id100"><span class="sectnum">7.6</span> How can I produce a backtrace when Window Maker keeps crashing?</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#troubleshooting-tips" id="id101"><span class="sectnum">8</span> Troubleshooting Tips</a></p></li>
<li>
<p><a class="reference internal" href="#programming-for-window-maker" id="id102"><span class="sectnum">9</span> Programming for Window Maker</a></p>
<ul class="auto-toc">
<li><p><a class="reference internal" href="#how-do-i-get-a-normal-x-application-to-produce-an-appicon" id="id103"><span class="sectnum">9.1</span> How do I get a normal X application to produce an appicon?</a></p></li>
<li><p><a class="reference internal" href="#how-do-i-get-my-tcl-tk-application-to-produce-an-appicon" id="id104"><span class="sectnum">9.2</span> How do I get my tcl/tk application to produce an appicon?</a></p></li>
<li><p><a class="reference internal" href="#what-is-wings" id="id105"><span class="sectnum">9.3</span> What is WINGs?</a></p></li>
<li><p><a class="reference internal" href="#where-can-i-get-more-information-about-wings" id="id106"><span class="sectnum">9.4</span> Where can I get more information about WINGs?</a></p></li>
</ul>
</li>
</ul>
</div>
<hr class="docutils">
<div class="section" id="introduction-to-window-maker">
<h1>
<span class="sectnum">1</span> Introduction to Window Maker</h1>
<div class="section" id="what-is-window-maker">
<h2>
<span class="sectnum">1.1</span> What is Window Maker?</h2>
<p>Window Maker is an X11 window manager originally designed to provide
integration support for the GNUstep Desktop Environment. In every way
possible, it reproduces the elegant look and feel of the NEXTSTEP[tm] user
interface. It is fast, feature rich, easy to configure, and easy to use. It is
also free software and part of the GNU Project, with contributions being made
by programmers from around the world</p>
</div>
<div class="section" id="where-can-i-get-window-maker">
<h2>
<span class="sectnum">1.2</span> Where can I get Window Maker?</h2>
<p>Window Maker can be obtained from the official website, <a class="reference external" href="http://windowmaker.org/">http://windowmaker.org/</a>,
or from various mirror sites listed at <a class="reference external" href="http://windowmaker.org/mirrors.html">http://windowmaker.org/mirrors.html</a></p>
</div>
<div class="section" id="where-are-the-mailing-lists-and-archives">
<h2>
<span class="sectnum">1.3</span> Where are the mailing lists and archives?</h2>
<p>All information regarding the Window Maker
mailing lists can be found at <a class="reference external" href="http://windowmaker.org/lists.html">http://windowmaker.org/lists.html</a></p>
</div>
<div class="section" id="where-can-i-find-more-documentation">
<h2>
<span class="sectnum">1.4</span> Where can I find more documentation?</h2>
<p>Additional documentation can be found in the Window Maker source distribution,
or at <a class="reference external" href="http://windowmaker.org/documentation.html">http://windowmaker.org/documentation.html</a></p>
</div>
<div class="section" id="what-is-an-appicon">
<h2>
<span class="sectnum">1.5</span> What is an appicon?</h2>
<p>An appicon is the icon produced by an application that initially is in the
bottom left corner of the screen while an application is running. For an
example, run xterm and notice the icon in the corner (make sure that you use
xterm and not a default rxvt when testing, because many versions of rxvt do not
properly set their window attributes).</p>
<!-- TODO (fix link) -->
<p>For a more indepth discussion of how an appicon relates to Window Maker, see
question 1.10</p>
</div>
<div class="section" id="how-can-i-get-a-question-added-to-the-faq">
<h2>
<span class="sectnum">1.6</span> How can I get a question added to the FAQ?</h2>
<p>For now, the best method is to E-mail your question to <a class="reference external" href="mailto:faq@windowmaker.org">faq@windowmaker.org</a>. We
are working on a web-based submission form to our FAQ system, which will enable
users to submit questions for review.</p>
</div>
<div class="section" id="how-do-i-report-bugs">
<h2>
<span class="sectnum">1.7</span> How do I report bugs?</h2>
<!-- TODO link to the bugform? -->
<!-- TODO wrong url for bugtracker (we don;t have any!) -->
<p>You can look at the BUGFORM file in the source distribution of Window Maker.
Alternatively, you can use the Window Maker Bug Tracker at
<a class="reference external" href="http://windowmaker.org/cgi-bin/bugs">http://windowmaker.org/cgi-bin/bugs</a></p>
</div>
<div class="section" id="is-there-an-anomymous-cvs-server">
<h2>
<span class="sectnum">1.8</span> Is there an anomymous cvs server?</h2>
<p>Yes there is. To check out from cvs, first</p>
<pre class="code console highlight literal-block"><code><span class="go">export CVSROOT=":pserver:anoncvs@cvs.windowmaker.org:/cvsroot"
cvs login</span></code></pre>
<p>There is no password, so simply hit enter when prompted.</p>
<p>Then issue the following command ("wm" is the name of the module):</p>
<pre class="code console highlight literal-block"><code><span class="go">cvs -z3 checkout -d WindowMaker wm</span></code></pre>
<p>To update your source tree, cd to the WindowMaker directory and type</p>
<pre class="code console highlight literal-block"><code><span class="go">cvs -z3 update -dP</span></code></pre>
<p>inside the WindowMaker directory.</p>
<p>For more detailed CVS instructions, please visit
<a class="reference external" href="http://windowmaker.org/development-cvs.html">http://windowmaker.org/development-cvs.html</a></p>
</div>
<div class="section" id="where-can-i-find-the-window-maker-irc-channel">
<h2>
<span class="sectnum">1.9</span> Where can I find the Window Maker IRC channel?</h2>
<!-- TODO change irc server to freenode -->
<p>The official Window Maker IRC channel can be accessed by connecting to
irc.windowmaker.org on port 6667, and joining #WindowMaker</p>
</div>
<div class="section" id="what-is-the-difference-between-appicons-mini-windows-and-minimized-applications">
<h2>
<span class="sectnum">1.10</span> What is the difference between appicons, mini-windows, and minimized applications?</h2>
<p>Thanks to Jim Knoble for this answer:</p>
<p>Many window managers are capable of turning large windows into smaller <em>icons</em>
which represent the window yet don't take as much screen real estate. We're
all familiar with that model.</p>
<p>Window Maker has two kinds of these icons. One kind is created when an
application - technically, a window group - is started. It represents the
entire application and is called an <em>appicon</em>. Such icons are square tiles
containing only the picture which represents the application; they have no
titles.</p>
<p>The second kind of icon in Window Maker is created when a particular window
(possibly one belonging to an application displaying more than one window) is
<em>miniaturized</em> (which is the same action as <em>minimizing</em> or <em>iconifying</em> in
other window management models) using the miniaturization button on the
window's titlebar. These miniaturized windows are called <em>miniwindows</em> and can
normally be distinguished from appicons by their small titlebar at the top of
the tile.</p>
</div>
<div class="section" id="how-do-i-make-sense-of-window-maker-s-version-number-scheme">
<h2>
<span class="sectnum">1.11</span> How do I make sense of Window Maker's version number scheme?</h2>
<p>The numbering scheme is relatively simple, and is in the format of three
numbers separated by dots. The first number is the "major" revision number.
The second is the "minor" revision number. And finally, the third is the "patch
level" number.</p>
<p>To put this all into perspective, let's examine the version number "0.65.1".
This number signifies that there has not been a major revision release, that
its minor revision is newer than the previous one (0.64.x), and that it's on
the first patch level after the 0.65.0 release. This still might be confusing,
so go away with this in mind: numbers ending in .0 tend to be new feature
releases but less stable than .1, .2, .3 patch level releases, the latter of
which are used to fix bugs.</p>
<p>It is generally safe to go with the highest numbered patch release.</p>
</div>
</div>
<hr class="docutils">
<div class="section" id="installing-window-maker">
<h1>
<span class="sectnum">2</span> Installing Window Maker</h1>
<div class="section" id="why-are-no-icons-showing-up-after-installing-window-maker">
<h2>
<span class="sectnum">2.1</span> Why are no icons showing up after installing Window Maker?</h2>
<p>As of WindowMaker version 0.15.0, the default setup includes .tiff icons which
require you to have compiled Window Maker with libtiff support. For assistance
on compiling libtiff, see the following question.</p>
</div>
<div class="section" id="how-do-i-make-window-maker-link-against-libtiff">
<h2>
<span class="sectnum">2.2</span> How do I make Window Maker link against libtiff?</h2>
<p>Many UNIX operating systems have difficulty finding third party libraries by
default. Unfortunately, there are too many of these to include instructions for
them all.</p>
<p>In general, you will want to ensure the latest version of libtiff is installed
(see <a class="reference external" href="ftp://www.libtiff.org">ftp://www.libtiff.org</a>). Typically on non-Linux systems, libtiff will be
located under /usr/local, with includes and libs in those respective
sub-directories.</p>
<p>Often, it will be necessary to add /usr/local/lib to the system's
LD_LIBRARY_PATH environment variable (especially so on Solaris, but see 'man
ld' for details on your platform). Furthermore, it is possible to supply
special flags to the configure script to help it find where the libraries are.
An example is given below:</p>
<pre class="code console highlight literal-block"><code><span class="go">./configure --with-libs-from="-L/usr/local/lib" \
--with-incs-from="-I/usr/local/include"</span></code></pre>
<p>Also, you will want to make sure you're using GNU make (gmake) for the Window
Maker compile.</p>
</div>
<div class="section" id="how-do-i-switch-cde-s-window-manager-to-use-windowmaker">
<h2>
<span class="sectnum">2.3</span> How do I switch CDE's window manager to use WindowMaker?</h2>
<div class="section" id="method-1">
<h3>
<span class="sectnum">2.3.1</span> Method 1:</h3>
<p>Peter Ilberg gives us this answer:</p>
<p>Install WM wherever you want it, mine is in /opt/WindowMaker-0.16.0 (eg. use
./configure --prefix=/opt/WindowMaker-0.16.0). Run the install script
wmaker.inst in your home directory.</p>
<p>Add the following two lines to .dtprofile in your home directory:</p>
<pre class="code console highlight literal-block"><code><span class="go">SESSIONTYPE=xdm; export SESSIONTYPE
</span><span class="gp">PATH=:/usr/contrib/bin/X11:$</span>PATH:.<span class="p">;</span> <span class="nb">export</span> PATH</code></pre>
<p>This tells CDE to go looking for an .xinitrc/.xsession instead of using the
default environment.</p>
<p>Make your .xsession/.xinitrc executable (VERY IMPORTANT, wmaker.inst did NOT do
this automatically for me) using eg.</p>
<pre class="code console highlight literal-block"><code><span class="go">chmod ugo+x .xsession</span></code></pre>
<p>Your .xsession/.xinitrc should look something like this:</p>
<pre class="code bash highlight literal-block"><code><span class="ch">#!/bin/sh
</span>
&lt;some other init stuff that you want/need&gt;
<span class="nb">exec</span> wmaker</code></pre>
<p>Things to try if it doesn't work: (somewhat fuzzy and random)</p>
<p>This should do it although I did have problems sometimes initially which I
fixed by randomly trying absolute pathes for wmaker in .xsession/.xinitrc
and/or making the dtprofile/.xinitrc/etc executable. It helps logging in on the
console (select from CDE login screen) and start X manually using "X". If it
works that way it should work when logging into the CDE environment. Remember
to Check your paths!</p>
<p>If it doesn't work, you can also substitute some other window manager for
wmaker in the .xinitrc and see if that works. If it does you know at least that
.xinitrc is getting called/executed, so your WM path is wrong or not set.</p>
</div>
<div class="section" id="method-2">
<h3>
<span class="sectnum">2.3.2</span> Method 2:</h3>
<p>Thomas Hanselman gave this alternative answer (via Peter Ilberg):</p>
<p>Build and install WM wherever you want, as described in Method 1. You can
install and run WM just fine from your home directory. That's what I'm doing,
since I don't have root access at work :(. Then, in your Xdefaults file in your
home directory, add the following line:</p>
<pre class="code console highlight literal-block"><code><span class="go">Dtsession*wmStartupCommand: &lt;path to WindowMaker executable&gt;</span></code></pre>
<p>Then, log out, and log back in, and, unless I've forgotten a step (or this is a
custom Nortel thing), you should be in Window Maker heaven ;).</p>
</div>
<div class="section" id="difference-between-the-methods-according-to-thomas">
<h3>
<span class="sectnum">2.3.3</span> Difference between the methods: (according to Thomas)</h3>
<p>I've been told that the difference between setting the resource and Peter's
method is that if you override the window manager with the resouce, you still
get the CDE resources read into the resource database (so you still have your
color settings &amp; such from CDE), whereas with Peter's, the CDE resource
don't get read into the database. I don't know if this is true or not, however.
Also, another thing to note with Window Maker and HP-UX 10.20 - if you select
"Exit Session" from the WM root menu, WindowMaker and all of your applications
are killed, but you may not be logged out. Again, this might be an artifact
from my work environment, or the way I start Window Maker.</p>
</div>
<div class="section" id="owen-stenseth-adds">
<h3>
<span class="sectnum">2.3.4</span> Owen Stenseth adds:</h3>
<p>When using this method it is possible to exit Window Maker cleanly by using the
dtaction command. I use the following in my Window Maker menu:</p>
<pre class="code highlight literal-block"><code>"Exit Session" EXEC dtaction ExitSession</code></pre>
<p>The only problem I have at the moment is I seem to get multiple copies of
asclock running when I log in again.</p>
</div>
</div>
<div class="section" id="do-i-need-to-rerun-wmaker-inst-with-every-new-version-of-window-maker">
<h2>
<span class="sectnum">2.4</span> Do I need to rerun wmaker.inst with every new version of Window Maker?</h2>
<p>Dan Pascu reveals the answer:</p>
<p>If this is necessary, it will be listed in the NEWS file included in the source
distribution. Since 0.15.x, the domain files have been changed in such a way
that re-running wmaker.inst is redundant. The user config files are by default
merged in with the global ones normally located in
/usr/local/share/WindowMaker/Defaults. So, even if new options are added, they
should be automatically added to the environment.</p>
</div>
<div class="section" id="why-am-i-only-getting-a-root-menu-with-xterm-and-exit-items">
<h2>
<span class="sectnum">2.5</span> Why am I only getting a root menu with xterm and exit items?</h2>
<p>Most likely, the problem is that Window Maker can not find a copy of the C pre
processor in a directory such as /lib. The file /lib/cpp should be a symbolic
link to whatever C compiler's cpp you are using. For example:</p>
<pre class="code shell-session highlight literal-block"><code><span class="gp">$</span> file <span class="sb">`</span>which cpp<span class="sb">`</span>
<span class="go">/usr/bin/cpp link to /usr/bin/cpp-2.95</span></code></pre>
<p>Another possibility is your /usr/X11/lib/X11/xinit/xinitrc is a broken symlink.
Either create a new symlink, or do something like:</p>
<pre class="code shell-session highlight literal-block"><code><span class="gp">$</span> cp /usr/X11/lib/X11/xinit/xinitrc.fvwm2 <span class="se">\
</span> /usr/X11/lib/X11/xinit/xinitrc.wmaker
<span class="gp">$</span> ln -sf /usr/X11/lib/X11/xinit/xinitrc.wmaker <span class="se">\
</span> /usr/X11/lib/X11/xinit/xinitrc</code></pre>
<p>then just edit /usr/X11/lib/X11/xinit/xinitrc and replace the exec of 'fvwm2'
by '/usr/local/bin/wmaker' (should be somewhere towards the end of the file,
most probably the very last line).</p>
<p>Thanks to Tomas Szepe for the second part.</p>
</div>
<div class="section" id="how-do-i-get-window-maker-to-use-more-than-16-colors-on-my-sgi-indy-workstation">
<h2>
<span class="sectnum">2.6</span> How do I get Window Maker to use more than 16 colors on my SGI Indy Workstation?</h2>
<p>Thanks to Peter H. Choufor this answer:</p>
<p>By default, the SGI X Server uses 8-bit Pseudocolor mode. To change it, edit
(as root) the file /usr/lib/X11/xdm/Xservers. Change it to read:</p>
<pre class="code highlight literal-block"><code>:0 secure /usr/bin/X11/X -bs -c -class TrueColor -depth 24</code></pre>
</div>
<div class="section" id="using-windowmaker-with-solaris-2-6-cde">
<h2>
<span class="sectnum">2.7</span> Using WindowMaker with Solaris 2.6 CDE</h2>
<p>Thanks to Rob Funk for this answer:</p>
<p>Assuming you installed Window Maker according to the README's that come with
the source, all you need to run Window Maker on a Solaris box is an entry in
the .xinitrc. This should work for any version. When you run wmaker.inst the
first time, allow it to make changes to the .xinitrc file. Mine looks like
this:</p>
<pre class="code sh highlight literal-block"><code><span class="ch">#!/bin/sh
</span><span class="c1"># Window Maker Default .xinitrc
</span><span class="nb">exec</span> /usr/local/bin/wmaker</code></pre>
<p>Believe it or not, that's all that it takes. This, in fact, runs Window Maker
instead of OpenWindows. In order to choose Window Maker, you simply choose
"OpenWindows Desktop" in the "Options - Session" Menus And Choose "CDE Desktop"
if you want CDE.</p>
<p>The color schemes and settings for Window Maker are seperate from CDE. I tested
on a SPARC 10, but I assume Solaris x86 would work also.</p>
<p>(webmaster note: It works fine on Solaris x86)</p>
</div>
<div class="section" id="how-do-i-install-window-maker-on-a-solaris-box">
<h2>
<span class="sectnum">2.8</span> How do I install Window Maker on a Solaris box?</h2>
<p>Here are some hints from John Kemp:</p>
<p>Installing Window Maker on a Solaris 2.6 box might require one or two little
hints. Here you are (this was on a system running xdm by the way, but similar
suggestions apply otherwise):</p>
<ol class="arabic">
<li>
<p>/usr/openwin/lib/X11/xdm/Xservers like this:</p>
<pre class="code highlight literal-block"><code>:0 local /usr/openwin/bin/X -dev /dev/fb defdepth 24 defclass TrueColor</code></pre>
</li>
<li>
<p>Turn off shm in the WindowMaker configure:</p>
<pre class="code shell-session highlight literal-block"><code><span class="gp">$</span> ./configure --disable-shm</code></pre>
</li>
<li>
<p>might have to modify your LD_LIBRARY_PATH:, or make "wmaker" a script that
does it for you (mv wmaker wmaker.exe):</p>
<pre class="code sh highlight literal-block"><code><span class="nv">LD_LIBRARY_PATH</span><span class="o">=</span>/usr/local/lib:/usr/local/X11/lib:/usr/lib:/usr/openwin/lib
<span class="nb">export</span> LD_LIBRARY_PATH
/usr/local/bin/wmaker.exe <span class="nv">$*</span></code></pre>
</li>
</ol>
<p>The real key is the "--disable-shm".</p>
<p>(webmaster note: Window Maker should work fine with SHM enabled, at least it
does under Solaris 8. Try the default first, and then use this if you run into
problems with it)</p>
</div>
<div class="section" id="how-do-i-fix-an-error-such-as-libwraster-so-1-cannot-open-shared-object-file">
<h2>
<span class="sectnum">2.9</span> How do I fix an error such as libwraster.so.1: cannot open shared object file?</h2>
<p>If you have an error when running Window Maker such as</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">libwraster.so.1: cannot open shared object file</span></code></pre>
<p>These are the instructions for Linux.</p>
<p>First, make sure that /usr/local/lib ( or whatever directory you installed
Window Maker to) is listed in your /etc/ld.so.conf ). You need to run ldconfig
so the new shared libraries will be loaded. After running ldconfig as root, the
linker should properly load the libraries. You need to run this every time you
update Window Maker.</p>
<p>Thanks to Joseph Czapiga, the BSD procedure for adding shared library
directories is:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">ldconfig -m /usr/local/lib (m means merge)</span></code></pre>
</div>
<div class="section" id="how-do-i-fix-an-error-dealing-with-aclocal-configure-in-15-macro-am-prog-libtool-not-found-in-library">
<h2>
<span class="sectnum">2.10</span> How do I fix an error dealing with aclocal: configure.in: 15: macro 'AM_PROG_LIBTOOL' not found in library?</h2>
<p>You need to install libtool. It also must be a libtool different from version
1.2b ( shipped with redhat 5.2 ). You can get libtool from ftp.gnu.org/pub/gnu
Make sure the autoconf and automake versions you have installed are at least:</p>
<ul class="simple">
<li><p>autoconf 2.12</p></li>
<li><p>automake 1.3</p></li>
<li><p>libtool 1.2</p></li>
</ul>
<p>From Blaine Horrocks:</p>
<p><em>You can also work around this problem on RedHat5.2 by copying the distributed
aclocal.m4 to acinclude.m4 before running configure for the first time.
Configure works fine and doing the make succeeds.</em></p>
</div>
<div class="section" id="when-i-run-wmaker-it-quits-complaining-about-register-frame-info">
<h2>
<span class="sectnum">2.11</span> When I run wmaker, it quits complaining about '__register_frame_info'</h2>
<p>This is related to having compiled Window Maker on a system whose libraries
were compiled by egcs or gcc 2.8.0, and then using the binaries on a system
whose libraries were compiled by gcc 2.7.2.x</p>
<p>Try compiling Window Maker with the newer gcc or recompile your system
libraries with the older gcc. It's generally a bad idea to mix and match.</p>
</div>
<div class="section" id="how-do-i-make-libjpeg-link-against-window-maker">
<h2>
<span class="sectnum">2.12</span> How do I make libjpeg link against Window Maker?</h2>
<p>The newest jpeg libs are availible at <a class="reference external" href="http://www.ijg.org">http://www.ijg.org</a></p>
<p>How many of you have seen that darned "lib reports 62 caller expects 61" type
of error? Here are some answers that will possibly help you out.</p>
<p>First things first. As always, make sure there are not older copies of libjpeg
floating around on your system. ]Some distributions by default come with an old
libjpeg.so.1 in the /usr/X11R6/lib/ directory. This can simply be deleted. Or
if something complains after you delete it, recompile it if you can to look for
the new lib in the right place, or if that fails, as a last resort, you might
add a symlink to the new lib like so:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">ln -s /usr/local/lib/libjpeg.so.6.0.2 libjpeg.so.1</span></code></pre>
<p>Note that you should use your system's version of ldconfig to properly manage
your library cache (or other appropriate mechanism).</p>
<p>On Linux, this would mean having /usr/local/lib in /etc/ld.so.conf and then
running ldconfig.</p>
<p>Now on to the error. This is basically caused by your application having been
compiled to dynamically use the libjpeg.so shared library. When you install a
new lib and then try to run your program again, it expects the lib it was
compiled against, in this case the older libjpeg.so.6.0.1 and instead finds
libjpeg.so.6.0.2 and reports the error.</p>
<p>The fix is actually rather simple. Along with adding a libjpeg.so.6 symlink
like so (just in case):</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">ln -s libjpeg.so.6.0.2 libjpeg.so.6</span></code></pre>
<p>where you installed your new lib, you simply need to recompile your app too
link it against the new library.</p>
<p>Also, make sure to use GNU make for the Window Maker compile.</p>
</div>
<div class="section" id="how-do-i-start-window-maker-after-running-wmaker-inst">
<h2>
<span class="sectnum">2.13</span> How do I start Window Maker after running wmaker.inst?</h2>
<p>As of version 0.53.0, the wmaker.inst script will modify your X startup script
(.xinitrc or .Xclients or .Xsession) to do something thats (hopefully)
appropriate.</p>
<p>In order to run wmaker, a user needs to have an ~/.xinitrc file consisting of
something similar to</p>
<pre class="code sh highlight literal-block"><code><span class="ch">#!/bin/sh
</span><span class="nb">exec</span> wmaker</code></pre>
<p>This will vary from system to system, but the existance of an .xinitrc file
will generally override the system defaults.</p>
</div>
<div class="section" id="how-do-i-make-libpng-link-against-window-maker">
<h2>
<span class="sectnum">2.14</span> How do I make libpng link against Window Maker?</h2>
<p>The newest png libs are availible at <a class="reference external" href="http://www.libpng.org/pub/png/libpng.html">http://www.libpng.org/pub/png/libpng.html</a></p>
<p>You should also get the newest zlib libs from <a class="reference external" href="http://www.gzip.org">http://www.gzip.org</a></p>
<p>Generally, the same rules apply here as with libjpeg. Make sure there are no
older versions of the necessary libs floating around on your system, then try
to configure and make again.</p>
<p>Also, make sure to use GNU make (gmake) for the Window Maker compile.</p>
</div>
<div class="section" id="how-do-i-make-giflib-or-libungif-to-link-against-window-maker">
<h2>
<span class="sectnum">2.15</span> How do I make giflib or libungif to link against Window Maker?</h2>
<p>The newest versions of both these libraries are available at
<a class="reference external" href="http://prtr-13.ucsc.edu/~badger/software/">http://prtr-13.ucsc.edu/~badger/software/</a></p>
<p>Users have had a few problems with giflib... it seems that the install process
didn't install the header file libgif.h, so although the Window Maker configure
found the lib (libgif.so.x), when you actually try to compile, it fails when it
looks for the header to include the make. One solution is to simply copy it
from the libgif source directory to the local system include directory.
(/usr/local/include/ on many systems).</p>
<p>Also, make sure to use GNU make (gmake) for the Window Maker compile.</p>
</div>
<div class="section" id="how-do-i-fix-an-error-similar-to-wrlib-could-not-allocate-shared-memory-segment-invalid-argument">
<h2>
<span class="sectnum">2.16</span> How do I fix an error similar to "wrlib: could not allocate shared memory segment: invalid argument"</h2>
<p>This relates to a shared memory problem on Solaris. Usually one can't see it -
but it is visible if X is started from command line (or fail-safe session for
that matter). In any of the cases, on the stderr you get an error message like
this:</p>
<pre class="code console highlight literal-block"><code><span class="go">"wrlib: could not allocate shared memory segment: invalid argument"</span></code></pre>
<p>This one is generated by wrlib if Window Maker is compiled with shared-memory
usage enabled (which is the default). The explanation is that Solaris by
default comes with a shared memory segment size of maximum 1 M. What happends
is that if you have a really-really cool(tm) background, it is usually much
bigger than that 1 M segment of shared memory. To see your defaults relating
the IPC settings check the output of the "sysdef" command (look for IPC Shared
Memory). There you should see the maximum allocable size for a shared memory
segment. If it is less than 5 M you should really increase it by adding the
following line in your /etc/system file:</p>
<pre class="code highlight literal-block"><code>set shmsys:shminfo_shmmax=20971520</code></pre>
<ul class="simple">
<li><p>Make sure you don't already have this value set. If you do, simply increase
the value. In case you have a much bigger value, stick to what you have,
because you should have no problems with it.</p></li>
<li><p>The value allows a maximum segment size of 20 M, which really should be
enough for anyone. If not, try using a smaller background image!</p></li>
<li><p>Make sure you spell the line <em>exactly</em> as shown, otherwise at boot time the
kernel will complain of not finding such a module name and will not set a
thing about it!</p></li>
<li><p>Make sure you don't delete other lines or modify them "beyond recognition",
for evil things may happen at boot time.</p></li>
</ul>
<p>After adding this to your /etc/system you need to reboot in order for the new
limit to take effect. Also, you may want to check the new limit just to make
sure it has been set.</p>
<p>Thanks to Bogdan Iamandei for this answer.</p>
</div>
<div class="section" id="how-do-i-add-window-maker-to-the-solaris-dtlogin-screen">
<h2>
<span class="sectnum">2.17</span> How do I add Window Maker to the Solaris dtlogin screen?</h2>
<p>The two files that determine alternate window managers are:</p>
<pre class="code highlight literal-block"><code>/usr/dt/config/C/Xresources.d/Xresources.*
/usr/dt/config/Xsession.*</code></pre>
<p>If you look in there, you'll find Xresources.ow and Xsession.ow, respectively.
All you need are two files that set up Window Maker (or any other window
manager) in a similar fashion, calling them Xresources.wm and Xsession.wm (or
whichever extension you prefer).</p>
<p>Here is an example setup:</p>
<pre class="code resource highlight literal-block"><code><span class="err">#</span> <span class="err">**************************************************************************</span>
<span class="err">#</span>
<span class="err">#</span> <span class="err">Window</span> <span class="err">Maker</span> <span class="err">config</span> <span class="err">file</span>
<span class="err">#</span> <span class="err">Mike</span> <span class="err">Bland</span> <span class="err">&lt;mbland@cmu.edu&gt;</span>
<span class="err">#</span>
<span class="err">#</span> <span class="err">/usr/dt/config/C/Xresources.d/Xresources.wm</span>
<span class="err">#</span>
<span class="err">#</span> <span class="err">used</span> <span class="err">by</span> <span class="err">dtlogin</span>
<span class="err">#</span>
<span class="err">#</span> <span class="err">**************************************************************************</span>
<span class="err">Dtlogin*altDtsIncrement:</span> <span class="err">True</span>
<span class="err">Dtlogin*altDtName:</span> <span class="err">Window</span> <span class="err">Maker</span>
<span class="err">Dtlogin*altDtKey:</span> <span class="err">/usr/local/bin/wmaker</span>
<span class="err">Dtlogin*altDtStart:</span> <span class="err">/usr/dt/config/Xsession.wm</span>
<span class="err">#Dtlogin*altDtLogo:</span> <span class="err">/usr/local/share/logos/WM_logo.xpm</span></code></pre>
<p>Once I get a logo ready, I'll add it to the dtlogin screen by uncommenting the
last line.</p>
<p>And this example script:</p>
<pre class="code ksh highlight literal-block"><code><span class="ch">#!/bin/ksh
</span><span class="c1"># **************************************************************************
#
# Window Maker startup script
# Mike Bland &lt;mbland@cmu.edu&gt;
# /usr/dt/config/Xsession.wm
#
# used by dtlogin
#
# **************************************************************************
</span>
. /usr/local/etc/.profile <span class="c1"># Sources the file containing necessary
</span> <span class="c1"># environment variables (especially
</span> <span class="c1"># LD_LIBRARY_PATH=/usr/local/lib:...);
</span> <span class="c1"># make sure it's executable.
</span>
<span class="nv">WINDOW_MANAGER</span><span class="o">=</span>/usr/local/bin/wmaker
<span class="nb">export</span> WINDOW_MANAGER
/usr/local/bin/wmaker</code></pre>
</div>
<div class="section" id="what-happened-to-libproplist">
<h2>
<span class="sectnum">2.18</span> What happened to libPropList?</h2>
<p>The libPropList dependency has been removed as of Window Maker version 0.70.0,
and is replaced by cleaner, more robust code in the WINGs toolkit. This new
code maintains existing proplist compatibility, so there are no visable changes
for users, and existing file formats will work as they did before.</p>
<p>For developers, there is a proplist-compat.h header that provides a mapping
between the old and new function names. See the comments in this file for
further instructions.</p>
</div>
</div>
<hr class="docutils">
<div class="section" id="configuring-window-maker">
<h1>
<span class="sectnum">3</span> Configuring Window Maker</h1>
<div class="section" id="what-are-those-files-inside-my-gnustep-directory">
<h2>
<span class="sectnum">3.1</span> What are those files inside my ~/GNUstep directory?</h2>
<p>Here is a synopsis of the files in ~/GNUstep</p>
<ul class="simple">
<li><p>~/GNUstep/WindowMaker/WindowMaker is main config file. This file controls
options such as keybindings, fonts, pixmaps, and focus modes.</p></li>
<li><p>~/GNUstep/WindowMaker/WMWindowAttributes controls the "attributes" for
individual applications and appicons. Options such as what icon to use are
set here. For the most part, this is now best accessed via a right click on a
title bar of an application and selecting "Attributes"</p></li>
<li><p>~/GNUstep/Defaults/WMState is the file that is automatically generated and
contains the current dock settings. It is not recommended to edit this file
by hand.</p></li>
<li><p>~/GNUstep/Defaults/WMRootMenu specifies what file to use as the root menu. In
Window Maker 0.19.0 and higher, this file should be replaced by plmenu from
~/GNUstep/Defaults/WindowMaker so that one can use WPrefs.app to edit the
menu.</p></li>
<li><p>~/GNUstep/Library/WindowMaker/menu is used to change your root menu, if you
are using the old menu style.</p></li>
</ul>
</div>
<div class="section" id="how-do-i-enable-the-normal-x-sloppy-focus-mode">
<h2>
<span class="sectnum">3.2</span> How do I enable the normal X sloppy focus mode?</h2>
<p>If you are using WPrefs, you can choose the <span class="docutils literal">Window Focus Prefrences</span> tab and
then select the <span class="docutils literal">Input Focus Mode</span> Slider.</p>
<p>Scroll Down and choose <span class="docutils literal">Sloppy</span> Focus Mode.</p>
<p>You may also use a text editor on <span class="docutils literal">~/GNUstep/Defaults/WindowMaker</span> and change
the following:</p>
<pre class="code highlight literal-block"><code>FocusMode = sloppy;</code></pre>
</div>
<div class="section" id="how-do-i-get-my-auto-arrange-icons-to-work">
<h2>
<span class="sectnum">3.3</span> How do I get my auto-arrange icons to work?</h2>
<p>In WPrefs, choose the <span class="docutils literal">Icon Prefrences Tab</span> and select the <span class="docutils literal">Auto Arrange Icons</span> Checkbox. Or in <span class="docutils literal">~/GNUstep/Defaults/WindowMaker</span> set</p>
<pre class="code highlight literal-block"><code>AutoArrangeIcons=YES;</code></pre>
<p>and the icons should now auto-arrange.</p>
</div>
<div class="section" id="how-do-i-get-my-meta-tab-to-cycle-through-windows-correctly">
<h2>
<span class="sectnum">3.4</span> How do I get my Meta-Tab to cycle through windows correctly?</h2>
<p>To use WPrefs to modify these, choose the <span class="docutils literal">Ergonomic Prefrences</span> tab and
check <span class="docutils literal">Raise window when switching focus with keyboard (Circulate Raise)</span></p>
<p>Or you can use a text editor to make sure that these settings are in your
<span class="docutils literal">~/GNUstep/Defaults/WindowMaker</span> file:</p>
<pre class="code highlight literal-block"><code>CirculateRaise = YES;
RaiseDelay = 1;</code></pre>
<p>As of 0.61.0, MS Window's Style application tabbing is supported by default.</p>
</div>
<div class="section" id="how-do-i-get-a-tile-background-for-my-appicons-those-things-in-the-dock">
<h2>
<span class="sectnum">3.5</span> How do I get a tile background for my appicons (those things in the dock)?</h2>
<p>These can all be adjusted by the <span class="docutils literal">Appearance Preferences</span> tab in WPrefs.</p>
<p>Select the tile and then choose the edit texture dialog. Then you may choose
any of the different tile background options in the The old text editor method
is provided below for convience.</p>
<p>You need to change one line in your '~/GNUstep/Defaults/WindowMaker' file.</p>
<pre class="code highlight literal-block"><code>IconBack = (spixmap, tile.black.xpm, white);</code></pre>
<p>The last parameter is the color that fills in any transparent parts of your
icon.</p>
</div>
<div class="section" id="how-do-you-dock-insert-program-here-that-doesn-t-have-an-appicon-in-the-new-version-of-windowmaker">
<h2>
<span class="sectnum">3.6</span> How do you dock &lt;insert program here&gt; that doesn't have an appicon in the new version of WindowMaker?</h2>
<p>There is now an option available to emulate appicons so that Window Maker can
dock just about anything now. To dock a misbehaving application, right click on
the title bar and select the attributes menu. Next, select the pull down menu's
"Advanced Options" item. Under the <span class="docutils literal">Advanced Options</span> menu, select the
<span class="docutils literal">Emulate Application Icon</span> Option then Save, Apply and close the dialog.</p>
<p>This should allow you do dock the program normally.</p>
<p>Dan Pascu adds:</p>
<p>Emulate Appicon does exactly the same as dockit. So if Emulate Appicon does not
work, dockit will not work either. For such apps you can do nothing. They are
badly coded (they do not set the instance.class hints). For these Attributes
are also not available, since attributes apply to an instance and/or class
hint.</p>
<p>Note: Dockit was previously distributed with Window Maker and was launched from
the top dock icon.</p>
<p>Elliott Potter adds:</p>
<p>There's another way to dock applications that misbehave ... I've only done this
with a couple of things (Adobe AcroRead is the only one I remember at the
moment).</p>
<p>If Attributes -&gt; Advanced Options -&gt; Emulate Application Icon doesn't work:</p>
<ul>
<li><p>Dock another application to the clip, where you want your application to go.
I used gv, but anything you can dock will work.</p></li>
<li><p>Quit WindowMaker</p></li>
<li>
<p>Edit ~/GNUstep/Defaults/WMState.</p>
<p>If you're docking to the clip, scroll down to the Workspaces section.
When you find whatever you docked, you'll see:</p>
<pre class="code highlight literal-block"><code>{
Command = gv;
Name = GV.gv;
AutoLaunch = No;
Forced = No;
BuggyApplication = No;
Position = "6,0"
Omnipresent = No;
DropCommand = "gv %d";
},</code></pre>
<p>Edit it to use the info for your new application:</p>
<pre class="code highlight literal-block"><code>{
Command = acroread; # use the full pathname if you have to
Name = acroread.acroread;
AutoLaunch = No;
Forced = No;
BuggyApplication = No;
Position = "6,0"
Omnipresent = No;
DropCommand = "acroread %s";
},</code></pre>
<p>Then edit WMWindowAttributes, and add a line for your application's
icon...you can edit the line that was inserted, or make a new one - I
just make a new one:</p>
<pre class="code highlight literal-block"><code>acroread.acroread = {Icon = pdf.tiff;};</code></pre>
<p>Then re-start WindowMaker, and your icon should be there! You can move it
around like any other docked app now, but the Attributes section still won't
work.</p>
</li>
</ul>
</div>
<div class="section" id="how-do-i-get-x11amp-to-not-have-a-title-bar-or-any-other-program-for-that-matter">
<h2>
<span class="sectnum">3.7</span> How do I get x11amp to not have a title bar ( or any other program for that matter )?</h2>
<p>Right Click on the title bar and go to the attributes menu. Click on Window
Attributes and click the the Disable titlebar and Disable Resizebar options.
Click Save, and then click Apply then close the Attributes panel.</p>
<p>By Default, to get back to the attributes menu, use the key combination
Control-Esc.</p>
</div>
<div class="section" id="how-do-i-set-a-pixmap-background">
<h2>
<span class="sectnum">3.8</span> How do I set a pixmap background?</h2>
<p>Here is the in depth explanation straight from the NEWS file:</p>
<p>wmsetbg now accepts the following options:</p>
<!-- TODO wow! how old this thing is! -->
<pre class="code highlight literal-block"><code> usage: wmsetbg [-options] image
options:
-d
dither image
-m
match colors
-t
tile image
-s
scale image (default)
-u
update Window Maker domain database
-D &lt;domain&gt;
update &lt;domain&gt; database
-c &lt;cpc&gt;
colors per channel to use</code></pre>
<p>By default, it will try to guess if dithering is needed or not and proceed
accordingly. Using -d or -m will force it to dither or match colors.</p>
<p>Dithering for more than 15bpp is generally not needed, and will only result in
a slower processing. Don't use dithering except when needed, because it is
slower. Else rely on wmsetbg which will detect if dithering is needed and use
it.</p>
<ul class="simple">
<li><p><span class="docutils literal"><span class="pre">-u</span></span> - will update the WorkspaceBack in the default database domain file in
~/GNUstep/Defaults/WindowMaker, and let Window Maker refresh the screen.
Please note that this option only works under Window Maker, and will have no
effect under other window managers, since it rely on Window Maker to update
the image after it reads the updated defaults database.</p></li>
<li><p><span class="docutils literal"><span class="pre">-D</span></span> - &lt;domain&gt; is same as above, but will update the domain &lt;domain&gt;
instead of the default Window Maker domain.</p></li>
<li><p><span class="docutils literal"><span class="pre">-c</span></span> &lt;cpc&gt; will set the color per channel to use. Only needed for
PseudoColor visuals. Window Maker will automatically pass the value read from
the Window Maker domain database.</p></li>
</ul>
<p>The following line is straight from your WindowMaker-0.15.x
~/GNUstep/Library/WindowMaker/menu file and should all be on one line.</p>
<p>"Images" OPEN_MENU BACKGROUNDS_DIR ~/GNUstep/Library/WindowMaker/Backgrounds
WITH wmsetbg -u -t</p>
<p>This should give you an idea on how to add other entries for different image
directories. See the help info at the top of the
~/GNUstep/Library/WindowMaker/menu file for more information.</p>
<p>If you for some reason would like to set your background image with XV, for
instance to use an image format not yet supported by wmsetbg or to use one of
XV's special modes, edit the file ~/GNUstep/Library/WindowMaker/autostart and
insert the line</p>
<pre class="code sh highlight literal-block"><code>xv -root -quit -maxpect ~/background.jpg</code></pre>
<p>or</p>
<pre class="code sh highlight literal-block"><code>xv -root -quit -max ~/background.jpg</code></pre>
<p>you can also try variations of this to get different tiling and other effects
(where X is a number 1-9 I believe):</p>
<pre class="code sh highlight literal-block"><code>xv -root -quit -rmodeX ~/background.jpg</code></pre>
<p>If you would like xv functionality in your menu, heres a nice little tip from
Alfredo:</p>
<p>Add the following line to your ~/GNUstep/Library/WindowMaker/menu file. (all on
one line)</p>
<pre class="code sh highlight literal-block"><code><span class="s2">"More Backgrounds"</span> OPEN_MENU /home/whoever/backgrounds xv -root -maxpect -quit</code></pre>
</div>
<div class="section" id="can-i-put-pixmaps-in-my-root-menu-and-title-bars">
<h2>
<span class="sectnum">3.9</span> Can I put pixmaps in my root menu and title bars?</h2>
<p>Put the pixmaps in a directory that is located in your pixmap path set on
<span class="docutils literal">Search Path Configuration</span> Tab.</p>
<p>Then switch <span class="docutils literal">Appearance Preferences</span> tab and select what widget you would to
adjust under the <span class="docutils literal">Texture</span> tab. Click edit. Chose an image texture format and
then search for the texture.</p>
<p>You can use a similar procedure for any type of menu editing.</p>
<p>You can use png, gif, ppm, tiff, jpeg and xpm images interchangeably in Window
Maker if you have compiled in support for those formats.</p>
</div>
<div class="section" id="how-do-i-get-my-minimize-icon-to-look-like-the-triangle-i-see-in-screenshots">
<h2>
<span class="sectnum">3.10</span> How do I get my Minimize Icon to look like the triangle I see in screenshots?</h2>
<p>This involves a minor source tweak. Instructions are available at
<a class="reference external" href="http://largo.windowmaker.org/tips.php#titlebar_icons">http://largo.windowmaker.org/tips.php#titlebar_icons</a></p>
</div>
<div class="section" id="why-does-netscape-have-a-black-and-white-icon-when-i-minimize-it">
<h2>
<span class="sectnum">3.11</span> Why does Netscape have a black and white Icon when I minimize it?</h2>
<p>Craig Maloney has this answer:</p>
<p>If you happen to <span class="docutils literal"><span class="pre">--enable-openlook</span></span> at compile time, Netscape (and
presumably other apps as well) believe they're running under OLVWM, and
minimise with monochrome icons. Once compiled without OpenLook support,
Netscape minimizes with the correct icon.</p>
</div>
<div class="section" id="how-do-i-get-superfluous-bells-and-whistles-working">
<h2>
<span class="sectnum">3.12</span> How do I get superfluous bells and whistles working?</h2>
<p>Open WPrefs and go under the <span class="docutils literal">Other Configurations</span> tab. Under <span class="docutils literal">Animations and Sound</span>, depress the Superfluous tab.</p>
<blockquote>
<p>Alternatively, you may add</p>
</blockquote>
<pre class="code highlight literal-block"><code>Superfluous=YES;</code></pre>
<p>to your ~/GNUstep/Defaults/Windowmaker file.</p>
</div>
<div class="section" id="how-do-i-get-the-classic-next-tm-like-style-back">
<h2>
<span class="sectnum">3.13</span> How do I get the classic NeXT(tm)-like style back?</h2>
<p>Open WPrefs and go under the <span class="docutils literal">Other Configurations</span> tab. Under <span class="docutils literal">Title Bar Style</span>, select the classic look.</p>
<p>Or you can add</p>
<pre class="code highlight literal-block"><code>NewStyle=NO;</code></pre>
<p>to your ~/GNUstep/Defaults/Windowmaker file.</p>
</div>
<div class="section" id="how-do-i-get-the-window-menu-with-only-a-two-button-mouse">
<h2>
<span class="sectnum">3.14</span> How do I get the window menu with only a two button mouse?</h2>
<p>In WPrefs, under <span class="docutils literal">Mouse Prefrences</span>, the mouse actions can be mapped to a
button of choice.</p>
<p>Jim Noble explains another way to do this:</p>
<p>If you've got a two-button mouse under some versions of Solaris x86, there's no
way (that I'm aware of) to emulate a 3-button mouse. The right button can be
either MB2 or MB3, but chording doesn't work.</p>
<pre class="code highlight literal-block"><code>ApplicationMenuMouseButton = Left;</code></pre>
<p>and</p>
<pre class="code highlight literal-block"><code>WindowListMouseButton = Right;</code></pre>
<p>in ~/GNUstep/Defaults/WindowMaker ought to allow the left button to activate
the root menu, and the right button (as MB2) to activate the windows menu.</p>
</div>
<div class="section" id="how-do-i-edit-my-root-menu">
<h2>
<span class="sectnum">3.15</span> How do I edit my root menu?</h2>
<p>You can now use WPrefs.app ( its appicon looks like a heart rate meter with a
GNUStep icon backgroud ). Note that this will replace any oldstyle menus and
there is no way to convert the oldstyle menu to the new libproplist style menu.</p>
<p>For old style menus, edit the file <span class="docutils literal">~/GNUstep/Library/WindowMaker/menu</span> and
save your changes. Window Maker should detect the change and automatically
update. If you are having a problem getting it to reload the menu, try</p>
<pre class="code shell-session highlight literal-block"><code><span class="gp">$</span> touch menu</code></pre>
<p>to force the modification time into the future.</p>
</div>
<div class="section" id="wprefs-disappeared-from-the-dock-how-do-i-get-it-back">
<h2>
<span class="sectnum">3.16</span> WPrefs disappeared from the Dock! How do I get it back?</h2>
<p>Pascal Hofstee offers this answer:</p>
<p>You should just start it from a terminal by supplying it's FULL path-name,
which is usually the following: <span class="docutils literal">/usr/local/GNUstep/Apps/WPrefs.app/WPrefs</span>.</p>
<p>At this point, a new appicon should be generated which can be placed back into
the Dock.</p>
</div>
<div class="section" id="how-can-i-define-my-own-icon-for-a-program-instead-of-the-icon-the-application-supplies">
<h2>
<span class="sectnum">3.17</span> How can I define my own Icon for a program? (instead of the Icon the Application Supplies?)</h2>
<p>You can right click on the titlebar of the running app and choose the
"Attributes..." option, then click on the "Ignore client supplied icon"
checkbox. Click "Apply", "Save" and close the Attributes Editor.</p>
<p>Another method is to edit <span class="docutils literal">~/GNUstep/Defaults/WMWindowAttributes</span> by hand and
use the <span class="docutils literal">AlwaysUserIcon=YES;</span> option for the app. For example:</p>
<pre class="code highlight literal-block"><code>xmcd = {
Icon = "Radio.xpm";
AlwaysUserIcon=Yes;
};</code></pre>
</div>
<div class="section" id="how-do-i-turn-off-the-workspace-titles-between-workspaces">
<h2>
<span class="sectnum">3.18</span> How do I turn off the workspace titles between workspaces?</h2>
<p>In Window Maker 0.60.0, an option was added to turn this off.</p>
<p>By editing <span class="docutils literal">~/GNUstep/Defaults/WindowMaker</span> insert or modify the key
<span class="docutils literal">WorkspaceNameDisplayPosition = none;</span> Other valid options for this include
<span class="docutils literal">center</span>/<span class="docutils literal">top</span>/<span class="docutils literal">bottom</span>/<span class="docutils literal">topleft</span>/<span class="docutils literal">topright</span>/<span class="docutils literal">bottomleft</span>/<span class="docutils literal">bottomright</span>;</p>
</div>
<div class="section" id="how-do-i-add-dynamic-items-to-my-root-menu">
<h2>
<span class="sectnum">3.19</span> How do I add dynamic items to my root menu?</h2>
<p>A few programs are floating about, notably wkdemenu.pl that can produce output
from other menu styles. In order to get WindowMaker to launch the process
everytime you want to use the menu, use something like</p>
<pre class="code highlight literal-block"><code>("External Menu", OPEN_MENU, "| bob.sh")</code></pre>
<p>in a proplist style menu. You can tell if you have a proplist style menu if you
can edit it with WPrefs.</p>
<p>You can do this directly in WPrefs by going to the menu editor, adding an
"external menu", and then clicking the "ask guru button" and filling in the
process name.</p>
<p>Thanks to Igor P. Roboul</p>
</div>
<div class="section" id="how-do-i-remove-or-hide-appicons">
<h2>
<span class="sectnum">3.20</span> How do I remove or hide appicons?</h2>
<p>There are two options here, and you need to consider which one you prefer. Read
both of these before you decide.</p>
<p>First, if you do not want to use the clip or dock at all, you can launch wmaker
with with</p>
<pre class="code shell-session highlight literal-block"><code><span class="gp">$</span> wmaker --no-clip --no-dock</code></pre>
<p>and then in <span class="docutils literal">~/GNUstep/Defaults/WMWindowAttributes</span> add</p>
<pre class="code highlight literal-block"><code>"*" = {NoAppIcon=Yes;};</code></pre>
<p>The problem with this method is if you use the dock for dockapps, it renders
them with out an appicon to write to. An alternative method if you are willing
to let the clip be on your desktop is to right click on the clip &gt; clip options
&gt; auto attract. Double click the clip so that it is grayed and all appicons
will be hidden. Then you can hide the clip behind the dock so that it is out of
your way. This will allow appicons to work.</p>
</div>
<div class="section" id="i-disabled-my-titlebar-how-can-i-get-it-back">
<h2>
<span class="sectnum">3.21</span> I disabled my titlebar. How can I get it back?</h2>
<p>Thanks to Jim Knoble for this answer</p>
<p>Set the focus to the window and then use the keystroke assigned to the titlebar
menu. If you're not sure what the keystroke is, you can find out using WPrefs:
in the keyboard section, select the <em>Open window commands menu</em> item in the
list of actions. The keystroke assigned to it ought to appear in the
<em>Shortcut' area</em>.</p>
<p>Typically it is Control-Esc or F10 in older version of WindowMaker.</p>
</div>
<div class="section" id="how-do-i-remove-alt-mouse1-from-the-action-window-maker-grabs-for-an-application">
<h2>
<span class="sectnum">3.22</span> How do I remove ALT+Mouse1 from the action Window Maker grabs for an application?</h2>
<p>Do [Button3Down] (for righthanded mouse users, [RightButtonDown]) on the
titlebar of the desired window. Choose <span class="docutils literal"><span class="pre">Attributes...</span></span>. In the Attributes
inspector, choose <span class="docutils literal">Advanced Options</span>. Check <span class="docutils literal">Don't Bind Mouse Clicks</span>.
Apply or Save as desired, then close the Attributes inspector.</p>
<p>The result is that [Alt+Button1] (which usually grabs a window to move it
around), [Alt+Button2] (which usually grabs a window to move it around without
changing the window stacking order), and [Alt+Button3] (which usually resizes a
window) all get passed to the application instead of performing their usual
action.</p>
</div>
<div class="section" id="how-do-i-configure-the-dock-and-clip-to-use-less-space-on-a-small-screen">
<h2>
<span class="sectnum">3.23</span> How do I configure the Dock and Clip to use less space on a small screen?</h2>
<p>This answer is current as of WindowMaker-0.61.1.</p>
<p>For the Clip, either:</p>
<ul class="simple">
<li><p>Disable the Clip from WPrefs (panel number 7), or</p></li>
<li><p>Hide the Clip under the Dock (for example, in the upper righth and corner of
the screen).</p></li>
</ul>
<p>The latter is probably more useful on desktops with limited space, since you
can still set the Clip to attract app-icons so they don't clutter your desktop.</p>
<p>For the Dock, try the following:</p>
<ol class="arabic simple">
<li><p>Exit Window Maker.</p></li>
<li><p>Log in via a text console or using a different window manager.</p></li>
<li><p>Edit ~/GNUstep/Defaults/WMState using your favorite text editor
(for example, vi, emacs, or pico).</p></li>
<li><p>Find the <em>Applications</em> part of the <em>Dock</em> structure. Find the item with
<em>Position = "0,0";</em>. Change the <em>Command</em> item to the command you want the
top tile to launch. Change the <em>Name</em> item to the <em>&lt;instance&gt;.&lt;class&gt;</em> name
of the application you just made the Command item start (for example, if
<em>Command</em> is <em>"xedit"</em>, then <em>Name</em> should be <em>xedit.Xedit</em>).</p></li>
<li><p>Save the WMState file.</p></li>
<li><p>Start an X session with Window Maker.</p></li>
<li><p>Check that the top tile starts the command you told it to. (You should still
also be able to move the Dock up and down using [LeftDrag] on the top tile.)</p></li>
<li><p>You can configure the tile (including autolaunch and the drop-command) in
the regular manner ([RightButtonDown] on the tile and choose <em>Settings...</em>
from the resulting menu).</p></li>
</ol>
</div>
<div class="section" id="why-do-dashes-not-work-as-menu-entries">
<h2>
<span class="sectnum">3.24</span> Why do dashes not work as menu entries?</h2>
<p>If you wish to use a <span class="docutils literal">-</span> as part of a menu item name, you must enclose the
name in double quotes. This will only apply if you're editing the
~/GNUstep/Defaults/WMRootMenu file manually, as it is handled properly within
WPrefs.</p>
<p>This will work:</p>
<pre class="code highlight literal-block"><code>(ssh,
("us-gw", EXEC, "Eterm -e ssh us-gw"),</code></pre>
<p>This will not:</p>
<pre class="code highlight literal-block"><code>(ssh,
(us-gw, EXEC, "Eterm -e ssh us-gw"),</code></pre>
<p>Thanks to Martin Sillence for pointing this out.</p>
</div>
</div>
<hr class="docutils">
<div class="section" id="using-window-maker">
<h1>
<span class="sectnum">4</span> Using Window Maker</h1>
<div class="section" id="how-do-add-new-icons-to-the-dock">
<h2>
<span class="sectnum">4.1</span> How do add new icons to the Dock?</h2>
<p>First, launch an application. If an icon (henceforth called an <span class="docutils literal">appicon</span>)
appears in the bottom left corner of the screen, left click and drag it over
near the Dock. You will see a slightly opaque square of where the Dock will
place the appicon. When you do, release the mouse button and the appicon should
now be in the Dock.</p>
<p>Next, right click on the desktop to bring up the menu. Select Workspace -&gt; Save
Session to make this permanent.</p>
</div>
<div class="section" id="what-is-the-difference-between-the-exit-and-exit-session-option">
<h2>
<span class="sectnum">4.2</span> What is the difference between the Exit and Exit Session Option?</h2>
<p>Another answer from Dan Pascu:</p>
<p>Exit will exit wmaker, but can leave other X apps running, provided that it was
not the last app launched in the .xinitrc (for instance, if you had exec
wmaker, followed by exec xterm, exiting wmaker using 'Exit' will leave the
xterm running so you could start another window manager, etc.) This is
accomplished because X will not shutdown unless all X apps are closed.</p>
<p>Exit session will exit wmaker, but will also close all running apps, thus the X
server will be closed too.</p>
</div>
<div class="section" id="how-do-i-dock-icons-on-the-clip">
<h2>
<span class="sectnum">4.3</span> How do I "dock" icons on the clip?</h2>
<p>Just drag icons near it like you would for the dock. If you are having a
problem docking icons, you should try moving the clip away from the dock.</p>
</div>
<div class="section" id="why-do-none-of-my-key-bindings-ie-alt-work-in-window-maker">
<h2>
<span class="sectnum">4.4</span> Why do none of my key bindings (ie: Alt+#) work in Window Maker?</h2>
<p>If you are using XFree86, make sure scroll lock and numlock are off or no
bindings will work (XFree bug). You can try using the XFree86 Numlock Hack by
editing the line <span class="docutils literal">#undef NUMLOCK_HACK</span> in $(WindowMaker)/src/wconfig.h and
changing it to <span class="docutils literal">#define NUMLOCK_HACK</span>.</p>
<p>With the release of 0.18.0, this hack is now working and hopefully no one will
have to ask this question again.</p>
</div>
<div class="section" id="how-do-i-rename-workspaces">
<h2>
<span class="sectnum">4.5</span> How do I rename workspaces?</h2>
<p>Right click to bring up the root menu. Go under the Workspaces menu item and
hold the control key down. Next, click on the workspace entry you would like to
rename, type the name, and press enter.</p>
</div>
<div class="section" id="how-can-i-resize-a-window-if-the-window-is-larger-than-my-current-desktop">
<h2>
<span class="sectnum">4.6</span> How can I resize a window if the window is larger than my current desktop?</h2>
<p>David Reviejo best summed up this answer:</p>
<p>Maybe you know: Alt+Left click and drag to move the window.</p>
<p>Try this: Alt+Right click and drag to resize (by moving the nearest window
corner)</p>
<p>Another move/resize tip: while you are moving or resizing a window, you can
change the move/resize mode by pressing the SHIFT key.</p>
</div>
<div class="section" id="how-do-i-undock-appicons">
<h2>
<span class="sectnum">4.7</span> How do I "undock" appicons?</h2>
<p>If the program is not running, just drag the icon to the middle of your desktop
and watch it disappear. If the program is running, hold down Meta and drag the
icon off the dock.</p>
<p>I docked an application but when I run it the button is permanently shaded and
I can't run new instances. You probably docked the application with dockit. To
fix it remove the icon and use the "Emulate Application Icon" checkbox in the
Advanced Options section of the Attributes panel for the window. Then restart
the application to get the application icon you must use to dock the
application. It can also mean that you did something you shouldn't, which is
changing the program that is ran from the docked icon. For example, if you
docked rxvt you must NOT change it to xterm, for example. You also can't do any
changes that might alter the contents of the WM_CLASS hint for the window, like
the -name parameter for xterm, rxvt and other programs.</p>
</div>
<div class="section" id="when-i-run-wmaker-it-complains-about-not-being-able-to-load-any-fonts">
<h2>
<span class="sectnum">4.8</span> When I run wmaker it complains about not being able to load any fonts.</h2>
<p>Check if the locale settings are correct. If you're not sure what to do, unset
the LANG environment variable before running wmaker.</p>
<!-- TODO give complete explanation -->
<p>When I set the root background with wmsetbg by hand it works, but when I do
that from the configuration files it doesnt! If you set the root background
with wmsetbg by hand, it will obviously find the image, since you have
explicitly specified it by hand. But if you simply put it in
<span class="docutils literal">~/GNUstep/Defaults/WindowMaker</span> in some option like WorkspaceBack, it will
not find the image because Window Maker can't read your mind to figure where
you put the image. So, to fix it, you have to either place the full path for
the image in the texture specification or put the path for the directory you
put your background images in the PixmapPath option. You can also put all your
background images in places like <span class="docutils literal">~/GNUstep/Library/WindowMaker/Backgrounds</span>
or <span class="docutils literal">/usr/local/share/WindowMaker/Backgrounds</span>.</p>
<p>David Green says that another possibility is that you have two copies of the
worker programs: wmsetbg (and possibly setstyle) and the wrong one is in the
path first.</p>
</div>
<div class="section" id="what-is-the-purpose-of-being-able-to-draw-a-box-on-the-root-menu-with-a-left-click">
<h2>
<span class="sectnum">4.9</span> What is the purpose of being able to draw a box on the root menu with a left click?</h2>
<p>Its purpose is two-fold.</p>
<p>First, it is used to select multiple windows on a desktop at a time. When these
windows are selected, they can be moved around on your desktop and will retain
their relative positions.</p>
<p>Second, once selected, they are persistent through desktop changes. So it is
useful for moving large numbers of windows between desktops.</p>
<p>You can also select windows with shift+click.</p>
</div>
</div>
<hr class="docutils">
<div class="section" id="application-compatibility">
<h1>
<span class="sectnum">5</span> Application Compatibility</h1>
<div class="section" id="how-do-i-assign-gimp-an-appicon">
<h2>
<span class="sectnum">5.1</span> How do I assign gimp an appicon?</h2>
<p>You can enter the following line in WMWindowAttributes:</p>
<pre class="code highlight literal-block"><code>gimp={Icon="gimp.tiff";};</code></pre>
<p>Window Maker now can assign Icons from within the windowmanager. To do so,
right click on the title bar of an app, click on the droplist-&gt;Icon and
WorkSpace entry, enter the icon file name (make sure this is in your pixmap
path), click update, apply, and then save.</p>
</div>
<div class="section" id="how-do-i-get-an-appicon-for-xemacs-20-3">
<h2>
<span class="sectnum">5.2</span> How do I get an appicon for XEmacs 20.3+?</h2>
<p>Thanks to Michael Hafner for this answer.</p>
<p>You don't need to patch the XEmacs code, just run</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">./configure --with-session=yes (in addition to any other options you use)</span></code></pre>
<p>in your XEmacs 20.3+ sourcedir and rebuild it. Then XEmacs shows an appicon
when running and you can easily dock it.</p>
</div>
<div class="section" id="where-do-i-get-the-nifty-clock-program-i-always-see-on-people-s-desktops">
<h2>
<span class="sectnum">5.3</span> Where do I get the nifty clock program I always see on people's desktops?</h2>
<p>It's called asclock. Once included with Window Maker, it now is available at
<a class="reference external" href="ftp://ftp.windowmaker.org/pub/contrib/srcs/apps/asclock.tgz">ftp://ftp.windowmaker.org/pub/contrib/srcs/apps/asclock.tgz</a>.</p>
<p>asclock was written by Beat Christen and used to have its own website, which
seems to have disappeared. However, references to it exist all over the place,
and can be found by searching <a class="reference external" href="http://www.google.com/search?q=asclock%22">Google</a>.</p>
<p>Beat Christen wrote this awhile back:</p>
<p>Please note that the asclock-gtk version 2.0 beta 4 (asclock-gtk-2.0b4.tar.gz)
does not have the -d switch yet and that the asclock-xlib-2.1b2.tar.gz does not
have the shaped asclock builtin.</p>
<p>A wonderful alternative to asclock is Jim Knoble's <a class="reference external" href="https://www.dockapps.net/wmclock">wmclock</a>. It duplicates asclock and adds some much
needed improvements.</p>
</div>
<div class="section" id="how-do-you-dock-asclock">
<h2>
<span class="sectnum">5.4</span> How do you dock asclock?</h2>
<p>It is highly recommended that you use the asclock mentioned previously in
question 5.3. The asclock that is typically included in AfterStep will not
properly dock with Window Maker. At this point, there are at least four or five
different versions of asclock floating about.</p>
<p>For older versions such as asclock-classic , use a command line similar to</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">asclock -shape -iconic -12 &amp;</span></code></pre>
<p>For newer versions such as asclock-xlib 2.0 and asclock-gtk use</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">asclock -shape -iconic -12 -d &amp;</span></code></pre>
<p>Drag it from the top right corner of the clock to the dock. Right click on the
icon and select autolaunch.</p>
<p>In order to make asclock launch every time you start Window Maker, right click
on the outer edge of the border for asclock until a menu appears. Select the
"Settings" item and then select the "Lauch this Program Automatically" option
then select the "OK" button.</p>
<p>If you get an error such as sh: /dev/console: Permission denied, login as root,
cd to /dev/ and run</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">./MAKEDEV console</span></code></pre>
</div>
<div class="section" id="where-can-i-get-more-dockapps">
<h2>
<span class="sectnum">5.5</span> Where can I get more dockapps?</h2>
<p>The Window Maker team got tired of people E-mailing constantly asking where the
websites for obscure dockapps disappeared to. So we've created the ultimate
dockapps community website. Visit <a class="reference external" href="http://www.dockapps.net">dockapps.net</a> for
the latest, up-to-date links, information, and download for Window Maker and
related dockapps.</p>
<p>Another large index of dockapp links is available at
<a class="reference external" href="http://www.bensinclair.com/dockapp">http://www.bensinclair.com/dockapp</a>. The downside to this is that they're only
links, so if someone stops maintaining a dockapp, or their web hosting provider
cuts them off, you won't be able to get to it. Still, Ben Sinclair's site was
the first big "dockapp warehouse" site, so we give credit where credit is due.
:)</p>
</div>
<div class="section" id="how-do-i-get-an-appicon-for-rxvt-so-i-can-dock-it">
<h2>
<span class="sectnum">5.6</span> How do I get an appicon for rxvt so I can dock it?</h2>
<!-- TODO check out urls and legitimacy of the question -->
<p>The default rxvt that comes with most distributions is an outdated version of
rxvt. The newest development version of rxvt is availible from
<a class="reference external" href="ftp://ftp.math.fu-berlin.de/pub/rxvt/devel/">ftp://ftp.math.fu-berlin.de/pub/rxvt/devel/</a>. As of the time of this writing,
the version is 2.4.7 and it natively produces an appicon without a patch.</p>
<p>John Eikenberry has also created an rpm which is available from
<a class="reference external" href="ftp://ftp.coe.uga.edu/users/jae/windowmaker">ftp://ftp.coe.uga.edu/users/jae/windowmaker</a></p>
</div>
<div class="section" id="how-do-i-allow-alt-to-work-in-an-rxvt-xterm-session">
<h2>
<span class="sectnum">5.7</span> How do I allow Alt+# to work in an rxvt/xterm session?</h2>
<p>First, Launch a unique instance of rxvt or xterm. This can be done using the -N
option of rxvt.</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">rxvt -name foo -e irc</span></code></pre>
<p>Then, go to the Attributes menu (right click on titlebar -&gt; Attributes) /
Advanced Options and enable "Don't Bind Keyboard shortcuts". Click Save and
Apply and you should be able to run your session without the shortcuts.</p>
</div>
<div class="section" id="how-do-i-get-different-icons-for-different-rxvt-s-and-xterms">
<h2>
<span class="sectnum">5.8</span> How do I get different icons for different rxvt's and xterms?</h2>
<p>The hint is the -name option for xterm or rxvt. This will allow you to change
the exact WM_CLASS in the attributes menu and assign a unique icon.</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">rxvt -name foo -title Testing</span></code></pre>
<p>Then Right click on the title bar to bring up the attributes menu, and you will
be able to edit the properties for foo.XTerm (ie: assign a unique icon).</p>
</div>
<div class="section" id="how-do-i-launch-multiple-instances-of-xterm-from-one-appicon">
<h2>
<span class="sectnum">5.9</span> How do I launch multiple instances of XTerm from one appicon?</h2>
<p>Thanks for the update by Sara C. Pickett:</p>
<p>The easiest way to accomplish this is to dock XTerm as normal. Then Go to the
Attributes menu -&gt; Application Specific and select no application icon for
XTerm.</p>
<p>Then right-click on the docked appicon and select settings. Change the
Application Path with arguments section to</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">'/bin/sh -c "exec xterm &amp;"'</span></code></pre>
</div>
<div class="section" id="window-maker-breaks-scilab">
<h2>
<span class="sectnum">5.10</span> Window Maker breaks scilab.</h2>
<p>If you refer to the problem of the "graphics" window of scilab not showing up
in Window Maker, this is caused by a bug in scilab. You can see the cause of
the problem by yourself, by running xprop on the graphic window:
WM_NORMAL_HINTS(WM_SIZE_HINTS):</p>
<pre class="code highlight literal-block"><code>user specified location: 136679205, 1074468360
user specified size: 400 by 300
program specified minimum size: 400 by 300</code></pre>
<p>Now, when scilab opens it's window, Window Maker nicely does exactly what it is
told, that is, map the window at position 136679205, 1074468360 which obviously
falls outside the screen no matter how big is your monitor ;)</p>
<p>Meanwhile, the workaround for this is to open the window list menu (click on
the root window with the middle mouse button) and click on the ScilabGraphic
entry. The window should be brought to your reach. Then, open the window
commands menu (right click on window's titlebar) and open the Attributes panel.
Go to the "Advanced Options" section, check the "Keep inside screen" option and
save.</p>
<p>If you can recompile Scilab, this came from a Scilab developer:</p>
<p>replace</p>
<pre class="code C highlight literal-block"><code><span class="n">size_hints</span><span class="p">.</span><span class="n">flags</span> <span class="o">=</span> <span class="n">USPosition</span> <span class="o">|</span> <span class="n">USSize</span> <span class="o">|</span> <span class="n">PMinSize</span><span class="p">;</span></code></pre>
<p>with</p>
<pre class="code C highlight literal-block"><code><span class="n">size_hints</span><span class="p">.</span><span class="n">flags</span> <span class="o">=</span> <span class="cm">/** USPosition |**/</span> <span class="n">USSize</span> <span class="o">|</span> <span class="n">PMinSize</span><span class="p">;</span></code></pre>
<p>in routines/xsci/jpc_SGraph.c</p>
</div>
<div class="section" id="how-do-i-get-a-transparent-xterm-rxvt-xconsole">
<h2>
<span class="sectnum">5.11</span> How do I get a transparent xterm/rxvt/xconsole?</h2>
<p>You need a terminal emulator that has support for transparency, like Eterm, the
latest rxvt, wterm, aterm or gnome-terminal.</p>
<p>You can find these programs on <a class="reference external" href="http://www.freshmeat.net">http://www.freshmeat.net</a>.</p>
</div>
<div class="section" id="how-do-i-dock-an-arbitrary-console-application-like-mutt">
<h2>
<span class="sectnum">5.12</span> How do I dock an arbitrary console application like mutt?</h2>
<p>There are two key things to do if you want a program (such as mutt) to be able
to start in a terminal window from the Dock or the Clip:</p>
<ul>
<li>
<p>Make the terminal window start the program you want to run instead of a
shell. Both xterm and rxvt (and its descendants) are capable of doing this.
For example:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">xterm -e mutt
rxvt -e mutt
gnome-terminal -e mutt</span></code></pre>
</li>
<li>
<p>Convince Window Maker that the resulting terminal window is not a regular
terminal window, but rather some other program instance. Both xterm and rxvt
are also capable of doing this. Make sure that -e is the last command
option. For example:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">xterm -name muttTerm -e mutt
rxvt -name muttTerm -e mutt
gnome-terminal --name=muttTerm -e mutt</span></code></pre>
<p>This causes the instance of the terminal window that you start to have an
&lt;instance-name&gt;.&lt;class-name&gt; pair of <span class="docutils literal">muttTerm.XTerm</span> (usually rxvt's
class is also XTerm; don't know about its descendants, such as wterm and
Eterm).</p>
<p>Do not use spaces or periods in the instance name. For example, these are
BAD instance names:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">xterm -name mutt.term -e mutt
rxvt -name 'mutt term' -e mutt</span></code></pre>
<p>Window Maker will not like you if you use them.</p>
<p>With a different instance name, you can now do the following:</p>
<ul class="simple">
<li><p>Dock the resulting appicon in the dock, or clip it to the Clip.</p></li>
<li><p>Assign a different icon and different window properties to the <cite>special'
terminal window running your program (make sure you choose the exact
``muttTerm.XTerm`</cite> window specification in the Attributes editor).</p></li>
<li><p>Specify different resource settings for muttTerm in your ~/.Xdefaults file
(e.g., different default foreground and background colors).</p></li>
</ul>
</li>
</ul>
<p>There are a few other non-key things you can do to complete the process:</p>
<ul>
<li>
<p>Tell the terminal window to display a more meaningful or prettier title and
icon title than what gets put there due to <span class="docutils literal"><span class="pre">-e</span></span>. For example:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">rxvt -title 'Mail (mutt)' -n 'Mail' -name muttTerm -e mutt</span></code></pre>
<p>Xterm works the same way.</p>
</li>
<li>
<p>These are getting to be a lot of command-line options. Make a wrapper script
to use so you don't have to remember them all:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">mkdir ~/bin
cat &gt;~/bin/muttTerm &lt;&lt;EOF
</span><span class="gp">#</span>!/bin/sh
<span class="go">rxvt -title 'Mail (mutt)' -n 'Mail' -name muttTerm -e mutt
EOF
chmod +x ~/bin/muttTerm</span></code></pre>
<p>Now you can do the same thing as that really long command in [3] above using
the simple:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">~/bin/muttTerm</span></code></pre>
<p>If you put ~/bin in your PATH, you can use the even simpler:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">muttTerm</span></code></pre>
</li>
<li>
<p>If you want to be sly, you can change the docked muttTerm to use your new
wrapper script instead of the really long command; then, when you want to
change anything in the really long command except for the instance name, you
can just change the wrapper script, and it's done. Here's the procedure:</p>
<ul class="simple">
<li><p>[RightButtonDown] on the muttTerm dock tile</p></li>
<li><p>Choose <span class="docutils literal"><span class="pre">Settings...</span></span></p></li>
<li><p>Replace the text in the <span class="docutils literal">Application path and arguments</span> field with the following:</p></li>
</ul>
<pre class="code highlight literal-block"><code>muttTerm</code></pre>
<ul>
<li>
<p>Choose <span class="docutils literal">OK</span></p>
<p>Note that Window Maker needs to know that ~/bin is on your PATH for this to
work; you may need to exit your X session and start it again.</p>
<p>To change the instance name of the terminal window (e.g., from <span class="docutils literal">muttTerm</span>
to <span class="docutils literal">mailTerm</span> or <span class="docutils literal">blah</span> or <span class="docutils literal">terminalWindowRunningMutt</span>), you need to
do the following</p>
</li>
<li><p>Change your muttTerm script</p></li>
<li><p>Undock your old muttTerm</p></li>
<li><p>Run your muttTerm script</p></li>
<li><p>Dock the resulting terminal window</p></li>
<li><p>Do the stuff in first 4 subpoint above again.</p></li>
</ul>
</li>
</ul>
<p>Good luck.</p>
<p>Thanks to Jim Knoble for this answer.</p>
</div>
<div class="section" id="how-do-i-get-an-appicon-for-netscape">
<h2>
<span class="sectnum">5.13</span> How do I get an appicon for Netscape?</h2>
<p>If you are not using one of the latest Navigators, you can</p>
<ol class="arabic simple">
<li><p>Right click on the title bar</p></li>
<li><p>Click <span class="docutils literal">Attributes</span></p></li>
<li><p>Select <span class="docutils literal">Advanced Options</span> from the pull down menu</p></li>
<li><p>Select <span class="docutils literal">Emulate Application Icon</span></p></li>
<li><p>Click Save</p></li>
</ol>
<p>and older netscapes should now produce an application icon.</p>
<p>If you are using a newer rpm from Redhat Linux, try running</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">grep irix `which netscape`</span></code></pre>
<p>This seems to have been introduced in their 4.7 update. Comment out
irix-session management restart netscape. Alternatively, you may run either</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">/usr/lib/netscape/netscape-communicator</span></code></pre>
<p>or</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">/usr/lib/netscape/netscape-navigator</span></code></pre>
<p>depending on which rpms you have installed.</p>
</div>
<div class="section" id="how-can-i-dock-an-application-from-a-remote-machine-using-ssh">
<h2>
<span class="sectnum">5.14</span> How can I dock an application from a remote machine using ssh?</h2>
<p>This answer asumes that you have already set up RSA authentication using
<span class="docutils literal"><span class="pre">ssh-keygen</span></span>. To be able to launch applications without being prompted for
the password, you can use <span class="docutils literal"><span class="pre">ssh-agent</span></span> and <span class="docutils literal"><span class="pre">ssh-add</span></span> as follows.</p>
<p>With the addition to ~/.xsession of</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">eval `ssh-agent`
ssh-add /dev/null</span></code></pre>
<p>just before</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">exec wmaker</span></code></pre>
<p>Then ssh will no longer prompt for the RSA-key passphrase. The <span class="docutils literal">/dev/null</span>
argument to <span class="docutils literal"><span class="pre">ssh-add</span></span> causes it to use the <span class="docutils literal"><span class="pre">ssh-askpass</span></span> graphical dialog.</p>
<p>The following procedure shows how to dock a remote xterm using <span class="docutils literal">ssh</span>. This
procedure should work well for any well-behaved X11 application, including most
Dock applets.</p>
<ol class="arabic">
<li>
<p>From a terminal window, start an ssh session with <span class="docutils literal">xterm</span> as the command:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">ssh -a -C -X remote.example.net "xterm -name blah"</span></code></pre>
<p>(The '-a' switch turns off agent forwarding, for security reasins and the
'-X' switch turns on X11 forwarding, required for the remote xterm to run.
The -C option turns on compression, very useful for things such as X)</p>
</li>
<li><p>When the remote xterm appears, find the appicon. If it's not already in the
Clip, drag it there.</p></li>
<li>
<p>[RightButtonDown] on the appicon and choose 'Settings...' from the menu.
Note that the 'Application path and arguments' field contains only:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">xterm -name blah</span></code></pre>
<p>Change that to:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">ssh -a -C -X remote.example.net "xterm -name blah"</span></code></pre>
<p>The backslashes and double quotes are critical. Change the contents of
'Command for files dropped with DND' in the same fashion, putting '%d'
inside the double quotes.</p>
<p>If you wish, change the icon so that you can recognize the tile easily.
Press 'OK'.</p>
</li>
<li><p>[RightButtonDown] on the appicon again and choose 'Keep Icon(s)'.</p></li>
<li><p>Exit the remote xterm. The new Clip tile should remain, with the three dots
at the lower lefthand corner to indicate the app is no longer running.</p></li>
<li><p>[DoubleClick] on the new Clip tile. You should get the remote xterm again
after a short while, depending on the speed of your network and of the
remote machine.</p></li>
<li><p>You may either leave the remote application in the Clip, or drag it to the
Dock.</p></li>
</ol>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>You should be wary of docking something like <span class="docutils literal">wminet</span> or <span class="docutils literal">wmnet</span> in the
manner, since you may create a feedback loop by causing additional network
traffic, which the program monitors, causing yet more network traffic...</p>
</div>
</div>
<div class="section" id="how-do-you-make-an-omnipresent-window-not-take-focus-whenever-switching-workspaces">
<h2>
<span class="sectnum">5.15</span> How do you make an omnipresent window not take focus whenever switching workspaces?</h2>
<p>Typically, on applications like xmms, they are set to omnipresent so they will
appear on every workspace. This causes the app to often get the focus
unintentionally when switching workspaces.</p>
<p>To remedy this,</p>
<ol class="arabic simple">
<li><p>Bring up the <span class="docutils literal">Attributes</span> menu. You can do this by [Right Clicking] on the
title bar and seletcing <span class="docutils literal">Attributes</span>. Alternatively, you may hit
'Control+ESC' at the same time to bring up the title bar menu on apps that
do not have a title bar.</p></li>
<li><p>In the <span class="docutils literal">Window Attributes</span> menu, select <span class="docutils literal">Skip Window List</span></p></li>
<li><p>Push <span class="docutils literal">Save</span> and then hit the close dialog window icon in the upper right
corner of the window frame.</p></li>
</ol>
<p>Now the window will not take focus when switching workspaces.</p>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>this will also make the window non-focusable via keyboard window switching.
The only way to shift focus to the window is via the mouse.</p>
</div>
</div>
</div>
<hr class="docutils">
<div class="section" id="themes-and-dockapps">
<h1>
<span class="sectnum">6</span> Themes and Dockapps</h1>
<div class="section" id="what-exactly-are-themes">
<h2>
<span class="sectnum">6.1</span> What exactly are themes?</h2>
<p>Themes are a great aspect of Window Maker allowing a user to simply save the
entire 'look' of their desktop in an archive to distribute freely among
friends, fellow users and/or the whole net in general. :)</p>
<p>See the <a class="reference external" href="/themes/themepacks.html">theme-HOWTO</a> for an
in-depth walk-through on making a Theme archive.</p>
</div>
<div class="section" id="how-do-i-install-a-theme">
<h2>
<span class="sectnum">6.2</span> How do I install a theme?</h2>
<p>This should be as simple as untarring the Theme.tar.gz into one of two places.
You can untar it to the global /usr/local/share/WindowMaker/* directory, and
have it be accessable to all users, or you can untar it to your own
~/GNUstep/Library/WindowMaker/ directory for your own personal use.</p>
<p>Use your favorite variation of the following:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">gzip -dc "Theme.tar.gz" | tar xvf -</span></code></pre>
<p>Note that directory may differ on different systems</p>
</div>
<div class="section" id="why-do-my-themes-not-load-the-background">
<h2>
<span class="sectnum">6.3</span> Why do my themes not load the background?</h2>
<p>Likely you have not compiled Window Maker with support for the background image
format, usually JPEG.</p>
<p>You can check this by the following command</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">ldd `which wmaker`</span></code></pre>
<!-- TODO: check url -->
<p>If libjpeg is not listed, you will need to install libjpeg that is available
from ftp.windowmaker.org</p>
</div>
<div class="section" id="how-do-i-make-a-theme">
<h2>
<span class="sectnum">6.4</span> How do I make a Theme?</h2>
<p>Please see the <a class="reference external" href="/themes/themepacks.html">theme-HOWTO</a> for
details on making both new and old style themes (and the differences between
the two), here is a short summary on making old style themes. Also, read the
README.themes file included with the Window Maker distribution in the
WindowMaker/ directory.</p>
<p>In this walk-through when I use WindowMaker/, it can refer to the global
/usr/local/share/WindowMaker/ directory or the users own
~/GNUstep/Library/WindowMaker/ directory.</p>
<p>To make a Theme.tar.gz, these are the steps I take:</p>
<ol class="arabic">
<li><p>Optionally create a README for your theme in WindowMaker/, call it
something like "ThemeName.txt"</p></li>
<li>
<p>Use the following command to add the Theme files to your .tar file.</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">tar cvf ThemeName.tar ThemeName.txt Themes/ThemeName
Backgrounds/ThemeNameBG.jpg Backgrounds/ThemeNameTile.xpm</span></code></pre>
<p>You can add as many more images as you need from the appropriate directories
nder WindowMaker/ following that general idea. You can even optionally add
an IconSets/ThemeName.iconset and it's associated icons to your theme in the
same manner. This should be stated in your README if you decide to include
these.</p>
</li>
<li>
<p>Then gzip your .tar file to make your ThemeName.tar.gz file with this
command:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">tar cvf ThemeName.tar ThemeName.txt Themes/ThemeName
Backgrounds/ThemeNameBG.jpg Backgrounds/ThemeNameTile.xpm</span></code></pre>
<p>You can add as many more images as you need from the appropriate directories</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">gzip -9 ThemeName.tar</span></code></pre>
</li>
<li><p>Now give it to your friends!</p></li>
</ol>
</div>
<div class="section" id="i-untarred-a-theme-in-gnustep-library-windowmaker-like-the-readme-says-but-it-doesnt-show-up-in-the-menu">
<h2>
<span class="sectnum">6.5</span> I untarred a theme in ~/GNUstep/Library/WindowMaker like the README says,but it doesnt show up in the menu!</h2>
<p>Make sure the OPEN_MENU command for the Themes entry in your menu has the path for your personal themes directory included in it. To be sure, add</p>
<pre class="code highlight literal-block"><code>#define USER_THEMES_DIR ~/GNUstep/Library/WindowMaker/Themes</code></pre>
<p>in your wmmacros file.</p>
</div>
</div>
<hr class="docutils">
<div class="section" id="miscellaneous-questions">
<h1>
<span class="sectnum">7</span> Miscellaneous Questions</h1>
<div class="section" id="is-there-a-pager-for-window-maker">
<h2>
<span class="sectnum">7.1</span> Is there a pager for Window Maker?</h2>
<p>Not at the moment because there is not a pressing need for a pager. The concept
of multiple desktops does exist and there are currently 3 ways to switch
between them.</p>
<p>First, the Meta+Number combination will switch between desktops. The Workspaces
menu will also let you switch workspaces. Lastly, the clip will also scroll one
through workspaces. For those that would like to send an application to a
specific workspace, either drag it to the edge of the desktop onto the next
workspace, or right click on its title bar, select 'Move To', and click the
workspace you want it to be moved to.</p>
<p>However, Window Maker does support KDE and GNOME protocols, including their
workspace management, so you may use their pager in conjunction with Window
Maker in these. Note that in order for this to work, you must enable support
when you configure Window Maker (using the --enable-kde and --enable-gnome
configure options).</p>
<p>Note also that the Blackbox pager application will work with Window Maker.</p>
</div>
<div class="section" id="how-do-i-use-getstyle-and-setstyle">
<h2>
<span class="sectnum">7.2</span> How do I use getstyle and setstyle?</h2>
<p>To capture the current Window Maker style, use the command</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">getstyle &gt; current.style</span></code></pre>
<p>To replace the current style, use the command</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">setstyle filename.style</span></code></pre>
</div>
<div class="section" id="why-was-libproplist-removed-from-the-distribution">
<h2>
<span class="sectnum">7.3</span> Why was libPropList removed from the distribution?</h2>
<p>Alfredo Kojima writes:</p>
<p>libPropList was removed from Window Maker because other programs also use it,
such as GNOME. If libPropList is distributed with wmaker, it would cause
problems with whatever version of libPropList you already had installed.</p>
<p>Now, there is no more GNOME libproplist and Window Maker libproplist. There is
only libPropList which is worked on as a single community effort.</p>
</div>
<div class="section" id="why-don-t-you-distribute-normal-diff-or-xdelta-patches">
<h2>
<span class="sectnum">7.4</span> Why don't you distribute normal diff or xdelta patches?</h2>
<p>Whenever possible, plain diff patches are distributed. If the new version has
new binary files, normal diff won't be able to handle them, so a patch package
is distributed instead. We don't use xdelta because a) most systems do not have
xdelta installed and b) xdelta is picky and requires the files to be patched to
be exactly the same as the one used to make the patch. The patch package
scheme used is much more flexible.</p>
<p>We do not distribute a simple diff with the binary files separately (and
variations, like uuencoding the binary files) because a) it is more complicated
and error prone to require the user to manually move the files to the correct
places b) the current patch package scheme <em>does</em> distribute the binary files
and diff files separately. If the user wants to install everything by hand,
nobody will object to that and c) sooner or later someone will certainly ask
for a script to automate the file moving stuff.</p>
<p>So we hacked a script (mkpatch) that automatically creates a patch package with
the normal text diff file, a list of removed files and the binary files that
have changed or been added, plus a script that does the patching automatically.
If you don't like the script, you can apply the patch and move the files
manually. Or download the whole distribution.</p>
</div>
<div class="section" id="will-you-add-gnome-or-kde-support">
<h2>
<span class="sectnum">7.5</span> Will you add GNOME or KDE support?</h2>
<p>Support for GNOME and KDE hints has been included since 0.50.0.</p>
<p>Note that you must enable this support at compile time with the proper
arguments to configure (--enable-kde and --enable-gnome).</p>
</div>
<div class="section" id="how-can-i-produce-a-backtrace-when-window-maker-keeps-crashing">
<h2>
<span class="sectnum">7.6</span> How can I produce a backtrace when Window Maker keeps crashing?</h2>
<p>Thanks to Paul Seelig for this answer:</p>
<p>You can use the GNU debugger "gdb" to get exact information about how and where
wmaker crashed. Sending this information to the developers is the most
convenient way to help in debugging.</p>
<p>The wmaker binary needs to be compiled with debugging turned on ("./configure
--with-debug etc.") for this to work.</p>
<p>Exit wmaker and start a failsafe X session with an open xterm.</p>
<p>First type the command "script" to log the following session into a file
commonly called "~/typescript". Then enter "gdb wmaker" at the shellprompt:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">[shell prompt]~ &gt; script
Script started, output file is typescript
[shell prompt]~ &gt; gdb wmaker
GNU gdb 4.17.m68k.objc.threads.hwwp.fpu.gnat
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-pc-linux-gnu"...
(gdb)</span></code></pre>
<p>At the gdb prompt simply type "run" to start the WMaker session:</p>
<pre class="code highlight literal-block"><code>(gdb) run
Starting program: /usr/bin/X11/wmaker</code></pre>
<p>Try to reproduce the error which has provoked the crash before and if you
succeed the session will simply freeze and you will see something similiar to
following prompt:</p>
<pre class="code highlight literal-block"><code>Program received signal SIGSEGV, Segmentation fault.
0x809ea0c in WMGetFirstInBag (bag=0x0, item=0x811e170) at bag.c:84
84 for (i = 0; i &lt; bag-&gt;count; i++) {
(gdb)</code></pre>
<p>Now you just type "bt" for "backtrace" and gdb will show you where the crash
happened:</p>
<pre class="code highlight literal-block"><code>(gdb) bt
#0 0x809ea0c in WMGetFirstInBag (bag=0x0, item=0x811e170) at bag.c:84
#1 0x807c542 in wSessionSaveState (scr=0x80c28e8) at session.c:299
#2 0x807bd88 in wScreenSaveState (scr=0x80c28e8) at screen.c:1089
#3 0x807cf54 in Shutdown (mode=WSExitMode) at shutdown.c:111
#4 0x8078101 in exitCommand (menu=0x80f7230, entry=0x80fdb38)
at rootmenu.c:193
#5 0x8078403 in wRootMenuPerformShortcut (event=0xbffff360) at rootmenu.c:401
#6 0x80630f7 in handleKeyPress (event=0xbffff360) at event.c:1492
#7 0x8061c86 in DispatchEvent (event=0xbffff360) at event.c:232
#8 0x8093092 in WMHandleEvent (event=0xbffff360) at wevent.c:585
#9 0x8061dae in EventLoop () at event.c:322
#10 0x806b238 in main (argc=1, argv=0xbffff404) at main.c:594
(gdb)</code></pre>
<p>To quit the debugger just type "quit" and say "y":</p>
<pre class="code highlight literal-block"><code>(gdb) quit
The program is running. Exit anyway? (y or n) y
[shell prompt]~ &gt;</code></pre>
<p>To quit the script session type "exit" again:</p>
<pre class="code shell-session highlight literal-block"><code><span class="go">[shell prompt]~ &gt; exit
exit
Script done, output file is typescript
[shell prompt]~ &gt;</span></code></pre>
<p>Send the resulting "~/typescript" together with a concise explanation about how
to reproduce the bug (please use the included BUGFORM for instruction) to the
<a class="reference external" href="/lists">developers</a>.</p>
</div>
</div>
<hr class="docutils">
<div class="section" id="troubleshooting-tips">
<h1>
<span class="sectnum">8</span> Troubleshooting Tips</h1>
<p>No questions are currently available for this chapter.</p>
</div>
<hr class="docutils">
<div class="section" id="programming-for-window-maker">
<h1>
<span class="sectnum">9</span> Programming for Window Maker</h1>
<div class="section" id="how-do-i-get-a-normal-x-application-to-produce-an-appicon">
<h2>
<span class="sectnum">9.1</span> How do I get a normal X application to produce an appicon?</h2>
<p>Another insightful answer from who else but Dan Pascu.</p>
<p>You must define the WM_CLASS (XSetClassHint()) and the CLIENT_LEADER or
XWMHints.window_group properties, which are automatically set by most
applications that use Xt (Motif, Athena ...), but if you use plain Xlib you
must set them by hand.</p>
<p>Also you must make a call to XSetCommand(dpy, leader, argv, argc);</p>
<p>Take a look at WindowMaker-0.12.3/test/test.c that is an example for writing
such an app (which also have an app menu).</p>
</div>
<div class="section" id="how-do-i-get-my-tcl-tk-application-to-produce-an-appicon">
<h2>
<span class="sectnum">9.2</span> How do I get my tcl/tk application to produce an appicon?</h2>
<p>Oliver Graf writes:</p>
<p>The main window (normally this is called '.' [dot] in tk) should use the
following lines:</p>
<pre class="code highlight literal-block"><code>wm command . [concat $argv0 $argv]
wm group . .</code></pre>
<p>All child windows attached to the same app-icon should use:</p>
<pre class="code highlight literal-block"><code>toplevel .child
wm group .child .</code></pre>
<p>where .child should be replaced by the actual window path.</p>
<p>Replace '.' with the actual main-window path and 'wm group .child .' should be
added for each 'toplevel .child' call.</p>
</div>
<div class="section" id="what-is-wings">
<h2>
<span class="sectnum">9.3</span> What is WINGs?</h2>
<p>WINGs Is Not GNUstep. ;)</p>
<p>It is the widget library written for the widgets in Window Maker. It is
currently under heavy development but several people have started writing
applications in it. Its goal is to emulate the NeXT(tm)-style widgets.</p>
<p><a class="reference external" href="https://web.archive.org/web/20010715234415/http://members.ozemail.com.au:80/~crn/wm/wings.html">http://www.ozemail.com.au/~crn/wm/wings.html</a>
is the closest thing to an information center about WINGs. You can find out
more information in our <a class="reference external" href="wings.html">WINGs development</a> section.</p>
</div>
<div class="section" id="where-can-i-get-more-information-about-wings">
<h2>
<span class="sectnum">9.4</span> Where can I get more information about WINGs?</h2>
<p>Nic Berstein has created a WINGs development list.</p>
<p>The purpose of this list is to provide a forum for support, ideas, suggestions,
bug reports etc. for the WINGs widget set library.</p>
<p>To subscribe to this list, send a message with the word <span class="docutils literal">subscribe</span> in the
<strong>BODY</strong> of the message to: <a class="reference external" href="mailto:wings-request@postilion.org">wings-request@postilion.org</a>.</p>
</div>
</div>
</div>
</article>
<div id="titlebar">
<div id="minimize"></div>
<div id="titlebar-inner">Window Maker: FAQ</div>
<div id="close"></div>
</div>
<div id="resizebar">
<div id="resizel"></div>
<div id="resizebar-inner">
</div>
<div id="resizer"></div>
</div>
</div>
</body>
</html>