Necessary kernel modifications:
Motorola must have stealthily removed this from the kernel :P To re-enable it, add an #ifdef in arch/arm/kernel/setup.c as per http://kerneltrap.org/mailarchive/li...0/1/28/4533180.
CONFIG_CMDLINE="mem=244M@0x80C00000 mtdparts=omap2-nand.0:640k@128k(mbm),384k@1408k(cdt),384k@3328k(l bl),384k@6272k(misc),3584k(boot),4608k(recovery),1 43744k(system),94848k(cache),268032k(userdata),2m( kpanic) root=/dev/mmcblk0p1 omapfb.rotate=1 noinitrd quiet".
That's about it! Just compile it, use Koush's AnyKernel update.zip generator, and flash away! I tried Ubuntu, but Thumb-2 support is broken in the kernel - it can't execute /sbin/init, so it panics. In theory, Gentoo, Slackware, Arch, Angstrom, MeeGo, and many other Linux distros for ARM should work with little modification. The sky's the limit! (JK, Windows 8000 won't work :P)