Window Management

From Sfvlug

Revision as of 02:08, 15 September 2010 by Miasma (Talk | contribs)

Contents

SFVLUG Window Management Project

This project is still at a very early stage so nothing is yet written in stone and your input is welcome no matter what your experience level.

Q: Why a project on window managers, aren't there already a whole lot of window managers already available?

A: While there are already many window managers already available we have found all of them lacking in one way or another. Finding the right window manager for your needs is a little like the story, Goldilocks and the Three Bears. Some are too big and some are too small. This project is an attempt to find the right balance between the two. The opening between the two extremes provides an opportunity for exploration in an interesting area where the ways that people do things meets the capabilities and limitations of the machine.

Here are some initial guidelines currently under consideration:

The project is to be primarily written in Python 2.x but with future use of Python 3.x to be used in the future.

It is currently proposed to be based initially on the PyWM window manager.

It is to be positioned somewhere between the huge KDE and Gnome desktop environments and the extremely light weight window managers like wm2 or ratpoison.

It should be easy to use with input from both a keyboard and/or a mouse.

It should have easy and intuitive defaults that can be customized by the user without the need to reprogram any source code.

Here are some resources with information on existing window managers and desktop environments:

Right now these resources are in no particular order, but until I get around to categorizing them and putting them in a better order myself please feel free to do so yourself.

Comparison of X Window System desktop environments a Wikipedia article

Comparison of X window managers a chart comparing features

Window Managers for X an independent guide by Matt Chapman with help from the community

Ubuntu Forum a 4 year old Ubuntu forum thread with community discussion

Arch Linux wiki article chart and text comparing just the tiling window managers

Fvwm and Session Management a Linuxgazette article circa 2004 about session management in general and Fvwm specifically

Desktop Environments

More than just window managers these systems also provide tools and applications in a unified environment.

KDE 4.x Desktop Environment Currently both the most advanced and the most broken. A good experience with KDE 4 requires capable hardware to run on.

Gnome 2.x Desktop Environment Currently more stable but less features than KDE 4 but still demands a fair amount of horsepower for decent performance.

XFCE 4.x Desktop Environment The lightweight member of the big 3 desktop environments strives to provide compatibility to Gnome and KDE while sticking closely to the Unix philosophy of modularity and re-usability. A better choice for older and less capable hardware but still requires more power than light weight window managers.

LXDE a newcomer to desktop environments is lightweight and fast but is less mature and may not perform well on systems that have requirements outside the main stream, but this should improve with maturity. For old hardware this is probably worth a try before deciding on a feather weight window manager.

X Window System

The layer close to the metal upon which most window management is built.

X Window System Wikipedia Article Includes technical and political history. You might want to read this before heading to the XFree86 or X.org sites.

XFree86 Project Established in 1992 to provide UNIX windowing for Intel X86 architecture, replaced for most distributions a few years back in favor of X.org but still available.

X.org Foundation Relatively inactive fork of XFree86 until split in XFree86 brought it new life. Currently used by most current GNU/Linux distributions.

freedesktop.org In their own words, "freedesktop.org is open source / open discussion software projects working on interoperability and shared technology for X Window System desktops." They make particular note that these are specifications and *not* standards. A good place to go for info on EWMH (Extended Window Manager Hints) and ICCCM (Inter-Client Communication Conventions Manual) Software hosted on or related to freedesktop.org Open to any on topic projects. Specifications page at freedesktop, it is the place to go to find info on EWMH (Extended Window Manager Hints) and ICCCM (Inter-Client Communication Conventions Manual) Software hosted on or related to freedesktop.org Open to any on topic projects.


Python Stuff

PLWM is the Pointless Window Manager as well as a Python package containing classes capable of use in rolling your own Pythonic window manager. Absolutely worth a look. It is currently still available as a Debian package. The PLWM homepage at Sourceforge, has nothing much to see but there is a download for the source code and some long in the tooth documentation.

PyWM is another Python based window manager, also getting long in the tooth but still alive. It is based on FLWM which was in turn based on wm2 which were extremely light weight window managers written in C++ with an aversion to customization.

Personal tools