Skip navigation.

Missing pieces

Everything you should know about technology, but have been missing out

Managing windows

, , ,

When managing Windows, there's not too many options, but Unix/Linux has quite modular structure. In most cases window manager can ge changed from graphical login screen, in other cases by editing one row in config file.

But what's window manager? If you got operating system as premade package, you might no even realize that it's there (that's even point of Metacity, Gnomes window manager). First picture is plain Xorg without any window manager. It works as at least some programs have parameters to set window size and placement. But not very convenient, even for keyboard junkie. Though if you want to save some memory, this is option too.

Quite convenient for kiosk setup too, as whole screen is taken by the only running application and there's no minimize buttons, task bars and things like that. Exiting the application exits X too, so it's not secure setup on it's own. But using such setups would mean less funny blue screens and anti-virus notifications for public information displays.

Some features are provided by Xorg itself. Keyboard and mouse work, but with one terminal open, mouse is not that useful yet as there's no buttons to click on and windows can't be dragged around. Resolution can be also changed with keyboard shortcuts. In addition it's possible to launch programs from remote computers and display them on this screen. No need to install additional programs for that as X is designed to be networked. Though it's also security risk, so X doesn't usually listen for network connections by default, just connections from local computer. That can be circumvented securely with SSH, but that's another topic for some another time.

So what happens when window manager is launched? As you can see window suddenly has title bar and there's task bar and menu. I cheated a bit and added background image by hand.

Window manager in this screenshot is Fluxbox. Quite lightweight, though some themes are slightly heavier than others. Menus can have transparency and windows can be grouped together.

Theme is not the default one, Fluxbox includes just some more simple themes by default. I think the project is still alive, so some new features might be expected. Fluxbox supports also small applications that Window Maker calls dockapps. Configuration is done by editing configurations files by hand as almost everything else too. And of course, virtual desktops are supported.

Second window manager is Afterstep. This is the default theme and doesn't look bad for default theme. As can be seen from the picture, windows can be grouped too, but this feature is reserved for terminals.

Afterstep takes some time to get used to as all three mouse buttons seem to have different function with every button. Dockapps are also supported and some of them are launched by default. Again, configurations is done by editing configuration files by hand. I think there was some graphical configuration tool for older Afterstep, but I have never used it. By default there's few virtual desktops that are divided in four parts.

And then my favourite, Window Maker. No, theme in the screenshot is not the default theme. Default theme is not completely plain though, it has some gradients.

Nice thing about Window Maker is that there's really no need to edit configuration files by hand, there's graphical utilities for configuring most of the things. If the default configuration tool is not good enough, another alternative configuration tool can be installed.

Window Maker does things differently, or at least differently than Windows does things, so there's slight learning curve, but reading the manual is not mandatory to get things done.

Another nice thing is that things can be dragged around. Rearranging dock (that's where dockapps live, on the right side of the screen in this screenshot) can be done by dragging dockapps around. It's also possible to enable dragging of windows from one virtual desktop to another.

Development seems to be slow, so new features can't really be expected.

And now something slightly different. WMII is one of the tiling window managers. That means that each window gets it's own tile of the screen. Usually that means too that themes are plain and mouse is not necessary. WMII is easiest to learn so far of window managers of this type that I have found.

Usual problem with window managers like these is that some programs don't behave well when stuffed in small tiles. WMII supports floating windows too, so those misbehaving applications can be used normally too. Though I would like to see window manager that's not so strict with tiling princibles. For example giving requested window size for application is not that bad with some applications. Dockapps like to have 64x64 pixel space usually for reason. Though there should be dock for Ion, but I haven't been able to enable it.

Last one in this article is Enlightenment, more precisely E17, version that's not released yet. That still doesn't stop it from being popular and some distributions offer development snapshots and if yours doesn't, there always Elive (too bad there's no free download). E17 isn't strictly only a window manager, it's more like lightweight desktop manager. It has graphical configuration tools, file manager and its own toolkit.

Another thing that could be said about E17 is that it's artistic window manager, even bit too much in some places with the default theme. Theme in this screenshot is not the default one, but default one doesn't look bad either. All kinds of desktop effects are supported. For example animated backgrounds, rain and snow. 3D acceleration is not supported, so no 3D effects like in Beryl or Compiz.

If these window managers are not enough for you, there's more of them. Impartial, but still good list of them can be found from http://xwinman.org/

Security podcastsScreen - the terminal window manager

Comments

DrLaunch 4. May 2007, 13:46

I remember trying out WindowMaker. I must say that it's pretty clever. But I decided I liked more typical desktops more.

Enlightenment looks quite interesting. I have to try it when I get the chance.

Great blog post! :smile:

Omie 15. May 2007, 13:19

WindowMaker has been my favorite floating window manager since it was released. I really like a lot of the OpenStep paradigms for window managers, and before I used WindowMaker (before it came out), I used the old Afterstep. I've tried the new Afterstep as well, and it's pretty cool!

However, you forgot to mention the best window manager available :smile:

Ion! -- http://modeemi.fi/~tuomov/ion/

Ion was one of the first "tiling" "frame-based" windowmanagers, and ion3 is the development release which is also the only one that most people use. All of the low-level X functions are written in C, but most of the windowmanager features and behaviors (including drawing) are done in Lua. Ion has an embedded Lua interpreter built right in which allows for nearly limitless customization and extensions.

I use many different windowmanagers, but I always end up going back to ion3 just because it really lets me get a lot of work done, and it really makes me feel POWERFUL. I have bindings that let me swap window positions, ssh to all my shells, upload testing files to servers, pull branches in bzr and perforce, etc. etc. And I'm even using it in some internal tools for my company (hardware testing and monitoring stuff).

Antero Hytönen 15. May 2007, 20:32

Look closer. There's Ion link there too :wink:

My intention wasn't to review all availabe window managers, so I left Ion out among some others. Though if I get the dock working, I might try it again. Ion just takes some time to get used to.

Omie 18. May 2007, 19:29

heh. Oops. I missed it somehow.

Oh well, I guess I just jumped on a chance to plug ion =).

