[lug] detecting which window manager?

Michael J. Hammel mjhammel at graphics-muse.org
Mon Jun 27 19:54:44 MDT 2005


On Mon, 2005-06-27 at 16:27, Michael Hirsch wrote:
> KDM is a login manager that is part of the KDE project.  KDE is an
> integrated desktop environment--and that includes a window manager. 
> When you look at the list of processes do you see lots named
> "kdeinit"?  If so, they you are running KDE and KDE is your window
> manager.
> 
> Under KDM you can usually choose to run with KDE, GNOME, IceWM, or
> some other desktop.  

KDE and GNOME are desktop environments, which provide features like
session management for multiple clients and other interclient
communication features.  This would include integrated Help systems, for
example.  Extended drag and drop features also tend to be handled at
this level of the desktop.  Themes are also handled at this level,
though these used to be (and to some extent can still be) handled by
window managers.  The integration of the GUI development environment
(GTK+ and Qt, for example) is a relatively recent extension of the
desktop environment.

A window manager is a specialized X client that knows how to manage all
other client windows in an X display.  Window managers do not typically
handle session management or interclient communications.  The window
manager talks with the client windows it manages, but doesn't act as an
intermediary between two independent applications windows.  Window
managers handle things like minimize/maximize, workspaces, and window
borders and titlebars.  Without a window manager your applications
windows could not be moved around the display.  The desktop environments
do not manage windows directly for this.  They rely on the window
manager for those features.

IceWM is a window manager and not a complete desktop environment.  There
are multiple desktop environments for Linux, with GNOME and KDE being
the most popular.  XFCE is another very stable and thoroughly supported
desktop environment.  XFCE tends to be a bit more lightweight than GNOME
and KDE and therefore makes a better desktop for resource limited
laptops.  The grandfather of desktop environments for Unix systems is
CDE - the Common Desktop Environment - which is still heavily used on
non-Linux platforms.

Switching window managers isn't extremely difficult, though under KDE
and GNOME session management (which are the tools that are used to start
up X clients in their relative desktops) it seems to get harder every
year.  I honestly can't remember where the config is for changing window
managers under GNOME (I don't use KDE), though in the early days of
Linux and X, it was as simple as adding it to your .Xclients file. 
Hell, I remember when using gdm (or rather xdm) was more pain that it
was worth.  I'd still rather not use it, but I'm too lazy to try and
disable it now.

> There usually is a default, but the easiest thing
> to do is pick the one you want.  I thought that Fedora defaulted to
> GNOME, but I don't use it and won't swear to it.

I think it does.  But it offers KDE and XFCE (possibly others) from the
login screen.  Essentially what the login manager does is start the
environments session manager (if it has one - KDE, GNOME and XFCE) or
start a set of clients, the last one of which is the window manager
(when no desktop environment is involved).

This stuff has changed so much in the past 5 years its hard to keep up
with it. 

-- 
Michael J. Hammel           
The Graphics Muse              Books we'll never see:
mjhammel at graphics-muse.org        "George Foreman's Big Book of Baby Names"
http://www.ximba.org        




More information about the LUG mailing list