Improved Linux Screen Space Management With PekWM

By Caitlyn Martin
March 7, 2009 | Comments: 20

With the growing popularity of netbooks more and more people are using small screens which support lower resolutions than larger laptops or desktop displays. The most common native netbook resolution is 1024x600 for 8.9" screens and just 800x480 for 7" screens. In addition, in these challenging economic times, more people are stretching the life of older displays which may also only support resolutions of 1024x768 or less. The challenge for those who do a great deal of multitasking and tend to have lots of windows open is finding a good way to manage them on a small screen. One solution is to use multiple virtual desktops which are supported by most Linux desktop environments.

PekWM offers an additional solution: window grouping. It allows a variety of different applications to be grouped together in a single window. Most everyone is familiar with tabbed browsing by now. The same concept has been applied to terminal emulators with different command line sessions accessible via tabs. Window grouping takes this one step further. When window grouping is used in PekWM the title bar in the window manager is segmented with each section effectively acting like a tab.

While PekWM isn't the only manager to offer this functionality it is probably the easiest and most flexible choice I've found so far. PWM was actually the first tabbed window manager but it hasn't been maintained since 2000. It's sucessor Ion, would probably be popular if its license didn't effectively preclude it being packaged for various Linux distributions. Fluxbox, a somewhat more sophisticated window manager also supports grouping/tabbing.

When used stand-alone PekWM is very much a minimalist window manager, offering a menu accessible by right clicking the desktop and configured by editing a text file. It does support theming and multiple desktops using either RandR or Xinerama. PekWM is also NETWM compliant. It can be used as a drop-in replacement for metacity in GNOME.

PekWM can also be combined with components like fbpanel, PCManFM, and VL-Hot to create a custom desktop environment. The photo below shows a custom desktop with those four components on my Sylvania g Netbook Meso running Vector Linux 6.0. The original resolution in the screenshot is 1024x600.

In this image the large window has four tabs: PCManFM, urxvt (a terminal emulator), the HV3 web browser, and the SIAG spreadsheet. The browser window is the selected tab, with the extensive PekWM documentation displayed. The smaller window at left is the PCManFM desktop context menu which has replaced the PekWM menu. PCManFM is used to manage the desktop background and icons as well.

Grouping windows is easy. You open the applications you want. You then place your cursor over the title bar of the first appllication, click and hold the center mouse button (or both buttons on a two button mouse) and drag towards another open window title bar. A small rectangle with the word "Grouping" and the name of the first app will appear (picture below). Drop the rectangle onto the title bar of the second app and the two applications will be in one window. This can be repeated as many times as you like.

Starting components of a custom desktop is simply a matter of adding them to the .pekwm/start file located in a home directory. To create a system-wide default start file on a multi-user system the same commands can be added to the end /etc/pekwm/start The commands I added to create the desktop in the screenshots are:

/usr/bin/fbpanel &
/usr/bin/pcmanfm -d &

PekWM is extremely lightweight making it ideal for legacy hardware. I had an old Pentium 133 system with just 32MB of RAM which finally died last summer. It ran a minimal build of Ubuntu with a desktop consisting of PekWM and fbpanel. I used Esetroot launched from the start file to add a background image to my desktop. Performance was surprisingly good in this configuration. I also use the combination of PekWM and fbpanel on my 10 year old Toshiba Libretto SS1010 running Vector Linux Light 6.0 beta 2. That system has a Pentium 233MHz MMX processor and just 64MB of RAM. It's also smaller than most of today's netbooks with a 7" display which only supports 640x480 resolution. Once again performance is surprisingly good leaving most of the little memory that system has for applications. A tabbed window manager is essential to me at such a low resolution.

Tabbed/grouped windows combined with virtual desktops gives me the ability to multitask and move between applications easily on what would otherwise be very cramped screen space on my netbook and on legacy systems. The combination of simplicity, standards compliant design, and low resource consumption make it ideal for those systems.


You might also be interested in:

20 Comments

This is nothing new we was doing the same sort of stuff, years ago. Remember 486's with slow video cards and high resoloution monitors was almost unhead of for the PC world. We was dealing with apps that was made for *NIX workstations and typically didn't scale well to 800x600 or 1024x768 we was limited to.
Virtual desktop is still available, but it tends to mess with DRI today where we didn't have that option years ago.

http://home.alltel.net/catfish/ss.jpg
http://home.alltel.net/catfish/xawtv.ss.jpg
http://home.alltel.net/catfish/ss.last.jpg

So what does PekWM give me that Fluxbox hasn't or doesn't?

@Robert: PekWM is lighter (consumes less memory, CPU cycles) than fluxbox. I also find the way they do the grouping easier. In general fluxbox actually has more features and tools than PekWM. It isn't really designed to be dropped into a larger desktop environment while PekWM is, IMHO. Other than that it's a matter of personal preference. PekWM doesn't have any functionality that fluxbox doesn't also have.

@Terry: I really don't think you understood this article at all. Your screenshots are of high resolution desktops with lots of windows open. Your sreenshots do not show any grouped or tabbed windows. This article is about grouping windows to save space on low resolution and/or small screens. PekWM is relatively new and is an elegant implementation of window grouping/tabbing, hence the article. Your "nothing new" comment isn't accurate, sorry.

Nice presentation.

There is one other feature that is imho golden: the fill option. It simply maximizes the window to the available space in the screen.

This combined with the extensive keyboard shortcuts available makes PEKWM a really nice window manager.

