[moon] home
IPv4

Erlkönig: Windowing Environments

Window managers are not quite the same things as desktops...
parent
[parent webpage]

server
[webserver base]

search
[search erlkonig webpages]

trust
[import certificates]


homes
[talisman]
[zoion]

Warning and apology: this post is a bit of a mess, since it relied on a second, now lost article for context. Long live bit rot...

2008-07-18 14:03:01 CDT (Jul Fri) 1216407781

Posted as a reply (okay, rant) into Digg about an article – long since consumed by link rot – which I felt was describing desktops and window managers a bit narrowly, especially in skipping modern compositing WMs like Compiz.

Although the article states that window managers are a GNU/Linux phenomenon, they're actually a more generic Unix phenomenon, even bleeding into all other OSes where X itself is supported. So the early sentence starting with "Officially, a window manager [...] is" is a bit off. Further, in X, technically the program "X" (or some variation thereof) actually draws *everything* (except for what OpenGL might draw, but that's beyond the scope of this reply). The client programs simply send requests to the X server to draw various things, move windows, get input, etc., and the window managers are just specialized client programs that focus on reparenting other applications' windows into the WM's windows, and then decorating, moving, or manipulating those.

Desktop Environments are generally considered to be combinations of a window manager and other tools to set up a particular default environment for a user seen upon login before any specific application is run. The other tools often include special bars at the edge, clocks, email notifiers, file managers, screensavers/lockers, popup menus on the root screen, etc. Some DEs are tied only very loosely to any specific window manager, while in other cases the WM is the dominant part, or even the entirety, of the default experience.

X's first window managers in the 1980s were things like "xwm", a truly minimalist window manager with (in X10) an odd special quirk of making iconified XTerms still have tiny active icons using the "nil2" font. Other popular ones were "uwm", "twm", "vtwm" (I think), and "tvtwm" (Tom's Virtual Tabbed Window Manager). The ones with "v" in them introduced the fantastically successful idea of a virtual desktop. A early LISP-based one was "gwm", based on a LISP dialect called Wool, although it ran too slowly on the hardware of the day to become popular. FVWM's module facility, on the other hand, was a major stride forward being both fast and becoming quite popular. Later WMs like Enlightenment started appearing with serious support for decorating window parts with images, although uptake with stalled by its initial notorious fragility: for example you could start Enlightenment without a config file, and it would simply unmap/hide all of your windows and exit - now *there* is desktop simplicity). Enlightenment was, if I remember correctly, tied in with the development of a support library for reading a much wider range of image formats with fueled creativity in other projects as well. More recent developments include virtualizing the windows themselves into 3D textures (initially usually with X servers modified to render into OpenGL textures) like XGGI, XGLTEX/XVFBTEX, and the recent and fabulously successful Compiz/Fusion.

After decades, we have windows (including XTerm) with real translucency instead of the hack of copying the root screen into the window background. Cool. Of course, that's still just a single alpha value for the whole window, which is a bit limiting, but that'll have to do until we start seeing windows that render into RGBA OpenGL textures from the outset.

Contrary to the article, hardly anyone calls the "*Boxes" that; simply calling them "minimalist" highlights their true commonality better. Normal, non-tiled window managers *could* be called "floating", but to most people who've never even heard of a tiled WM (or a tiled dev environment like Oberon or something), using the extra adjective would just be superfluous.

The article mentions SawMill [ed: may have meant SawFish here], but leaves out the heart-wrenching loss of SawMill from Redhat Linux, as all of its rich features were steadily discarded on RedHat's warpath to make Gnome and KDE both have the same basic UI, and same least-common-denominator inflexibility. Seeing WMs caged down to the level of Microsoft products has not been all that pleasant to watch, although it does, perhaps, prevent people like my Mom from setting their entire window environment to use dark purple text on a black background, which *might* be a good thing. For them.

NextStep was awesome - we were completely blown away during the NeXT cube demo at MCC in Austin in 1990. Although we didn't get good answers to what happened when a dictionary search popped up too many (more than 127ish) windows, and had to raise a fuss about the permissions UI labelling the "user" part of the file mode bits as "me" - regardless of files' real ownership. Still, such a gorgeous system, built on Unix and Open Software, was a jewel. Small wonder Id Software loved them. :-)

The real question in window managers now is how to handle 3D. Face it, for the most part Compiz is still fundamentally managing 2D windows from the 1980s. When do we start seeing *native* OpenGL terminals with RGBA to just make the *background* translucent instead of the text. And the long-term question is when do we start seeing true 3D applications in a *shared* space, instead of each one being caged in a little 2D window?

encrypt lang [de jp fr] diff backlinks (sec) validate printable
Klein bottle for rent; inquire within.
[ Your browser's CSS support is broken. Upgrade! ]
alexsiodhe, alex north-keys