Couple days back, I had the pleasure of installing Ubuntu on my Nexus One. Well, after fiddling the kernel a bit, I’ve got it to run on the HTC Evo 4G also.
One problem we ran into was the fact that the HTC Evo 4G Roms (even custom ones) didn’t have support for loop devices, which is required to mount Ubuntu images. (Nexus One on the other hand, is enabled by default.) That meant we needed to re-compile the kernel with support. Which isn’t all that hard, just 1 line of code but we still had to flash the new modified kernel so we can start running Ubuntu on it.)
Anyways, thanks to devs at XDA developers input and trying, now we can all install Ubuntu on HTC Evo 4G and any other Android devices.
For other Android devices, if the bootubuntu script doesn’t work, you just need to re-compile the sources with support for loop devices.
Let’s now try installing Ubuntu on your HTC Evo 4G!
How to Flash Modified Kernel with Loop Devices Support!
First, download the new kernel and drivers I compiled with added support for Loop devices here:
Unzip the three files, zImage, bcm4329.ko, and sequans_sdio.ko to your /sdk/tools directory.
Also, if you have custom ROMs with hacks like overclocking, you can also compile your own kernel, full directions on that here.
Second, we are going to need to update the Kernel or your HTC Evo 4G to support loop devices, which will allow us to mount the Ubuntu images, so do:
*Note – This example is for Ubuntu/Linux/Mac, it should be similar for Windows just replace “/” with “\”.
chmod 755 fastboot
(For windows, you can find fastboot Windows here.)
Let’s push the new wifi/4G drivers. (You need them along with the compiled kernel, otherwise flashing the zImage will break your wifi/4G, that I’ve learned becaues they are compiled together! You can do a test with fastboot boot zImage without flashing but your wifi/4G might not work even if they exist already. )
./adb push bcm4329.ko /system/lib/modules/bcm4329.ko
./adb push sequans_sdio.ko /system/lib/modules/sequans_sdio.ko
Next, let’s flash the new kernel image:
fastboot flash zimage zImage
fastboot here will hang so just turn the power off on your Evo 4G then put it back into “fastboot” mode by pressing on the Power button WHILE holding down the Volume down button. Then press Power button once more to enter “fastboot” mode.
You should see the image flashing now. Just reboot after that.
After that, you can follow the same steps used here for Nexus One at NexusOneHacks.net. They are exact same files, we just needed to update the kernel to add support for loop devices. (Which you can do by adding CONFIG_DEV_BLK_LOOP=y in .config file during compiling of kernel. You can read more about that here for installing Ubuntu on other Android systems.)
You should be able to get the same Ubuntu booted-up nicely on the Evo 4G!
If you like this post, don't forget to Like us on our Facebook page!