1. Home
  2. Mobile
  3. How to install ubuntu linux on htc desire hd

How To Install Ubuntu Linux On HTC Desire HD

HTC Desire HDIn the past, we have shown you how to install Ubuntu Linux on HTC HD2 as well as on Google Nexus S and now, you can install the latest version 10.10 (Maverick Meerkat) of this popular Linux distribution on HTC Desire HD, courtesy of senior XDA-Developers forum member and a very talented developer, LeeDroid. More details after the jump.

This is a pretty functional port of Ubuntu 10.10 Maverick Meerkat on the Desire HD and the best part about it is that you don’t even need to replace your Android installation to be able to run Ubuntu. Heck, you don’t even need to reboot your device; it’ll run from right within Android, and there are also instructions on how to enable the GUI!

Following is a list of what you can expect from this Ubuntu build on your Desire HD:

  • A fully functional Linux terminal with access to all the standard Linux command line utilities.
  • A fully functional Gnome desktop environment.
  • Several graphical applications already included for you to run.
  • A fully functional desktop version of Mozilla Firefox 3.6.13 browser.
  • The ability to compile and run native Linux programs right on your phone.

There are a couple of known issues as well:

  • Ubuntu sounds will not work,
  • Not all Ubuntu applications will be able to run.

Now if you want to get on with the installation, here is the complete guide.

Disclaimer: Please follow this guide at your own risk. AddictiveTips will not be liable if your device gets damaged or bricked during the process.


  • A rooted HTC Desire HD. For rooting instructions, see how to permanently root HTC Desire HD.
  • A microSD card with 3 GB or more free space.
  • LeeDrOiD’s v2.0.6 custom Kernel (or any other custom kernel with LoopBack support) already installed. (You can install the kernel using ClockworkMod Recovery).
  • Ubuntu image and required scripts (Torrent download; requires a BitTorrent client like uTorrent. Update: Link down; see update at the end of this post.)
  • Android Terminal Emulator app (install from the Android Market)
  • Android VNC Viewer app (install from the Android Market)
  • Before proceeding, move all your apps back to Internal Storage if you have moved them to SD using App2SD.
  • An active internet connection on your phone (Wi-Fi is recommended).


1 – Installing Ubuntu:

  1. Create a folder called ‘ubuntu’ on the root of your SD card.
  2. Extract the contents of the downloaded Ubuntu.tar file and transfer them to the folder from Step 2.
  3. Launch Terminal Emulator and enter these commands:su pm setInstallLocation 1cd sdcard/ubuntush ubuntu.shbootubuntu
  4. If all goes well, you should see “root@localhost:/#” now, indicating you are now running Ubuntu.

1.1 – Entering Ubuntu at any time:

To enter Ubuntu terminal at any time from now onwards, you only have to launch Terminal Emulator, get su privileges, cd to the ubuntu directory and type ‘bootubuntu’:


cd sdcard/ubuntu

sh ubuntu.sh


1.2 – Exiting Ubuntu at any time:

To exit Ubuntu terminal at any time, you will need to enter the ‘exit’ command from the Ubuntu terminal.

Note: If you close Terminal Emulator by accident or if it crashes, you must launch Android Terminal again and use the exit command to properly exit Ubuntu or else it will not be properly closed. In case you get an error saying “loop device busy” when attempting to exit, simply use the exit command multiple times (there is no harm in using it as many times as you want). If you still get the error, ignore it.

2 – Configuring the Gnome Desktop GUI:

Now that you have Ubuntu 10.10 running, the next step would be enabling the Gnome Desktop GUI.

  1. If you aren’t already in the Ubuntu terminal, enter it using the above-mentioned instructions.
  2. Make sure that your phone’s internet connection is active and enter the following commands. Wait till each one finishes and enter ‘y’ (for yes) to confirm any prompt that you get:apt-get updateapt-get install tightvncservercd /bincat >x

    rm –r –f /tmp

    mkdir /tmp

    chmod 777 /tmp

    export USER=root


    vncserver –geometry 1024×800

    Press Enter once more after entering the last command.

  3. Now you must configure your volume-down key as Ctrl in Terminal Emulator. Simply go to Menu > Preferences > Control Key and select Volume-Down key. Go back to the command line once done.
  4. Hold the Volume-Down key and press ‘d’. (This will basically enter Ctrl+D.)
  5. Now enter these commands:
    chmod 777 x
  6. This ‘x’ script basically lets you start the Gnome GUI. As this is the first time you are running this script, it will ask you to set a password for the VNC connection. Set a password of your choice.
  7. It will also ask you to set a password for “view-only” mode, which isn’t required so answer ‘n’ for no.
  8. Now launch Android VNC Viewer and create a new connection with the following settings:
    • Nickname: Anything of your choice.
    • Password: The password you set in Step 6.
    • Address: localhost
    • Port: 5901
    • Color format: 24-bit color (4bpp)
  9. Now click ‘Connect’. In a minute or so, you should see your Ubuntu 10.10 Gnome desktop.
  10. Lastly, we need to setup a script called ‘s’ to stop the Gnome GUI. Just switch back to Terminal Emulator and enter the following commands:
    cd /bin
    cat > s
    export USER=root
    vncserver -kill :1
    vncserver -kill :2
    sudo reboot
    sudo halt

    Press Enter once more after entering the last command.

  11. Make sure your Ctrl key is still configured as ‘Volume-Down’ in Terminal Emulator preferences.
  12. Hold the Volume-Down key and press ‘d’. (This will enter Ctrl+D again.)
  13. Now enter this command:
    chmod 777 s

Your Gnome Desktop GUI has now been configured.

2.1 – Launching the Gnome Desktop GUI:

To launch the Gnome Desktop GUI at any time, simply enter Ubuntu using the above instructions in part 1.1 and then enter the ‘x’ command in Terminal Emulator. This will start the GUI server. Next, you just have to launch Android VNC Viewer, use the connection you setup in step 8 of part 2 and click ‘Connect’.

2.2 – Exiting the Gnome Desktop GUI:

Exiting the Gnome Desktop GUI is as simple as closing the connection in Android VNC Viewer, switching back to Terminal Emulator and entering the ‘s’ command.

Note: If you are running the Desktop GUI, you must exit it first by entering ‘s’ in Terminal Emulator before you exit the Ubuntu terminal itself. In case you close Terminal Emulator by mistake or it crashes, launch it again, enter the Ubuntu terminal using the ‘bootubuntu’ command, then use the ‘s’ command to stop the VNC server before finally using the ‘exit’ command to exit from the Ubuntu terminal properly. Failure to do so will give you problems with your VNC connection when you attempt to use it the next time.

Phew, that should be it, finally. Now you have Ubuntu 10.10 Maverick Meerkat up and running on your HTC Desire HD, along with the Gnome Desktop GUI and several apps including Mozilla Firefox. Enjoy!

Update: The link for the Ubuntu files for this method no longer seems to be available, and the project seems to have been discontinued. Fortunately, there is another similar project at XDA-Developers that works better. Check it out.

[via XDA-Developers]


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.