I like Fluxbox. It's very easy to install and doesn't require a bunch of other stuff. There are some neat customizations you can do for it, too.
To display your own image as the desktop background (it's not really a desktop, but it looks like one), you can install Which-2.20, libast-0.7 (not in BLFS), Eterm-0.9.6 and Eterm-bg-0.9.6 (not in BLFS). All of those are simple to install (I can tell you where they are and how to install them). Put the image file, say background.png, in $HOME/.fluxbox. Then edit $HOME/.fluxbox/overlay to add these lines...
Code:
background: aspect
background.pixmap: $HOME/.fluxbox/background.png
Viola! That image is the background. I like to use Gimp to crop and scale my background files. I have a scheme arranged for about a dozen images to be randomly rotated for each log in.
To establish automatic starting of X and Fluxbox, edit $HOME/.xinitrc to add something like this...
Code:
exec dbus-launch startfluxbox &>>/dev/null
If you don't have D-Bus yet, omit that dbus-launch part of the command. The redirect is to keep junk off my tty console (it's visible at log out time). Then put this in $HOME/.bash_profile...
Code:
# Start X automatically after login...
if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
startx
fi
To adjust the panel clock properties, right-click on the panel clock. Then edit the clock properties to the following for hours, minutes, AM/PM, weekday, and date (see strftime for more possibilities)...
If your fonts look bad, try adding your own fonts to the system. I find adding my collection of Windows TTF fonts in $HOME/.fonts followed by
fc-cache -fv makes my Fluxbox look kinda nice (other stuff pick those up, too.)
To get the Fluxbox menu to pop up via a key press, you can establish a keyboard shortcut for that. I use that useless Windows menu key (usually next to the right Ctrl key) for a shortcut to the Fluxbox menu. This is handy when the desktop is hidden by maximized windows, but I forgot how to set that up. And it is mysteriously missing from my notes. If I find that information, I will return and add the steps for that very useful Fluxbox modification.
...Okay, I still can't find my notes about this, but I can plainly see that I put the following lines in $HOME/.fluxbox/keys to use the Windows menu key for the Fluxbox menu ...
Code:
# get menus with the menu key
Menu :RootMenu
I vaguely remember some command that I used to identify the name of a key when it is pressed. Then the Fluxbox wiki has a page about the
keyboard shortcuts. I'm sort of pissed that I have misplaced that stuff.
...I never found my notes, but as it turns out, everything one needs to know is in that Fluxbox wiki about shortcuts. The terminal command to identify a key's name for the purpose of making it a Fluxbox shortcut is
xev. Example output for that useless Windows key after running
xev...
Code:
KeyRelease event, serial 36, synthetic NO, window 0x600001,
root 0x15c, subw 0x0, time 8969509, (-244,720), root:(517,743),
state 0x0, keycode 135 (keysym 0xff67, Menu), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
Then, I used that "Menu" name in the $HOME/.fluxbox/keys file as described above. I got the :RootMenu part for the Fluxbox menu elsewhere in the wiki and by just studying the existing keys file. Simple after all.