Regards.

Great article, thank you! I believe PekWM is just the thing I have been looking for to run in my vnc sessions as a lightweight window manager. I prefer Gnome for my local interactive desktops but it is a bit heavy when run over even a broadband connection. PekWM will let me have speedy remote sessions with window sizes smaller than my current resolution without sacrificing the number of windows I have open.

Thanks, Caitlyn. I've been trying this out on my FreeBSD netbook. A few detours along the way (an old version of pcmanfm in the ports system, a bit of work finding icons), but otherwise great.

--

Phil

I don't mean this in a mean or disrespectful way, but what does grouping windows into tabs buy you that just maximizing and alt-tabbing through windows doesn't?

@Eric Mesa: When you have a lot of windows open tabbing through a long list is a pain. With window grouping it's one click and you're there. I find that much easier.

I've been trying pekwm on FreeBSD on a 9" ASUS EEE PC, and I keep having trouble with title bars becoming un-clickable when the windows get too close to the top of the screen. Half of the title bar is visible, but apparently the sensitive zone is on the upper half.

Other than that, the concept is nice.

@Phil: I haven't seen that issue on my 8.9" Sylvania netbook running Linux (dual boot Ubuntu Netbook Remix 8.04 LTS and Vector Linux 6.0). I wonder if it has something to do with the EeePC itself (the graphics driver maybe) or some difference in X in FreeBSD as opposed to Linux. I wish I had an explanation or a solution for you but I'm afraid I don't.

I seem to have found a workaround. First, right-click on the portion of the title bar that is still visible (after accidently dragging it off the top of the screen), then it can be dragged back down with the left mouse button.

Now to find a decent find a decent set of docklets for fbpanel (wifi status/settings, audio mixer controls, and battery status).

Thanks,

Phil

Some time ago I have wrote an blogpost on the way I am managing my 45 workplaces - might be interesting to read for super-multitasking system administrators like me:

http://skliarie.blogspot.com/2008/11/my-45-workplaces.html

Seems interesting, but why bother with a more-or-less conventional window manager on a small screen? I have been running Debian testing on my small-screen EeePC 701 for almost a year, using Awesome which is a tiling window manager.

No wasted screen space and nine tags (desktops).

Because most tiling window managers can be easily used with a keyboard, you don't have to play around with touchy touchpads.

I now use it on my multi-head workstation, too.

One application open with multiple tabs would be lighter than multiple instances open. I can see what you mean with browsers and terminals, but I wouldn't be running more than a few programs on a netbook or other low resource system, anyway. As Eric said, I'd just switch with alt-tab. I guess it's a nice feature, though.

@Cobalt: I really don't see my netbook as all that low in resources. The Intel Atom N270 1.6GHz processor in min is hyperthreaded and benchmarks as well as many 2.4-2.6GHz processors that aren't. 1GB of RAM is adequate to run a bunch of tasks at once. I find I use my netbook exactly the same way I use any other computer and that includes lots of multitasking which is probably why PekWM makes so much sense to me.

I think it's safe to say that I am not a typical netbook user but I expect a lot of my readers aren't as well.

Greetings,

I myself find the windows grouping to be quite an awesome feature. I use it in fluxbox, and that feature alone is what switched me from kde. It, to me, works as well as in pekwm, however I find the default bar and the alt + rt mouse button anywhere on the window for resizing to be great features that are not default in pekwm. Though I must admit pekwm is a little bit faster and nicer looking :P.

Those that question the window grouping feature, have you actually tried it and put it into use? I understand you are running a windows box, so gram a virtual box installation, install a linux distro in virtual box, and install pekwm or fluxbox, and try out the window grouping. Only then could you see what differences there are and what, if any benifits it may have for you versus alt-tabbing. One thing I can tell you though, with several programs grouped in a single window all you have to do is hit tab instead of alt tab to switch windows. Also the alt-tab works with grouped windows, and in pekwm, the middle mouse button also works similar to alt-tab. Also, say you have the feature in pidgin set to show how many messages you have in your im window, that shows in your grouped window title bar. And one other thing, it saves taskbar space :P.

Is it for everyone? No. Just like windows, and just like linux is not for everyone.

Good article btw :P

We had some discussion about this in the Wolvix forums and i've only just found that i didn't link back to it in here.
http://forums.wolvix.org/index.php/topic,1292.0.html
Phap did a little themeing but seemed to revert to the older wallpaper for some reason, here's his screenshot
ftp://ftp.wolvix.org/wolvix/people/phap/screenshots/pekwm.png

There's been a few different Wm's tried out and themed in Wolvix lately, some people have been having great fun with it :)

Thanks for another great article Caitlyn,
Regards from
Tom :)

Sadly, pekwm doesn't seem to work out of the box very well in Virtual Machine hosted on Windows. Many of the keyboard commands, and mouse click modifiers, use the Windows key, which isn't easily passed into the Virtual Machine.

Sometime, when I have the time at home, I'd like to try pekwm in a non-VM environment.

PekWM is a very awesome Window Manager, I love it!

I'm a user of Gnome, OpenBox, Fluxbox, KDE, and PekWM. Most of my light-weight systems are wrapped with OpenBox, but I've got to say that more and more I am enjoying using PekWM. It's light-weight, easy to configure, completely customizable, it's simple, but most of all... it's fun! Thanks for posting a nice article.

News Topics

Recommended for You

Got a Question?