← Back to team overview

ubuntu-phone team mailing list archive

Ubuntu Touch on Emulator

 

Hey everyone.

I've got Ubuntu booting on the Android Emulator (QEMU).
The display is black, but I'm able to get a shell, so I think that's good
enough for a start.

It needs forking of two repositories from CyanogenMod:
https://github.com/CyanogenMod/android_sdk/tree/cm-10.1
https://github.com/CyanogenMod/android_kernel_goldfish

build/ and bootable/recovery were merged from CyanogenMod, and then the
below patches were applied.
build/ merges with a minor conflict in tools/roomservice.py, which is
easily fixable.
Same for bootable/recovery, minor conflict in recovery.c

Patches:
bootable/recovery/
https://gist.github.com/chirayudesai/5fb848f0b22a12990613
build/
https://gist.github.com/chirayudesai/7805698423d89e46c1a3
device/generic/goldfish/
https://gist.github.com/chirayudesai/b9008fd57e7b21abbee1
kernel/goldfish
https://gist.github.com/chirayudesai/00607ba8b0856e37754c
https://gist.github.com/chirayudesai/3a4583e83ad68b47363e - needed to get
ADB working.

After all of the patches have been applied to the respective directories,
do the below.
. build/envsetup.sh
lunch cm_goldfish-eng
mka goldfish

This will build everything needed.
Next, make a sdcard image using the `mksdcard` tool, which is used to
install "saucy-preinstalled-touch-armhf.zip<http://cdimage.ubuntu.com/ubuntu-touch/daily-preinstalled/current/saucy-preinstalled-touch-armhf.zip>
"
Boot emulator into recovery with `emulator -partition-size 4096 -ramdisk
$OUT/ramdisk-recovery.img -sdcard <path-to-sdcard>`
Push the zip to /sdcard, and install it.
After that, exit the emulator, and start it again with` emulator
-partition-size 4096`
`adb -e shell` will give you a shell :)

Follow ups