WindowMaker on PCLinuxOS: Introduction
by Patrick Horneker (phorneker)
What is WindowMaker?
WindowMaker is an attempt to implement the NeXTStep graphical interface on your PCLinuxOS desktop, and is installable from Synaptic. Simply open Synaptic, then click on Search and type in windowmaker. When the results appear in Synaptic, select task-windowmaker and click on Apply. Synaptic will automatically install any dependencies in addition to WindowMaker. You can install this from any PCLinuxOS variant, as there is no WindowMaker version of PCLinuxOS available.
Some Background on NeXT
To understand what WindowMaker is, here is a brief history of how NeXTStep came to be.
Back in 1988, Steve Jobs left Apple Computer to form NeXT, Inc. His aim was to create a new generation of computers for business use, supplementing the success of the original Macintosh. The result was the NeXT system. The CPU was a cube that sat on the floor of the desk, with a 21-inch flat screen monitor with built-in speakers, a keyboard and a mouse, all sitting on the desk, and all black in color. The system came equipped with 16MB of RAM, a Motorola 68040 processor, a hard drive (about 80MB, which was plentiful for its time), and an optical disk reader/writer, which was a predecessor to the current CD-RW and DVD-RW drives we use today.
The NeXT system was hardware compatible with the Macintosh systems at the time, so mice, landline modems (remember those) and printers were available.
Software-wise, the NeXT used a Mach kernel (a predecessor to GNU/Hurd and Darwin), along with standard GNU tools for software development. Programming for NeXT was done in Objective-C, which is now the official programming language for iPhones, iPads, iMacs and MacBooks. Programs written in Objective-C for Apple's gadgets, as well as applets designed for the NeXT system, NeXTStep, and WindowMaker itself, have the .app extension, indicating that this is an application. In fact, the term App, as in "There's an app for that," was derived from this concept more than it was an abbreviation of the term application.
NeXTStep was the operating system that ran on NeXT. The interface was very simple. What you got was a black background, with a expandable dock on the upper right hand corner of the screen with 64 x 64 pixel icons. To get the system menu, right click anywhere on the background.
At the time of Apple's acquisition of NeXT, Inc. (which brought Steve Jobs back to Apple), NeXTStep was available for PowerPC, Motorola 68x and Intel x86 processors. The last version of NeXTStep before the Apple acquisition was 3.3.3. NeXTStep continues to this day in two forms.
GNUStep incorporates WindowMaker as its official desktop. In addition, GNUStep implements an open source version of the NeXTStep API, not just the graphical elements. You can install GNUstep on PCLinuxOS, but the conflict here will be with the make utility. GNUStep implements make in such a way that the standard make utility cannot be used.
The commercial version of NeXTStep survives as Mac OS-X, and currently uses a BSD kernel instead of a Mach kernel, in addition to a user interface that utilizes DisplayPDF, and rivals that of GNOME and XFCE.
We only need WindowMaker
The main difference between GNUStep and WindowMaker is that GNUStep implements the entire NeXTStep system, not just the interface. For PCLinuxOS, we only want the interface, and WindowMaker is one way to implement that interface.
The PCLinuxOS repository contains WindowMaker, along with some useful dock applets. You will still be able to run all of your applications that you installed on your PCLinuxOS system (be it KDE, GNOME, XFCE, etc.), but you can run them through a NeXT-like interface.
To run WindowMaker, you will need to select WindowMaker from the login screen.
If you are running the original PCLinuxOS distribution (or the MiniMe variant), you need to select WindowMaker from the Session menu.
For all other variants, you will need to click on the Menu icon (the left most button below the entry box in PCLinuxOS GNOME edition), or wherever the Session menu is for your PCLinuxOS variant. When the session menu pops up, select WindowMaker, then click on OK.
For the PCLinuxOS GNOME Edition, you will be asked if you want to make WindowMaker your default window manager for future sessions.
The screen pictured above is what you see when you launch WindowMaker on PCLinuxOS.
This is very much what the original NeXT system screen looked like in its day. Looks boring, doesn't it? The good news is that most anything here can be changed.
There are some differences (other than the background color) between WindowMaker and the NeXTStep interface. The lower left hand corner of the screen displays icons representing applications that are now running (and any child windows opened belonging to the application). The upper left hand corner is a clip. This clip is used to switch between workspaces, not unlike what is available in KDE, GNOME, XFCE, LXDE or Enlightenment. The icon showing here represents the shutter screenshot utility (also installable from Synaptic).
Right clicking anywhere on the background will pull up the system menu (shown here). This is the same menu that you see on any other desktop offered with PCLinuxOS.
Double clicking on the icon at the top of the dock (the one with the WindowMaker logo) will open WindowMaker Preferences. This is one way to customize WindowMaker to your tastes.
PCLinuxOS has a better way to control WindowMaker.
Open the system menu and click on More Applications -> Configuration -> WindowMaker Configuration Manager.
This opens the alternate utility for WindowMaker configuration, and gives you more control over WindowMaker than the Preferences utility.
WindowMaker Configuration Manager
When you first launch this WindowMaker utility, you will see a message that says .wmakerconf does not exist. Click on Yes to create that directory in your home directory to store your preferences.
PCLinuxOS Gnome Edition Users: Behind the utility window is another window showing that it cannot find the default wallpaper supplied with Mandriva's packaging of WindowMaker.
We can see here that WindowMaker comes with lots of settings for you to configure, not to mention the potential for lots of eye candy.
Note: WindowMaker has its own menu configuration, in terms of the format in which the menu is stored. You can use WindowMaker's own format for storing menus, but be warned of this: the WindowMaker format is not compatible with the menuing system used by PCLinuxOS or by Mandriva (on which this implementation of WindowMaker is based).
If you choose to use WindowMaker's internal menu system, those menus will not be updated when you update or add software to PCLinuxOS. All other settings herein are safe to use and configure.
Note: WindowMaker has not been updated since 2008, so the chances of an update for this are quite slim, yet the window manager still works to this day.
WindowMaker Themes
Like the other desktops that come with PCLinuxOS, WindowMaker comes with its own set of themes. In a later article, I will show you how to create your own themes for WindowMaker.
The PCLinuxOS repository provides a set of themes for WindowMaker, installable from Synaptic. These are stored at /usr/share/WindowMaker/Themes and are available to any user on your machine.
You can install your own themes by placing them in ~/GNUStep/Library/WindowMaker/Themes, with "~" representing your home directory. Themes are packaged as standard .tar.gz files.
So where do we get themes? Some sources for prepackaged themes are as follows:
- http://wmthemes.jessanderson.org/
- http://lonelymachines.org/windowmaker-themes/
- http://themes.freshmeat.net/
- http://box-look.org
- http://web.cs.mun.ca/~gstarkes/wmaker/themes/
You can also perform a Google search, using "windowmaker themes" as your search term, to find other sources for themes.
This is only an introduction to WindowMaker. In future articles, I'll show you next some basics on configuring WindowMaker under PCLinuxOS.