Difference between revisions of "Application:MetaDoctor"
(→Linux) |
(Fixed java installation steps) |
||
(51 intermediate revisions by 22 users not shown) | |||
Line 8: | Line 8: | ||
= What is the Meta Doctor? = | = What is the Meta Doctor? = | ||
− | The Webos Internals Meta Doctor is a Makefile which can modify a copy of the Palm webOS Doctor | + | The Webos Internals Meta Doctor is a Makefile which can modify a copy of the Palm webOS Doctor before it is flashed onto a webOS device. It accomplishes this by reaching into Palm's distributed Doctor JAR file and making changes to it. |
− | '''Documentation for the features that the MetaDoctor offers is | + | '''Documentation for the features that the MetaDoctor offers is in the README file.''' |
= Step 1: Setting up Meta-Doctor= | = Step 1: Setting up Meta-Doctor= | ||
Line 20: | Line 20: | ||
Windows users can use the meta doctor without harming your current installation of windows using simple Ubuntu installer called WUBI. Also no need for moding any partitions or installing any boot loaders. It will just appear as program in your installed software list and when you do not want it anymore simply uninstall it while in windows through Control Panel. It is easy and there is no virtual machine headaches of trying to configure USB, Network and File sharing with host computer... To access it you just reboot and choose Ubuntu from dual boot screen. | Windows users can use the meta doctor without harming your current installation of windows using simple Ubuntu installer called WUBI. Also no need for moding any partitions or installing any boot loaders. It will just appear as program in your installed software list and when you do not want it anymore simply uninstall it while in windows through Control Panel. It is easy and there is no virtual machine headaches of trying to configure USB, Network and File sharing with host computer... To access it you just reboot and choose Ubuntu from dual boot screen. | ||
− | # | + | # Download [http://www.ubuntu.com/getubuntu/download Ubuntu 11.04], look for the Ubuntu Desktop Edition, '''not the Windows Installer''' |
− | # | + | # Burn that file to a cd or mount to virtual drive |
# Run cd in windows (the wubi.exe file inside the disk, it also comes up in auto run) - '''Don't boot your machine with the CD (called as using the LiveCD, as this option won't give you enough space for the MetaDoctor process to complete.''' | # Run cd in windows (the wubi.exe file inside the disk, it also comes up in auto run) - '''Don't boot your machine with the CD (called as using the LiveCD, as this option won't give you enough space for the MetaDoctor process to complete.''' | ||
# Click on '''Install Inside windows'''. | # Click on '''Install Inside windows'''. | ||
− | #: This will install Ubuntu while running Windows without the need of making a partition I would recomand making the install image the full recommended 30 gigs if you have the hard drive space and think you are interested in actually using the Ubuntu OS, otherwise the minimum recommended by Wubi should be just fine. | + | #: This will install Ubuntu while running Windows without the need of making a partition. I would recomand making the install image the full recommended 30 gigs if you have the hard drive space and think you are interested in actually using the Ubuntu OS, otherwise the minimum recommended by Wubi should be just fine. |
# Restart your computer and you can dual boot to Windows or Ubuntu | # Restart your computer and you can dual boot to Windows or Ubuntu | ||
The nice thing about this is that it will allow you to uninstall Ubuntu right from Windows as if it was never there and remove the dual boot, not to mention the fact you do not need to partition your drive. | The nice thing about this is that it will allow you to uninstall Ubuntu right from Windows as if it was never there and remove the dual boot, not to mention the fact you do not need to partition your drive. | ||
− | If you are still wondering what Wubi is the | + | If you are still wondering what Wubi is, the following link should explain it to you better. |
[https://wiki.ubuntu.com/WubiGuide Wubi Guide] | [https://wiki.ubuntu.com/WubiGuide Wubi Guide] | ||
Line 37: | Line 37: | ||
# Open terminal from the ( Applications > Accessories ) menu. | # Open terminal from the ( Applications > Accessories ) menu. | ||
− | # Update your package lists and install git and Java runtime (the Canonical Partner Repository is needed to install the Sun Java JRE because it was moved out of the Multiverse in Ubuntu 10.04). Type: <pre>sudo add-apt-repository | + | # Update your package lists and install git and Java runtime (the Canonical Partner Repository is needed to install the Sun Java JRE because it was moved out of the Multiverse in Ubuntu 10.04). Type: <pre>sudo apt-get install python-software-properties</pre><pre>sudo add-apt-repository ppa:ferramroberto/java</pre><pre>sudo apt-get update</pre><pre>sudo apt-get install git</pre><pre>sudo apt-get install sun-java6-jre</pre> (To accept the Java License Page, press tab until 'OK' is highlighted, then press enter) If the java install fails, look for support on the Java website [http://www.java.com/en/download/linux_manual.jsp here]. If you receive an error about git, repeat the command using git-core instead. |
# Download and install the Palm Novacom software: [https://cdn.downloads.palm.com/sdkdownloads/2.1.0.519/sdkBinaries/palm-novacom_1.0.64_i386.deb 32-bit] or [https://cdn.downloads.palm.com/sdkdownloads/2.1.0.519/sdkBinaries/palm-novacom_1.0.64_amd64.deb 64-bit]. If you have trouble installing, you can find more information [https://developer.palm.com/content/resources/develop/sdk_pdk_download.html#c28522 here]. | # Download and install the Palm Novacom software: [https://cdn.downloads.palm.com/sdkdownloads/2.1.0.519/sdkBinaries/palm-novacom_1.0.64_i386.deb 32-bit] or [https://cdn.downloads.palm.com/sdkdownloads/2.1.0.519/sdkBinaries/palm-novacom_1.0.64_amd64.deb 64-bit]. If you have trouble installing, you can find more information [https://developer.palm.com/content/resources/develop/sdk_pdk_download.html#c28522 here]. | ||
− | # Download the meta-doctor scripts using git. Type: <pre>git clone git:// | + | # Make sure you are not running as root, and navigate to your home directory. <pre>cd</pre> |
+ | # Download the meta-doctor scripts using git. Type: <pre>git clone git://github.com/webos-internals/meta-doctor.git</pre> | ||
# Navigate to the meta-doctor directory. <pre>cd meta-doctor</pre> | # Navigate to the meta-doctor directory. <pre>cd meta-doctor</pre> | ||
# Create a downloads directory. Type: <pre>mkdir downloads</pre> | # Create a downloads directory. Type: <pre>mkdir downloads</pre> | ||
Line 45: | Line 46: | ||
== Mac OS X 10.6 == | == Mac OS X 10.6 == | ||
− | #Install MacPorts first, which will allow us to easily install the necessary packages for MetaDoctor. [http://www.macports.org/install.php]. Please note that MacPorts requires Apple's Xcode Developer Tools (version 3.2.1 or later for Snow Leopard, 3.1.4 or later for Leopard, or 2.5 for Tiger), found at the [http://connect.apple.com/ Apple Developer Connection site] | + | #Install MacPorts first, which will allow us to easily install the necessary packages for MetaDoctor. [http://www.macports.org/install.php]. Please note that MacPorts requires Apple's Xcode Developer Tools (version 3.2.1 or later for Snow Leopard, 3.1.4 or later for Leopard, or 2.5 for Tiger), found at the [http://connect.apple.com/ Apple Developer Connection site], on your Mac OS X installation CDs/DVD, or in the [http://itunes.apple.com/us/app/xcode/id448457090?mt=12# App Store]. |
#Install md5sum: <pre>sudo port install md5sha1sum</pre> | #Install md5sum: <pre>sudo port install md5sha1sum</pre> | ||
− | |||
#Install git: <pre>sudo port install git-core</pre> | #Install git: <pre>sudo port install git-core</pre> | ||
− | # | + | # Make sure you are not running as root, and navigate to your home directory. <pre>cd</pre> |
− | # Now type: <pre>git clone git:// | + | # Now type the following command to get your local copy of the meta-doctor script: <pre>git clone git://github.com/webos-internals/meta-doctor.git</pre> |
#Install patch: <pre>sudo port install gpatch</pre> | #Install patch: <pre>sudo port install gpatch</pre> | ||
#If you do not have Java installed, do so. To install Java, click on the "Apple" icon and select "Software Update." This will automatically update you to the latest version of Java if necessary, as Apple supplies their own version of Java. Further instructions can be found [http://support.apple.com/kb/HT1338?viewlocale=en_US here]. | #If you do not have Java installed, do so. To install Java, click on the "Apple" icon and select "Software Update." This will automatically update you to the latest version of Java if necessary, as Apple supplies their own version of Java. Further instructions can be found [http://support.apple.com/kb/HT1338?viewlocale=en_US here]. | ||
#Download and install the Palm Novacom software from http://developer.palm.com. The Mac OS X SDK is located [http://cdn.downloads.palm.com/sdkdownloads/1.4.5.465/sdkBinaries/Palm_webOS_SDK.1.4.5.465.dmg here]. | #Download and install the Palm Novacom software from http://developer.palm.com. The Mac OS X SDK is located [http://cdn.downloads.palm.com/sdkdownloads/1.4.5.465/sdkBinaries/Palm_webOS_SDK.1.4.5.465.dmg here]. | ||
− | #Open a terminal and navigate to the meta-doctor directory where the meta-doctor was copied to in step | + | #Open a terminal and navigate to the meta-doctor directory where the meta-doctor was copied to in step 5 above.<pre>cd meta-doctor</pre> |
#Ensure that there is a downloads directory. If there is not one, create one using <pre>mkdir downloads</pre> | #Ensure that there is a downloads directory. If there is not one, create one using <pre>mkdir downloads</pre> | ||
Line 64: | Line 64: | ||
# Navigate to the meta-doctor directory in the terminal | # Navigate to the meta-doctor directory in the terminal | ||
− | # Download the latest webosdoctor file using the download paths found at [http://www.webos-internals.org/wiki/Webos_Doctor_Versions Webos Doctor Versions] .The wr version is the French,German,Irish,Spanish and UK GSM version. An example ( | + | # Download the latest webosdoctor file using the download paths found at [http://www.webos-internals.org/wiki/Webos_Doctor_Versions Webos Doctor Versions] . |
− | + | '''Note ''': if you receive an error message when running the make file, (e.g 'Please download the correct version of the webOS Doctor .jar file and then move it to downloads/webosdoctorp220manta-wr-2.2.0.jar'), and you are sure you have the correct doctor you need to rename your doctor file, so it matches the name in the error message (e.g. sudo mv webosdoctorp220mantawr.jar webosdoctorp220manta-wr-2.2.0.jar) | |
− | # If you would like Meta-Doctor to apply patches to webOS in order to add or change functionality from the factory install, open the Makefile with your favorite text editor and uncomment (remove the leading # characters from) the options you would like to use. | + | The wr version is the French,German,Irish,Spanish and UK GSM version. An example (e.g. current Web OS as of 11/23/11) download command would be: <pre>cd downloads</pre><pre>wget http://palm.cdnetworks.net/rom/touchpad/p304rod10182011/wd304wifi/webosdoctorp304hstnhwifi.jar</pre> |
+ | # If you would like Meta-Doctor to apply patches to webOS in order to add or change functionality from the factory install, open the Makefile with your favorite text editor and uncomment (remove the leading # characters from) the options you would like to use. For example, if you plan to install Ubuntu, now is the time to uncomment the EXT3FS_PARTITION_SIZE option in the Makefile and edit it per [http://www.webos-internals.org/wiki/Chrooting these instructions]. | ||
# Before doing the next step, make sure you change back into the meta-doctor directory first. All the following commands must be run from the meta-doctor directory. | # Before doing the next step, make sure you change back into the meta-doctor directory first. All the following commands must be run from the meta-doctor directory. | ||
# Type one of the following: | # Type one of the following: | ||
− | #: <pre>make DEVICE=pre all | + | #: <pre>make DEVICE=pre CARRIER=wr all</pre> |
− | #: <pre>make DEVICE=preplus all | + | #: <pre>make DEVICE=preplus CARRIER=wr all</pre> |
− | #: <pre>make DEVICE=pixiplus all | + | #: <pre>make DEVICE=pixiplus CARRIER=wr all</pre> |
− | #: <pre>make DEVICE=pre all | + | #: <pre>make DEVICE=pre CARRIER=sprint all</pre> |
− | #: <pre>make DEVICE=pixi all | + | #: <pre>make DEVICE=pixi CARRIER=sprint all</pre> |
− | #: <pre>make DEVICE=pre all | + | #: <pre>make DEVICE=pre CARRIER=bellmo all</pre> |
− | #: <pre>make DEVICE=pre all | + | #: <pre>make DEVICE=pre CARRIER=telcel all</pre> |
− | #: <pre>make DEVICE=preplus all | + | #: <pre>make DEVICE=preplus CARRIER=verizonwireless all</pre> |
− | #: <pre>make DEVICE=pixiplus all | + | #: <pre>make DEVICE=pixiplus CARRIER=verizonwireless all</pre> |
− | #: <pre>make DEVICE=preplus all | + | #: <pre>make DEVICE=preplus CARRIER=att all</pre> |
− | #: <pre>make DEVICE= | + | #: <pre>make DEVICE=pixiplus CARRIER=att all</pre> |
+ | #: <pre>make DEVICE=touchpad CARRIER=wifi all</pre> | ||
#: depending on the carrier in question. | #: depending on the carrier in question. | ||
− | '''Note ''': use make DEVICE=palm_smartphone_type all | + | '''Note ''': use make DEVICE=palm_smartphone_type CARRIER=wr all for O2 Germany, UK and Ireland / Movistar Spain / SFR France |
This should begin a process within the terminal that should take 10 minutes max. | This should begin a process within the terminal that should take 10 minutes max. | ||
+ | |||
+ | |||
=== Error conditions === | === Error conditions === | ||
− | If an error message | + | If you receive an error message when running the make file, (e.g 'Please download the correct version of the webOS Doctor .jar file and then move it to downloads/webosdoctorp220manta-wr-2.2.0.jar'), and you are sure you have the correct doctor you need to rename your doctor file, so it matches the name in the error message (e.g. sudo mv webosdoctorp220mantawr.jar webosdoctorp220manta-wr-2.2.0.jar). |
=== If the build fails === | === If the build fails === | ||
Line 93: | Line 97: | ||
If the make command fails, you can use <pre>make clobber</pre> to clean up the build directory. After this you can re-run the command. | If the make command fails, you can use <pre>make clobber</pre> to clean up the build directory. After this you can re-run the command. | ||
− | The updated doctor version has the same name as the original, but is in a new folder: ''meta-doctor/build/ | + | === Running the patched webOS Doctor === |
+ | |||
+ | The updated doctor version has the same name as the original, but is in a new folder: ''meta-doctor/build/<name_and_version>/webosdoctorp304hstnhwifi.jar''. | ||
If you are running in Ubuntu or Cygwin, you can just run the new jar file now. | If you are running in Ubuntu or Cygwin, you can just run the new jar file now. | ||
Line 101: | Line 107: | ||
CD to the folder where your new jar file is, and type something like: | CD to the folder where your new jar file is, and type something like: | ||
− | java -jar | + | java -jar webosdoctorp304hstnhwifi.jar |
If you were using a VM or some other virtual method, you will need to copy the jar file out to your main operating system before running it. | If you were using a VM or some other virtual method, you will need to copy the jar file out to your main operating system before running it. | ||
Line 120: | Line 126: | ||
You should be able to run the JAR as if you had Linux installed natively because in a sense you do (as long as Java is installed and you run the Jar using Java) but if you rather run it in windows | You should be able to run the JAR as if you had Linux installed natively because in a sense you do (as long as Java is installed and you run the Jar using Java) but if you rather run it in windows | ||
− | Using terminal the following command in a Wubi installation of Ubuntu will copy the JAR file to the host Windows OS :<pre>cp /meta-doctor/build/ | + | Using terminal the following command in a Wubi installation of Ubuntu will copy the JAR file to the host Windows OS :<pre>cp /meta-doctor/build/<name_and_version>/webosdoctorp304hstnhwifi.jar /host/webosdoctorp304hstnhwifi.jar</pre> |
This will place the Jar either in your Windows C:\ drive or whatever drive you installed Wubi to. | This will place the Jar either in your Windows C:\ drive or whatever drive you installed Wubi to. | ||
Line 167: | Line 173: | ||
Clarification for Linux beginners on where to place the prefsDB.sl file, per instructions in the makefile. | Clarification for Linux beginners on where to place the prefsDB.sl file, per instructions in the makefile. | ||
Steps: | Steps: | ||
− | + | # Open makefile using a text editor (like WordPad) and use the instructions there to retrieve your prefsDB.sl file from your device. Save it somewhere convenient on your host machine (aka, computer). | |
− | + | # Navigate to the meta-doctor directory and create the config directory:<pre> mkdir -p config</pre> | |
− | + | # Rename your prefsDB.sl file to com.palm.wifi.prefsDB.sl | |
− | + | # Put com.palm.wifi.prefsDB.sl in the config directory. | |
− | + | # Continue following instructions in the makefile. | |
==How to enable WIFI profiles== | ==How to enable WIFI profiles== | ||
To enable wifi profiles it is necessary to copy your wifi profile file off of your phone and place this in a directory, as well as enable the wifi profile option in the makefile. | To enable wifi profiles it is necessary to copy your wifi profile file off of your phone and place this in a directory, as well as enable the wifi profile option in the makefile. | ||
− | # Move to the meta-doctor directory | + | # Move to the meta-doctor directory <pre>cd meta-doctor</pre> |
− | # Create a "config" folder in the meta-doctor directory | + | # Create a "config" folder in the meta-doctor directory <pre>mkdir config</pre> |
# Copy the prefsDB.sl file off of your phone from the var/preferences/com.palm.wifi/ and into the "config" directory that you just created. | # Copy the prefsDB.sl file off of your phone from the var/preferences/com.palm.wifi/ and into the "config" directory that you just created. | ||
# Rename this file "com.palm.wifi.prefsDB.sl" without the quotes | # Rename this file "com.palm.wifi.prefsDB.sl" without the quotes | ||
Line 187: | Line 193: | ||
See these links for more information: [http://forums.precentral.net/webos-internals/276460-how-install-webos-2-1-0-pre-pre-using-meta-doctor-27.html#post2882495 Post 1], [http://discussion.treocentral.com/webos-internals/276460-how-install-webos-2-1-0-pre-pre-using-meta-doctor-43.html#post2884415 Post 2]. | See these links for more information: [http://forums.precentral.net/webos-internals/276460-how-install-webos-2-1-0-pre-pre-using-meta-doctor-27.html#post2882495 Post 1], [http://discussion.treocentral.com/webos-internals/276460-how-install-webos-2-1-0-pre-pre-using-meta-doctor-43.html#post2884415 Post 2]. | ||
+ | |||
+ | ==How to get the optional ext3fs partition mounted at device boot== | ||
+ | |||
+ | '''(NOTE: This is a necessary step to get UbuntuChroot working on the touchpad and must be done before UbuntuChroot is installed)''' | ||
+ | |||
+ | Note that you have to use the Meta-Doctor as shown earlier in this page to doctor your device to create the ext3fs partition before attempting the following steps. | ||
+ | |||
+ | All of this is done on device either via novaterm or an SSH login. Instructions for running novaterm on your desktop computer are [http://www.webos-internals.org/wiki/Accessing_Linux_Using_Novaterm here] (you may skip step 1 if you already downloaded the Palm SDK while setting up the Meta-Doctor). | ||
+ | |||
+ | If your device does NOT have a folder at /media/ext3fs then you will need to create it first. Use the following two commands: | ||
+ | |||
+ | <pre>mount -o remount,rw / | ||
+ | mkdir -p /media/ext3fs</pre> | ||
+ | |||
+ | it is important that you use /media/ext3fs as the location, otherwise some homebrew applications (such as Optware and the Ubuntu 11.04 Chroot) will not be able to find it and use it properly. | ||
+ | |||
+ | After you have created the mountpoint, we are going to edit the fstab file to set it up to mount at bootup. | ||
+ | |||
+ | <pre>mount -o remount,rw / *****Not necessary if you performed the previous steps, but doesn't hurt if you do it twice | ||
+ | echo "/dev/mapper/store-ext3fs /media/ext3fs ext3 noatime,data=writeback 0 0" >> /etc/fstab</pre> | ||
+ | |||
+ | Now to get it mounted you have several options, the best one is the first command as it will use the data in /etc/fstab. If that works, then you have done this correctly and your ext3fs will mount at bootup. | ||
+ | |||
+ | <pre>mount -a</pre> | ||
+ | |||
+ | If you do not want it mounted at bootup, but you do need it mounted, you can use this command. | ||
+ | |||
+ | <pre>mount /dev/mapper/store-ext3fs /media/ext3fs</pre> | ||
+ | |||
+ | == How to remove the ext3fs partition == | ||
+ | |||
+ | # Connect your webOS device to your PC | ||
+ | # Open up Terminal (Mac/ Linux) or Command Prompt (Windows), then type "novaterm" | ||
+ | # And after you presented by your webOS device's root shell, run this command: | ||
+ | * Unmount EXT3FS partition: | ||
+ | # umount /dev/mapper/store-ext3fs | ||
+ | |||
+ | * Remove EXT3FS partition: | ||
+ | # lvremove /dev/mapper/store-ext3fs | ||
+ | |||
+ | Then run meta-doctor to re-assign all space to user's diskspace | ||
+ | |||
+ | |||
+ | Or, if you already do Meta-Doctor first, you can follow these steps: | ||
+ | # Connect your webOS device to your PC | ||
+ | # Open up Terminal (Mac/ Linux) or Command Prompt (Windows), then type "novaterm" | ||
+ | # And after you presented by your webOS device's root shell, run this command: | ||
+ | * Display LV size of EXT3FS partition, don't forget to write that down: | ||
+ | # lvdisplay /dev/mapper/store-ext3fs | ||
+ | |||
+ | * Remove EXT3FS partition: | ||
+ | # lvremove /dev/mapper/store-ext3fs | ||
+ | |||
+ | * Display existing user diskspace partition: | ||
+ | # df -kh | ||
+ | |||
+ | [http://3.bp.blogspot.com/-orFK9AjZYM4/Tk3RF0HnB6I/AAAAAAAAB_w/29uQBnN46PI/s1600/df-kh.jpg image of df-kh] | ||
+ | |||
+ | * Unmount existing user diskspace partition: | ||
+ | # umount /dev/mapper/store-media | ||
+ | |||
+ | |||
+ | |||
+ | Resize existing user diskspace by adding size of previous EXT3FS partition: | ||
+ | |||
+ | I'm using /etc/fstab to see the filesystem of user's diskspace and /proc/partitions to see total allocation for user's diskspace: | ||
+ | |||
+ | [http://1.bp.blogspot.com/-fNgZpAme8wE/Tk3RG8SeWzI/AAAAAAAAB_0/GC0t5KrDUDQ/s1600/fstab.jpg image of cat /etc/fstab] | ||
+ | |||
+ | [http://2.bp.blogspot.com/-FAmvlsY6mSc/Tk3RImBEnqI/AAAAAAAACAA/m6piDWuxxro/s1600/proc-partitions.jpg image of cat /etc/proc/partitions] | ||
+ | |||
+ | # resizefat /dev/mapper/store-media 6995968K | ||
+ | |||
+ | [http://1.bp.blogspot.com/-EqnW7-WzJnU/Tk3RJCElO4I/AAAAAAAACAE/xbrps-xnWaI/s1600/resizefat.jpg image of resizefat /dev/mapper/store-media 6995968K] | ||
+ | |||
+ | And here's what you've got on user's diskspace after everything is done: | ||
+ | |||
+ | [http://4.bp.blogspot.com/-ZmKHhll3G6w/Tk3RHWhrzGI/AAAAAAAAB_4/hfyiDE-BIEA/s1600/lvdisplay-storemedia.jpg image of lvdisplay /dev/mapper/store-media] | ||
==How to change a provider's DB-entry so 3G data can be used on the Pre== | ==How to change a provider's DB-entry so 3G data can be used on the Pre== |
Latest revision as of 21:11, 26 February 2012
This page is currently available in four languages:
- Application:MetaDoctor
- Application:MetaDoctor-FR
- Application:MetaDoctor-DE
- Application:MetaDoctor-ES
What is the Meta Doctor?
The Webos Internals Meta Doctor is a Makefile which can modify a copy of the Palm webOS Doctor before it is flashed onto a webOS device. It accomplishes this by reaching into Palm's distributed Doctor JAR file and making changes to it.
Documentation for the features that the MetaDoctor offers is in the README file.
Step 1: Setting up Meta-Doctor
Windows
NOTE THAT USING CYGWIN ON WINDOWS IS NO LONGER SUPPORTED AND WILL MAKE YOUR PHONE FAIL TO BOOT
Windows users can use the meta doctor without harming your current installation of windows using simple Ubuntu installer called WUBI. Also no need for moding any partitions or installing any boot loaders. It will just appear as program in your installed software list and when you do not want it anymore simply uninstall it while in windows through Control Panel. It is easy and there is no virtual machine headaches of trying to configure USB, Network and File sharing with host computer... To access it you just reboot and choose Ubuntu from dual boot screen.
- Download Ubuntu 11.04, look for the Ubuntu Desktop Edition, not the Windows Installer
- Burn that file to a cd or mount to virtual drive
- Run cd in windows (the wubi.exe file inside the disk, it also comes up in auto run) - Don't boot your machine with the CD (called as using the LiveCD, as this option won't give you enough space for the MetaDoctor process to complete.
- Click on Install Inside windows.
- This will install Ubuntu while running Windows without the need of making a partition. I would recomand making the install image the full recommended 30 gigs if you have the hard drive space and think you are interested in actually using the Ubuntu OS, otherwise the minimum recommended by Wubi should be just fine.
- Restart your computer and you can dual boot to Windows or Ubuntu
The nice thing about this is that it will allow you to uninstall Ubuntu right from Windows as if it was never there and remove the dual boot, not to mention the fact you do not need to partition your drive.
If you are still wondering what Wubi is, the following link should explain it to you better. Wubi Guide
Once you have installed WUBI, you should follow the instructions in the Linux section below.
Linux
- Open terminal from the ( Applications > Accessories ) menu.
- Update your package lists and install git and Java runtime (the Canonical Partner Repository is needed to install the Sun Java JRE because it was moved out of the Multiverse in Ubuntu 10.04). Type:
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install git
sudo apt-get install sun-java6-jre
(To accept the Java License Page, press tab until 'OK' is highlighted, then press enter) If the java install fails, look for support on the Java website here. If you receive an error about git, repeat the command using git-core instead. - Download and install the Palm Novacom software: 32-bit or 64-bit. If you have trouble installing, you can find more information here.
- Make sure you are not running as root, and navigate to your home directory.
cd
- Download the meta-doctor scripts using git. Type:
git clone git://github.com/webos-internals/meta-doctor.git
- Navigate to the meta-doctor directory.
cd meta-doctor
- Create a downloads directory. Type:
mkdir downloads
Mac OS X 10.6
- Install MacPorts first, which will allow us to easily install the necessary packages for MetaDoctor. [1]. Please note that MacPorts requires Apple's Xcode Developer Tools (version 3.2.1 or later for Snow Leopard, 3.1.4 or later for Leopard, or 2.5 for Tiger), found at the Apple Developer Connection site, on your Mac OS X installation CDs/DVD, or in the App Store.
- Install md5sum:
sudo port install md5sha1sum
- Install git:
sudo port install git-core
- Make sure you are not running as root, and navigate to your home directory.
cd
- Now type the following command to get your local copy of the meta-doctor script:
git clone git://github.com/webos-internals/meta-doctor.git
- Install patch:
sudo port install gpatch
- If you do not have Java installed, do so. To install Java, click on the "Apple" icon and select "Software Update." This will automatically update you to the latest version of Java if necessary, as Apple supplies their own version of Java. Further instructions can be found here.
- Download and install the Palm Novacom software from http://developer.palm.com. The Mac OS X SDK is located here.
- Open a terminal and navigate to the meta-doctor directory where the meta-doctor was copied to in step 5 above.
cd meta-doctor
- Ensure that there is a downloads directory. If there is not one, create one using
mkdir downloads
Step 2: Running the webOS Doctor
Note that if you are following a procedure on another wiki page which only requires the installation of the MetaDoctor and then tells you to return to that other page, then this is the place at which you should return.
If you intend to enable WIFI Profiles, you must copy a file off of the phone before doctoring. See the section below on enabling wifi profiles.
- Navigate to the meta-doctor directory in the terminal
- Download the latest webosdoctor file using the download paths found at Webos Doctor Versions .
Note : if you receive an error message when running the make file, (e.g 'Please download the correct version of the webOS Doctor .jar file and then move it to downloads/webosdoctorp220manta-wr-2.2.0.jar'), and you are sure you have the correct doctor you need to rename your doctor file, so it matches the name in the error message (e.g. sudo mv webosdoctorp220mantawr.jar webosdoctorp220manta-wr-2.2.0.jar)
The wr version is the French,German,Irish,Spanish and UK GSM version. An example (e.g. current Web OS as of 11/23/11) download command would be:
cd downloads
wget http://palm.cdnetworks.net/rom/touchpad/p304rod10182011/wd304wifi/webosdoctorp304hstnhwifi.jar
- If you would like Meta-Doctor to apply patches to webOS in order to add or change functionality from the factory install, open the Makefile with your favorite text editor and uncomment (remove the leading # characters from) the options you would like to use. For example, if you plan to install Ubuntu, now is the time to uncomment the EXT3FS_PARTITION_SIZE option in the Makefile and edit it per these instructions.
- Before doing the next step, make sure you change back into the meta-doctor directory first. All the following commands must be run from the meta-doctor directory.
- Type one of the following:
make DEVICE=pre CARRIER=wr all
make DEVICE=preplus CARRIER=wr all
make DEVICE=pixiplus CARRIER=wr all
make DEVICE=pre CARRIER=sprint all
make DEVICE=pixi CARRIER=sprint all
make DEVICE=pre CARRIER=bellmo all
make DEVICE=pre CARRIER=telcel all
make DEVICE=preplus CARRIER=verizonwireless all
make DEVICE=pixiplus CARRIER=verizonwireless all
make DEVICE=preplus CARRIER=att all
make DEVICE=pixiplus CARRIER=att all
make DEVICE=touchpad CARRIER=wifi all
- depending on the carrier in question.
Note : use make DEVICE=palm_smartphone_type CARRIER=wr all for O2 Germany, UK and Ireland / Movistar Spain / SFR France
This should begin a process within the terminal that should take 10 minutes max.
Error conditions
If you receive an error message when running the make file, (e.g 'Please download the correct version of the webOS Doctor .jar file and then move it to downloads/webosdoctorp220manta-wr-2.2.0.jar'), and you are sure you have the correct doctor you need to rename your doctor file, so it matches the name in the error message (e.g. sudo mv webosdoctorp220mantawr.jar webosdoctorp220manta-wr-2.2.0.jar).
If the build fails
If the make command fails, you can use
make clobber
to clean up the build directory. After this you can re-run the command.
Running the patched webOS Doctor
The updated doctor version has the same name as the original, but is in a new folder: meta-doctor/build/<name_and_version>/webosdoctorp304hstnhwifi.jar.
If you are running in Ubuntu or Cygwin, you can just run the new jar file now.
If you are running Ubuntu using VM, you will need to copy the new jar out of the VM into your live desktop to run the jar in your native OS.
CD to the folder where your new jar file is, and type something like:
java -jar webosdoctorp304hstnhwifi.jar
If you were using a VM or some other virtual method, you will need to copy the jar file out to your main operating system before running it.
Windows host:
Mac OSX host:
- NOTE: this only applies to WUBI Users
You should be able to run the JAR as if you had Linux installed natively because in a sense you do (as long as Java is installed and you run the Jar using Java) but if you rather run it in windows
Using terminal the following command in a Wubi installation of Ubuntu will copy the JAR file to the host Windows OS :
cp /meta-doctor/build/<name_and_version>/webosdoctorp304hstnhwifi.jar /host/webosdoctorp304hstnhwifi.jar
This will place the Jar either in your Windows C:\ drive or whatever drive you installed Wubi to.
Once the Doctor is running
- Select your language
- Accept the license agreement
- Connect your Pre to your PC via USB and select "Next" when it becomes available
After completion the device will reboot and present you with the activation set-up.
If your PC does not recognize your Pre and you cannot go past step 3 above, try the following steps:
- With the USB cable connected, completely power off the Pre (hold down the power button until the option to power off appears)
- Hold down the Up button on the volume rocker
- While holding the Up button, power on the Pre
- "Next" should now be enabled - proceed with the recovery
The above steps will put the Pre into bootloader recovery mode and should allow the PC to recognize your device and proceed with the restore. In this mode the screen will display a giant USB logo instead of the usual Palm startup logo.
When the process finishes, the Pre will reboot and your new modified image will have been installed.
After the doctor completes, you will need to run the "First Run" application. To do this, you will need an active internet connection. Either WiFi or Cellular. If you do not have WiFi and cannot connect to the Palm Profile servers, you might have a problem with your programming. This Meta Doctor (or webOS Doctor in general) could possibly erase the modem's programming. To resolve you will need to perform the following steps:
Note: This has only been confirmed to resolve Sprint CDMA issues, YMMV.
Note 2: You should try to update your profile first. Open the phone app, open the App Menu and select Preferences then select Update Network Settings. If you get an error, then procede with these instructions.
- 1. Open the Phone App.
- 2. Enter ##MSL# (MSL= 6 digit lock code. Get this from Sprint.)
- 3. Verify your MDN and MSID are incorrect. If they are incorrect, continue. If they are correct, this is not your problem and you should not continue.
- 4. Select Edit.
- 5. Select the first box (MDN) and enter your 10-digit cellular number.
- 6. Select the second box (MSID) and enter your 10-digit MSID (Get this from Sprint).
- 7. Select Save.
- 8. Backswipe out of the the view.
- 9. You should now be able to open complete Note 2 above without any errors.
You should now be able to run the First Use application without any problems.
If the Doctor will not run
Go here if you have further problems connecting your Pre to the running Meta'ed Doctor.
Miscellaneous
Clarification for Linux beginners on where to place the prefsDB.sl file, per instructions in the makefile. Steps:
- Open makefile using a text editor (like WordPad) and use the instructions there to retrieve your prefsDB.sl file from your device. Save it somewhere convenient on your host machine (aka, computer).
- Navigate to the meta-doctor directory and create the config directory:
mkdir -p config
- Rename your prefsDB.sl file to com.palm.wifi.prefsDB.sl
- Put com.palm.wifi.prefsDB.sl in the config directory.
- Continue following instructions in the makefile.
How to enable WIFI profiles
To enable wifi profiles it is necessary to copy your wifi profile file off of your phone and place this in a directory, as well as enable the wifi profile option in the makefile.
- Move to the meta-doctor directory
cd meta-doctor
- Create a "config" folder in the meta-doctor directory
mkdir config
- Copy the prefsDB.sl file off of your phone from the var/preferences/com.palm.wifi/ and into the "config" directory that you just created.
- Rename this file "com.palm.wifi.prefsDB.sl" without the quotes
- Open the makefile (which is in the meta-doctor directory) and remove the "#" from the line "# INSTALL_WIFI_PROFILES = 1". Save the makefile.
- Build the custom doctor by running the script, or otherwise building it.
On launch of the new doctor your wifi profile should automatically connect, but only if you had previously connected to the WIFI network you are trying to use.
See these links for more information: Post 1, Post 2.
How to get the optional ext3fs partition mounted at device boot
(NOTE: This is a necessary step to get UbuntuChroot working on the touchpad and must be done before UbuntuChroot is installed)
Note that you have to use the Meta-Doctor as shown earlier in this page to doctor your device to create the ext3fs partition before attempting the following steps.
All of this is done on device either via novaterm or an SSH login. Instructions for running novaterm on your desktop computer are here (you may skip step 1 if you already downloaded the Palm SDK while setting up the Meta-Doctor).
If your device does NOT have a folder at /media/ext3fs then you will need to create it first. Use the following two commands:
mount -o remount,rw / mkdir -p /media/ext3fs
it is important that you use /media/ext3fs as the location, otherwise some homebrew applications (such as Optware and the Ubuntu 11.04 Chroot) will not be able to find it and use it properly.
After you have created the mountpoint, we are going to edit the fstab file to set it up to mount at bootup.
mount -o remount,rw / *****Not necessary if you performed the previous steps, but doesn't hurt if you do it twice echo "/dev/mapper/store-ext3fs /media/ext3fs ext3 noatime,data=writeback 0 0" >> /etc/fstab
Now to get it mounted you have several options, the best one is the first command as it will use the data in /etc/fstab. If that works, then you have done this correctly and your ext3fs will mount at bootup.
mount -a
If you do not want it mounted at bootup, but you do need it mounted, you can use this command.
mount /dev/mapper/store-ext3fs /media/ext3fs
How to remove the ext3fs partition
- Connect your webOS device to your PC
- Open up Terminal (Mac/ Linux) or Command Prompt (Windows), then type "novaterm"
- And after you presented by your webOS device's root shell, run this command:
- Unmount EXT3FS partition:
# umount /dev/mapper/store-ext3fs
- Remove EXT3FS partition:
# lvremove /dev/mapper/store-ext3fs
Then run meta-doctor to re-assign all space to user's diskspace
Or, if you already do Meta-Doctor first, you can follow these steps:
- Connect your webOS device to your PC
- Open up Terminal (Mac/ Linux) or Command Prompt (Windows), then type "novaterm"
- And after you presented by your webOS device's root shell, run this command:
- Display LV size of EXT3FS partition, don't forget to write that down:
# lvdisplay /dev/mapper/store-ext3fs
- Remove EXT3FS partition:
# lvremove /dev/mapper/store-ext3fs
- Display existing user diskspace partition:
# df -kh
- Unmount existing user diskspace partition:
# umount /dev/mapper/store-media
Resize existing user diskspace by adding size of previous EXT3FS partition:
I'm using /etc/fstab to see the filesystem of user's diskspace and /proc/partitions to see total allocation for user's diskspace:
image of cat /etc/proc/partitions
# resizefat /dev/mapper/store-media 6995968K
image of resizefat /dev/mapper/store-media 6995968K
And here's what you've got on user's diskspace after everything is done:
image of lvdisplay /dev/mapper/store-media
How to change a provider's DB-entry so 3G data can be used on the Pre
This post and this thread describe various ways to adjust the provider's data base in the Pre, so the 3G datacom works on non-supported networks. webOS 1.3.1 allows setting of the providers data directly from the activation screen for providers that are present in the DB. Some report that they are not able to do that and that they cannot get 3G datacom working on 1.3.1
Problems with Novacom
If you are Running a new Distro, like Archlinux, you could run into problem with novacom while trying to connect your pre. Running novacomd on the command line could provide further information. This may be a problem with libusb. Get a older version like described in this thread.
How to Install webOS 2.x on "unoffical" Devices
With the release of the O2-DE webOS Doctor, efforts have been made to apply the techniques of MetaDoctor and create a custom doctor to apply 2.1.0 to devices that it was not been officially released for. For those not faint of heart, a step-by-step can be found at the following: WebOS 2 Upgrade