From WebOS Internals
Jump to navigation Jump to search

You need a large-enough ext3fs partition created with Meta-Doctor mounted at /media/ext3fs (instructions for how to create a partition are available below). Note that the latest optware bootstrap package will also use this if it exists. If you have not already done so you should setup the ext3fs partition to mount at bootup. (Failure to do so will cause you to run out of disk space) Instructions can be found on the Meta Doctor page.

  • Using Preware, install Xecutah and Ubuntu 11.04 Chroot.
  • Hit the relevant buttons on Xecutah to run the XServer and the Ubuntu 11.04 Chroot.
  • Run XServer first, which will open an Xserver window, then return to Xecutah and tap Ubuntu 11.04 Chroot. When you return to the Xserver card, you should see a Ubuntu command prompt.
  • Use "apt-get install" to install whatever apps you like from Ubuntu. Then run in the Ubuntu chroot and render on the XServer.

Please support the project with a Donation, and install the Preware Homebrew Documentation app from the official app catalog to learn how to install Preware on your device.


It is possible to use a disk image instead of creating a partition. However, this comes with a few caveats, such as slower speed, disk size restriction (mounting a disk image in cryptofs may limit you to < 2GB) or breaking USB connectivity (on /media/internal). Do this at your own risk. Partitioning with Meta Doctor is the faster and slightly stabler method.

If you do not want to re-doctor your phone, this is how to do it with an image file: First, open a terminal (XServer >XTerm - everything is done on device).

1048576 (KB) means 1 GB, you can replace that (used in two commands). NOTE: You can not create an image file in /media/cryptofs larger than 2GB.

cd /media/cryptofs
dd if=/dev/zero of=ubuntu.img bs=1024 count=1048576
mkfs.ext3 -F -b 1024 ubuntu.img 1048576
rootfs_open -t
mkdir /media/ext3fs

Next, you must mount the new image file.

mount -o loop /media/cryptofs/ubuntu.img /media/ext3fs

To make this mount at boot, you need to add an entry to the fstab:

echo "/media/cryptofs/ubuntu.img /media/ext3fs ext3 loop 0 0" >> /etc/fstab
mount -a

Now you can install Ubuntu 11.04 Chroot from Preware and it will populate the image file.


Intro: What you need to know

UbuntuChroot is the raw Ubuntu terminal without the familiar GNOME graphical interface that all have come to think of Ubuntu. With this installed, you will be able to install ubuntu programs and launch them with in the terminal card. However, you can install a GUI windows manager such as LXDE which will let you use it as you would a normal computer. To do this, the basic rundown will be making a new WebOS Doctor that has a separete partition of memory for Ubuntu to run with in. Then we will install it on your TouchPad and mount that partition so it will be able to be used after a reboot of the device. Lastly, we will install Xecutah, XServer, and UbuntuChroot from Preware and boot up Ubuntu on your TouchPad. Both credit and Props go to WebOS Internals for making this possible and putting in all the hard work they have to make it as easy as it is.

  • Warnings: WebOS Internals takes no responsibility over what may happen to your device. If you follow these instructions it 'should' work perfectly. If you do endup messing something up you 'should' be able to just doctor the device using the stock WebOS Doctor from HP.
    • You my want to backup app data and the like using Save/Restore in Preware as you will lose all your data buy installing a WebOS Doctor. Please do so!
    • You must remove Optware before beginning this process. Failure to do so will most likely cause you issues!

Step 1: Creating a WebOS Doctor

  • We will be using the Meta Doctor to create a special WebOS Doctor that will create a 2GB (or more if you wish to do so) partition in /media/ext3fs/ were Ubuntu will be.
  • Use the WebOS Internals Guide to installing and running the Meta Doctor (the link below)
  • Make sure you uncomment the correct setting in the Makefile to actually create the ext3fs partition. Which will be a little ways down in the file were it says "# EXT3FS_PARTITION_SIZE = 2GB". Delete that # before it to make it readable to the program and if you desire to you may change the 2GB to the size you wish to have for Ubuntu. BUT BE AWARE THAT THIS TAKES AWAY THE MEMORY FROM THE USB PARTITION AND ADDS IT TO UBUNTU. Now save the file still with no file extension.
  • If you are using a Wifi Only TouchPad you will be using the last one which has touchpad for device and WiFi all for the carrier.
  • Once the Meta Doctor is done, run the WebOS Doctor it created under the 'builds' folder. And setup your device.

Alternative Step 1: Re-partitioning by hand

If you do not want to run the doctor, but do want to do the right thing and give your Ubuntu a partition of its own, here's, roughly, how: [note: Habbie 08:10, 17 September 2011 (UTC) writing this from memory. somebody should try it and update the details.]: Midnite 26 September 2011 confirmed, below works correctly.

  1. connect with novaterm
  2. get rid of cryptofs process pkill -SIGUSR1 cryptofs
  3. umount /media/internal
  4. resizefat /dev/mapper/store-media 4G - I picked 4G to leave about 9G for my Ubuntu. Decide for yourself. This operation should not delete your data.
  5. lvresize -L 4G /dev/mapper/store-media
  6. now, remount /media/internal and /media/cryptofs. I decided to just reboot but you could do the remount/reboot later. rwhitby advises pkill -SIGUSR2 cryptofs here.
  7. lvcreate -l 100%FREE -n ext3fs store
  8. mkfs.ext3 /dev/mapper/store-ext3fs
  9. mount -o remount,rw /
  10. echo "/dev/mapper/store-ext3fs /media/ext3fs auto noatime 0 0" >> /etc/fstab
  11. check to make sure nothing already exists under mount point: ls -l /media/ext3fs
    1. If above shows files/dirs under /media/ext3fs, you will need to copy it and then move it back after mounting:
    2. cd /media/ext3fs; tar -cf /tmp/ext3fs-files.tar .
    3. and then rm -rf /media/ext3fs
  12. mkdir /media/ext3fs
  13. mount -o remount,ro /
  14. mount -a or reboot
  15. If files existed under /media/ext3fs before mounting, recreate them with:
    1. cd /media/ext3fs ; tar xvf /tmp/ext3fs-files.tar ; rm /tmp/ext3fs-files.tar

Skip the next step (Step 2: Mounting the ext3fs partition) - we have already done this above in step 10.

Step 2: Mounting the ext3fs partition

Step 3: Installing UbuntuChroot, Xecutah, and XServer

  • Open up Preware and tap List Of Everything.
  • Search for and install the following: UbuntuChroot, Xecutah, and XServer
  • Now opened Xecutah and tap XServer and a new card will come up.
  • Go back to Xecutah and tap UbuntuChroot. Then swipe back to the new card that came up.
  • Now you should have the Ubuntu terminal. Done. It should have a few 'mount' commands and then the @Touchpad:

Step 4: What's Next?

  • Now to have some fun after all that work you put in!
  • Take a look at the auto configuration script that will install and setup most of the what is in the next bullet for you in just a few steps.
  • Type the below and it will update the program lists.
apt-get update
  • Now type the following in the box to install what ever you wish!
/***type the below for LibreOffice
apt-get install LibreOffice

/***type the below for the Chromium Browser
apt-get install chromium-browser

/***type the below for GIMP
apt-get install gimp

/***type the below for Eclipse
apt-get install eclipse

/***type the below for LXDE
apt-get install lxde

How to remove the ext3fs partition