Hoops I had to jump through to make gnome-session use xmonad (on Ubuntu), and other stuff
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This is turning into a grab-bag of stuff that might save me from future grief...

I took the following steps to add a Xmonad-GNOME session to the login screen in Ubuntu:

1. Copy xmonad-gnome to /usr/bin.
2. Copy xmonad-gnome.desktop to /usr/share/xsessions.
3. Set gnome-wm as default window manager for gnome-session.
4. For the above to "stick" it seemed I had to force the first usage of xmonad by killing the running metacity and running xmonad.


sudo cp usr/bin/xmonad-gnome /usr/bin
sudo cp usr/share/xsessions/xmonad-gnome.desktop /usr/share/xsessions
gconftool --type string --set /desktop/gnome/session/required_components/windowmanager gnome-wm
killall metacity && xmonad

Other good stuff:

1. Don't use Nautilus desktop. 
   gconftool-2 --type boolean --set /apps/nautilus/preferences/show_desktop false
2. Swap left alt and win key, use win key (mod4Mask) as xmonad mod key.
   This setup gives reasonable ergonomy for xmonad while keeping left alt.
3. Ignore gnome-do with a ManageHook.

Grub2 menu
1. Edit /etc/default/grub to remove hidden timeout.
2. Regenerate /boot/grub/grub.cfg by running `sudo update-grub`.

Kernel updates and Guest Additions
Reinstall VirtualBox guest additions after eache kernel change. After (re)installing the guest additions may need to use Host+G and Host+F to "enable" the resolutions greater than 800x600. Someone recommended using the linux-virtual kernel, but make sure to also install the header files or building the guest additions will fail! 

Installation says:

> Your Linux system is currently configured to watch 8192 files in real time.
> We recommend using a larger value; see the CrashPlan support site for details

Fixed by adding /etc/sysctl.d/60-crashplan.conf

Cabal dependency hell
When this happens remove the ~/.ghc folder and reinstall all packages.

Don't try to upgrade time – it invariably leads to grief! (This probably applies to many other packages included in the Haskell Platform)

rm -rf .ghc/i386-linux-6.12.1/
cabal update
cabal install ...

When installing postfix synaptic says:

> Postfix was not set up.  Start with 
>   cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf
> .  If you need to make changes, edit
> /etc/postfix/main.cf (and others) as needed.  To view Postfix configuration
> values, see postconf(1).
> After modifying main.cf, be sure to run '/etc/init.d/postfix reload'.

sudo cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf