It has been my goal to have a light-weight -- but featureful -- desktop for a long time.

For over seven years, I have ran blackbox.

But I also want icons, taskbar panel, menu at bottom (or top), pager, and maybe a systemtray.

This webpage will attempt to briefly document my research in this.

fbpanel

Depends on gtk2+, pango, cairo, Xft, libpixman. Provides plugins for clock, panel, system tray, menu, pager. Has pop-up tool tips. EWMH compliant.
$ size /usr/pkg/bin/fbpanel 
   text    data     bss     dec     hex filename
  51497    1580     660   53737    d1e9 /usr/pkg/bin/fbpanel

$ ps -p 2196 -o pcpu,pmem,nvcsw,majflt,rss,rsz,start,time,tsiz,utime,vsz,comm
%CPU %MEM NVCSW MAJFLT  RSS  RSZ STARTED    TIME TSIZ    UTIME  VSZ COMMAND
 0.2  4.4  8264     14 7172 7172  6:43PM 0:09.39   52 8.807646 3440 fbpanel 

fspanel

Depends on Xft. Patches extra for internationalization. It is only a taskbar panel and pager. It is very efficient. No program launcher menu. EWMH compliant. No more development.
$ size /usr/pkg/bin/fspanel
   text    data     bss     dec     hex filename
  10379     776     260   11415    2c97 /usr/pkg/bin/fspanel

%CPU %MEM NVCSW MAJFLT  RSS  RSZ STARTED    TIME TSIZ    UTIME VSZ COMMAND
 0.0  1.2   276      8 2020 2020  7:06PM 0:00.15   12 0.107769 248 fspanel

taskbar

Depends on Xft and older imlib-1. EWMH compliant. No development since 2003. Includes clock and sensors plugins. Has tooltips. No pager.
$ size /usr/pkg/bin/taskbar
   text    data     bss     dec     hex filename
  41962    1760    1012   44734    aebe /usr/pkg/bin/taskbar

$ ps -p 18921 -o pcpu,pmem,nvcsw,majflt,rss,rsz,start,time,tsiz,utime,vsz,comm
%CPU %MEM NVCSW MAJFLT  RSS  RSZ STARTED    TIME TSIZ    UTIME VSZ COMMAND
 0.0  1.3   306      1 2148 2148  8:36PM 0:00.08   44 0.059702 156 taskbar
The following is with small menu turned on and the libclock plugin loaded.
%CPU %MEM NVCSW MAJFLT  RSS  RSZ STARTED    TIME TSIZ    UTIME VSZ COMMAND
 0.0  1.7   358      0 2792 2792  8:41PM 0:00.22   44 0.169751 352 taskbar

kpanel

need to do ...

xfce4-panel

need to do ...
TODO: file managers and icon managers: lighter-weight:idesk, dfm, rox; kfm or gmc
TODO: window manager with taskbar/pager: icewm plus add icewmtray

jwm

Depends on Xft and png. jwm window manager has taskbar, tray, pager, clock, popups. TODO: I think tray is a dock and their terminology for a dock is the systemtray. Check this?

May have problems with EWMH spec. fspanel and taskbar and fbpanel don't work correct it seems (but work perfect with blackbox). Seems to work somewhat though -- so maybe I am wrong. Nevertheless, they are not needed. TODO: add configuration so double-click on title bar will shade it. TODO: maybe "FOOStyle" settings should just be put with the FOO settings.

$ size /usr/pkg/bin/jwm
   text    data     bss     dec     hex filename
 114677    2128    1908  118713   1cfb9 /usr/pkg/bin/jwm

$  ps -p 3729 -o pcpu,pmem,nvcsw,majflt,rss,rsz,start,time,tsiz,utime,vsz,comm 
%CPU %MEM NVCSW MAJFLT  RSS  RSZ STARTED    TIME TSIZ    UTIME VSZ COMMAND
 0.0  3.3   206     30 3204 3204 10:45PM 0:00.67  116 0.588447 932 jwm 

blackbox

Depends on libintl and standard X. Has menu. Has dock. No systemtray, no keybindings, no taskbar panel.
$ size /usr/pkg/bin/blackbox
   text    data     bss     dec     hex filename
 364041   20972     600  385613   5e24d /usr/pkg/bin/blackbox

$ ps -p 16434 -o pcpu,pmem,nvcsw,majflt,rss,rsz,start,time,tsiz,utime,vsz,comm
%CPU %MEM NVCSW MAJFLT  RSS  RSZ STARTED    TIME TSIZ     UTIME  VSZ COMMAND
 0.0  1.0 47004    328 1572 1572 Fri05PM 0:23.20  344 12.513671 1860 blackbox
bbkeys is keybinding tool (used with blackbox).
$ size /usr/pkg/bin/bbkeys  
   text    data     bss     dec     hex filename
 128028   10368     928  139324   2203c /usr/pkg/bin/bbkey

$ ps -p 16568 -o pcpu,pmem,nvcsw,majflt,rss,rsz,start,time,tsiz,utime,vsz,comm
%CPU %MEM NVCSW MAJFLT RSS RSZ STARTED    TIME TSIZ    UTIME VSZ COMMAND
 0.0  0.6 17949    113 928 928 Fri05PM 0:02.32  124 1.060430 392 bbkeys

Seems like running jwm would use less resources than adding various other components together.


NOTE: some of the above ps output is from different systems.