Hi, I've ported Ubuntu Touch with "flipped" containers (booting directly into Ubuntu) to the Desire Z. First of all, thanks to #ubuntu-touch and especially Oliver Grawert for helping me with some of the issues I encountered. Device specific code is by the Andromadus team from XDA Developers since there's no official CyanogenMod for this device. You can check the port out at [1], it's linked as "flipped_vision" and the page has some installation instructions / status information.
There's also the "unflipped" Port with less bugs and more device-specific features by utopykzebulon. [1] https://wiki.ubuntu.com/Touch/Devices Although I have almost no experience with kernel building and low-level things, here is my general advice for porting the flipped stuff: * There are apparently two different approaches for mounting the flipped images, and it seems like my port uses the old-style approach. * The android_build repository on phablet.ubuntu.com has all the required changes to create the android zip file. It downloads files for a generic initramfs and puts them in "out/target/product/devicename/ubuntu-root". I think that changes to those files are not automatically put back into the ramdisk. (I've added an additional step to repack the ramdisk after changing the ubuntu-root/ dir contents.) That ramdisk is then used to create boot.img instead of the cyanogenmod ramdisk (which is used for android-boot.img). * The "scripts/touch" file in the ramdisk needs to figure out the data partititon's device file name (like /dev/foo). It might fail for your device and cause the boot process to fail. I've hard-coded the device path for the Desire Z for now, maybe we can set this in the device config at build time later. * If the initramfs script has problems finding the data partition, then /usr/lib/lxc-android-config/update-fstab could have problems too. * /etc/init/lxc-android-boot.conf might be interesting as well. * The Ubuntu rootfs needs a udev rules file for your device. Check the /usr/lib/lxc-android-config/70-*.rules files as an example. You can create that file by looking at the ueventd*.rc files for your device from cyanogenmod and transforming the /dev/ settings to udev syntax. * There are some requirements for the kernel config. For example, I had boot failures before I enabled CONFIG_VT=y and CONFIG_VT_CONSOLE=y. * It's a good idea to check dmesg, logcat (you need to android-chroot first) and the various log files in /var/log/upstart if there are problems. Cheers, Florian -- Mailing list: https://launchpad.net/~ubuntu-phone Post to : ubuntu-phone@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-phone More help : https://help.launchpad.net/ListHelp