Might be able to help with the dock, though.

Find out where your ion3 config files are. They may be in /usr/X11R6/etc/ion3, /usr/share/ion3, etc.

cp those to ~/.ion3
edit cfg_defaults.lua
uncomment the line that says --dopath("mod_dock")
edit cfg_dock.lua to your liking.

start/restart ion3. Start up a dock program. It should get swallowed.

Antero Hytönen 19. May 2007, 21:32

I got dock to work, though not splits, which is a shame. It would be interesting to see if Ion works better with Mplayers fullscreen than WMII. WMII likes to keep Mplayer tiled in fullscreen, which defeats purpose of the fullscreen completely.

I'll have to check if ion2 works better. And edit the menus, so I can go back to Window Maker without quitting X.

Omie 20. May 2007, 16:20

ion3 is the only one to use, really. And yes, it does an excellent job with fullscreen applications!

ion has become like emacs for me, though =). For example, I'm running windowmaker on this NetBSD box right now because I don't have my ion3 scripts copied over! Just like the problem I have using emacs on "stranger" machines because I lack my .emacsrc :frown:.

For a long time I switched to vim just because of this reason. Now, I'm more or less flexible on the two, and when I have my own emacs install with all the nice setup that I'm used to, I use that, when I'm on a "stranger" machine I use vim. I also do most of my development work on a familiar emacs install, and edit files remotely or setup my own version control for pushing changes from that "familiar" machine.

vim and windowmaker are always pretty much the same or just a quick config quip away from "familiar"; I guess they're my rocks.

Antero Hytönen 20. May 2007, 16:41

I got Ion2 to work, but maybe I'll need to figure out how to make splits work in Ion 3. At least frames are not forced to take up whole screen in Ion 3, so I can leave some space for the dock.

At least Ion is not that much in the way anymore. Configuring keyboard shortcuts takes some time to change them so that they don't conflict with program shortcuts, but otherwise I remember enough them to actually use Ion properly.

Anonymous 28. May 2007, 00:36

Chris writes:

I'm not sure if you have heard about the Xmonad - a minimalist tiling window manager. The code consists of ~400 lines of haskell and includes support for xinerama. If you like tools that just get the job done then you can check it out at www.xmonad.org

Antero Hytönen 28. May 2007, 20:20

I think I have heard the name Xmonad, though I have never tried it. I don't care that much about the minimalism and line numbers, more about the overall functionality.

Tiling is handy feature and that's why I have been playing with Ion for a while. But Xmonad has automatic and customizable tiling. Could be worth trying out.

How to use Quote function:

  1. Select some text
  2. Click on the Quote link

Write a comment

Comment
(BBcode and HTML is turned off for anonymous user comments.)

If you can't read the words, press the small reload icon.


Smilies

December 2009
M T W T F S S
November 2009January 2010
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31