Difference between revisions of "UbuntuChroot"

From WebOS Internals
Jump to navigation Jump to search
(fixed typo in step 1: repartitioning by hand, lvcreate needs a '-l' not '-L' for parameter 100%Free)
(→‎Alternative Step 1: Re-partitioning by hand: Fixed mkdir command to create correct dir for mount command; added note about skipping step 2)
Line 70: Line 70:
 
# <code>mount -o remount,rw /</code>
 
# <code>mount -o remount,rw /</code>
 
# <code>echo "/dev/mapper/store-ext3fs /media/ext3fs auto noatime 0 0" >> /etc/fstab</code>
 
# <code>echo "/dev/mapper/store-ext3fs /media/ext3fs auto noatime 0 0" >> /etc/fstab</code>
# <code>mkdir /store/ext3fs</code>
+
# <code>mkdir /media/ext3fs</code>
 
# <code>mount -o remount,ro /</code>
 
# <code>mount -o remount,ro /</code>
 
# <code>mount -a</code> or <code>reboot</code>
 
# <code>mount -a</code> or <code>reboot</code>
 +
 +
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 2: Mounting the ext3fs partition===

Revision as of 16:04, 19 September 2011

You need a large-enough ext3fs partition created with Meta-Doctor mounted at /media/ext3fs (instruction how to create partition is available here Chrooting). 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.

Make sure you have the WebOS Internals Testing Feeds enabled.

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.

Don't forget the donation link on the Main Page, and please install the Preware Homebrew Documentation app from the official app catalog to learn how to install Preware on your device.

NOTE ABOUT DISK IMAGES

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.


Instructions

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!

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.
  • Make sure you uncomment the correct setting in the Makefile to actually create the ext3fs partition.
  • In Step 2'6, 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.]:

  1. connect with novaterm
  2. get rid of cryptofs process (fuser -m /media/internal, kill the process that is mentioned - or probably just umount /media/cryptofs). rwhitby advises pkill -SIGUSR1 cryptofs instead
  3. umount /media/internal
  4. resizefat /dev/mapper/store-media 4G - I picked 4G to leave about 9G for my Ubuntu. Decide for yourself.
  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. mkdir /media/ext3fs
  12. mount -o remount,ro /
  13. mount -a or reboot

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: Adding Testing Feeds

Step 4: 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 5: What's Next?

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

Application:MetaDoctor#How_to_remove_the_ext3fs_partition