DELETEME ====== Chrooted Ubuntu ====== An Ubuntu can be installed in a chroot, and accessed through a VNC client. Why do this? You run Android and Ubuntu at the same time. Just press Home and you're back in Android. WiFi works out of the box - Ubuntu just picks up Android's connections. It's relatively stable. Also, this is a well-understood technique - people did it with many phones. Why not do this? The graphics performance is abysmal. You view Ubuntu through a VNC client, and with 1024x600 it's really slow. Sound doesn't work out of the box (but you can listen to music through the Android player while working in Ubuntu) Many keys don't work: ctrl, alt, pgup, pgdn, tab (tab emits an X event however, just the wrong one). Esc works. Right and middle clicks don't work too. You have to go through VNC client menus to send a right click. Chromium doesn't work out of the box. HOWTO Prerequisites - root, busybox 1. On the desktop, mount the AC100 storage. Make sure you have exec and suid mount options. Then run 'debootstrap--arch=armel maverick ' into a directory, say 'ubuntu'. Unmount. 2. On AC100: $ su # export PATH=/bin:/usr/bin:/sbin:/usr/sbin:$PATH # export USER=root # export HOME=/root # export TERM=xterm # busybox mount -o remount,exec,suid /storage # cd /storage/ubuntu # busybox mount -o bind /proc proc # busybox mount -o bind /sys sys # busybox mount -o bind /dev dev # busybox mount -o bind /dev/pts dev/pts # busybox chroot . bash root@localhost:/# That's the Ubuntu shell! 3. apt-get install lots of stuff. I feel ubuntu-desktop is too fat, but opinions vary. In the very least, we need tightvncserver and some window manager. 4. Set your timezone with dpkg-reconfigure tzdata. 5. Create a user with adduser username. You must also create a group with numeric ID 3003 and add yourself to it, otherwise vncserver's sockets will be blocked! So, addgroup --gid 3003 sockets usermod -G sockets -a username 6. Su to the user and create a file ~/.Xsession. Write there a list of stuff you want to run for a session, like a window manager. Here's an example: xterm & tint2 & openbox 7. Run vncpasswd to set a vnc password, then run vncserver -geometry 1024x600. It will tell you the VNC display number, most likely :1. 8. Install android-vnc-client and connect to 127.0.0.1:5901 (actually, 5900 + the VNC display number). Enjoy!