Difference between revisions of "Application:MetaDoctor"

From WebOS Internals
Jump to navigation Jump to search
m (Clarified how to power off Pre completely)
(Added Cygwin instructions and moved stuff around a little to make it simpler to follow the steps)
Line 5: Line 5:
 
They reach into Palm's distributed Doctor jar file and make changes which prevent the first use app from running.   
 
They reach into Palm's distributed Doctor jar file and make changes which prevent the first use app from running.   
  
If you are on a Linux system, the process is very easy: 
+
The default /var partition will be set to 2GB if all you follow these directions with no modifications to the files.
  
If you are on a Windows or Mac OS X 10.5 system, you will need to find a Linux system, or you will need to install a virtual machine. On Mac OS X 10.6 you can run the Meta Doctor directly.  Detailed instructions for that are below under ''[[Application:MetaDoctor#Using_a_Virtual_Machine | Using a Virtual Machine]]''.
+
= Step 1: Setting up Meta-Doctor=
 
 
The default /var partition will be set to 2GB if all you follow these directions with no modifications to the files.
 
  
=Using the Meta-Doctor in Linux=
+
== Linux ==
  
== Getting Ready ==
+
=== Installing required software ===
  
 
# Open terminal from the applications, accessories menu.
 
# Open terminal from the applications, accessories menu.
Line 26: Line 24:
 
# Rename the file that you download to webosdoctorp100ewwsprint-1.2.1.jar (or webosdoctorp100eww-wr-1.1.3.jar or webosdoctorp100ewwbellmo-1.2.1.jar).  An example command to do that would be:<pre>mv webosdoctorp100ewwbellmo.jar webosdoctorp100ewwbellmo-1.2.1.jar</pre>
 
# Rename the file that you download to webosdoctorp100ewwsprint-1.2.1.jar (or webosdoctorp100eww-wr-1.1.3.jar or webosdoctorp100ewwbellmo-1.2.1.jar).  An example command to do that would be:<pre>mv webosdoctorp100ewwbellmo.jar webosdoctorp100ewwbellmo-1.2.1.jar</pre>
  
== Doing it ==
+
=== Running meta-doctor ===
  
 
If you don't want to do all the things that the meta-doctor supports, then look at the top of the Makefile, and comment out the options you don't want.
 
If you don't want to do all the things that the meta-doctor supports, then look at the top of the Makefile, and comment out the options you don't want.
Line 39: Line 37:
 
This should begin a process within terminal that should take 10 minutes max.
 
This should begin a process within terminal that should take 10 minutes max.
 
   
 
   
===Error conditions===
+
=== Error conditions ===
  
 
If an error message appears with unknown in a file name, check the file rename in step 8 above.
 
If an error message appears with unknown in a file name, check the file rename in step 8 above.
  
===How to change a provider's DB-entry so 3G data can be used on the Pre===
+
=== If the build fails ===
 +
 
 +
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.
 +
 
 +
== Mac OS X 10.6 ==
 +
 
 +
In general, follow the Linux install instructions, with the following changes:
 +
 
 +
#If you haven't, install MacPorts first. [http://www.macports.org/].
 +
#Install gnutar:
 +
#<pre>sudo port install gnutar</pre>
  
[http://forums.precentral.net/gsm-pre/211728-modifying-webos-carrier-network-settings.html#post2002079 This post] and [http://forums.precentral.net/palm-pre/209222-few-questions-about-german-palm-pre-6.html 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
+
After the make process, run the Doctor with: <pre>java -jar  webosdoctorp100eww-wr-1.1.3.jar</pre> (adapt for your flavor).
 +
 
 +
==Using a Virtual Machine==
 +
 
 +
If you do not have a Linux system, you will need to run the meta-doctor in a virtual machine.  For windows users there are two options.  For Mac users, follow option 1. 
 +
 
 +
===Running in VMware or VirtualBox===
 +
 
 +
# Download [http://www.ubuntu.com/getubuntu/download Ubuntu 9.10]. 
 +
# Download a virtual machine program, either vmware or virtualbox. A virtual machine is simply a program that allows you to piggyback a second operating system on top of your native OS without dual booting or actually having a Linux machine.
 +
#: I ended up using VirtualBox instead, because I found the VMware to be very confusing on what to actually download.  The Virtual box website is very simple and straight forward.  Here is a link for the virtualbox download for Windows: [http://download.virtualbox.org/virtualbox/3.0.10/VirtualBox-3.0.10-54097-Win.exe VirtualBox-3.0.10-54097-Win]
 +
# Now install virtualbox just like you would install any other application, nothing fancy here.
 +
# Start up virtualbox and follow either of these instructions to install Ubuntu
 +
## http://www.helpdeskgeek.com/linux-tips/how-to-install-ubuntu-in-virtualbox/
 +
## http://www.psychocats.net/ubuntu/virtualbox
 +
 
 +
 
 +
===Using WUBI===
 +
 
 +
Windows users have another option to avoid using a virtual machine.  They 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 9.10]
 +
# 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)
 +
# 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 fallowing link should explain it to you better.
 +
[https://wiki.ubuntu.com/WubiGuide Wubi Guide]
 +
 
 +
'''Note:'''
 +
this will only work with the cd image found at the Ubuntu Download link. The dvd image of 9.04/9.10 is a live cd/installer and does not have the option to install inside windows using Wubi
 +
 
 +
==Using Cygwin==
 +
 
 +
Windows users can alternatively use [http://www.cygwin.com/ Cygwin] to run Meta-Doctor. This can often be simpler and faster than installing a full-blown Virtual Machine.
 +
 
 +
Simply install Cygwin, and include the following additional packages:
 +
 
 +
# Python
 +
# Make
 +
# Patch
 +
# Git
 +
 
 +
After you have installed these packages, you can follow the [[Application:MetaDoctor:#Linux | Linux instructions]]
  
= Prepare to run the new Meta'ed Doctor =
+
= Step 2: 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/pre-p100eww-sprint-1.2.1/webosdoctorp100ewwsprint-1.2.1.jar''.
 
The updated doctor version has the same name as the original, but is in a new folder: ''meta-doctor/build/pre-p100eww-sprint-1.2.1/webosdoctorp100ewwsprint-1.2.1.jar''.
  
If you are running in Ubuntu, 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.   
  
 
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.  
 
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.  
Line 110: Line 165:
 
You should now be able to run the ''First Use'' application without any problems.
 
You should now be able to run the ''First Use'' application without any problems.
  
==If the Doctor will not run==
+
=If the Doctor will not run=
 
Go [http://www.webos-internals.org/wiki/How_To_Recover here] if you have further problems connecting your Pre to the running Meta'ed Doctor.
 
Go [http://www.webos-internals.org/wiki/How_To_Recover here] if you have further problems connecting your Pre to the running Meta'ed Doctor.
  
==Mac OS X 10.6==
+
=Miscelaneous=
  
In general, follow the Linux install instructions, with the following changes:
+
==How to change a provider's DB-entry so 3G data can be used on the Pre==
  
#If you haven't, install MacPorts first. [http://www.macports.org/].
+
[http://forums.precentral.net/gsm-pre/211728-modifying-webos-carrier-network-settings.html#post2002079 This post] and [http://forums.precentral.net/palm-pre/209222-few-questions-about-german-palm-pre-6.html 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
#Install gnutar:
 
#<pre>sudo port install gnutar</pre>
 
 
 
After the make process, run the Doctor with: <pre>java -jar  webosdoctorp100eww-wr-1.1.3.jar</pre> (adapt for your flavor).
 
 
 
=Using a Virtual Machine=
 
 
 
If you do not have a Linux system, you will need to run the meta-doctor in a virtual machine. For windows users there are two options.  For Mac users, follow option 1. 
 
 
 
==Running in VMware or VirtualBox==
 
 
 
# Download [http://www.ubuntu.com/getubuntu/download Ubuntu 9.10]
 
# Download a virtual machine program, either vmware or virtualbox. A virtual machine is simply a program that allows you to piggyback a second operating system on top of your native OS without dual booting or actually having a Linux machine.
 
#: I ended up using VirtualBox instead, because I found the VMware to be very confusing on what to actually download.  The Virtual box website is very simple and straight forward.  Here is a link for the virtualbox download for Windows: [http://download.virtualbox.org/virtualbox/3.0.10/VirtualBox-3.0.10-54097-Win.exe VirtualBox-3.0.10-54097-Win]
 
# Now install virtualbox just like you would install any other application, nothing fancy here.
 
# Start up virtualbox and follow either of these instructions to install Ubuntu
 
## http://www.helpdeskgeek.com/linux-tips/how-to-install-ubuntu-in-virtualbox/
 
## http://www.psychocats.net/ubuntu/virtualbox
 
 
 
 
 
==Using WUBI==
 
 
 
Windows users have another option to avoid using a virtual machine.  They 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 9.10]
 
# 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)
 
# 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 fallowing link should explain it to you better.
 
[https://wiki.ubuntu.com/WubiGuide Wubi Guide]
 
 
 
'''Note:'''
 
this will only work with the cd image found at the Ubuntu Download link. The dvd image of 9.04/9.10 is a live cd/installer and does not have the option to install inside windows using Wubi
 
 
 
==Proceed in Linux to run the new Doctor==
 
 
 
Go to the top of this article and follow the instructions as though you were running Linux, since you now are.
 

Revision as of 16:34, 19 December 2009

What is the Meta Doctor?

The Webos Internals Meta Doctor is a set of shell scripts which modify a copy of the Palm Webos Doctor to bypass the "First Use" application and allow the phone to run without having been activated on a cell network.

They reach into Palm's distributed Doctor jar file and make changes which prevent the first use app from running.

The default /var partition will be set to 2GB if all you follow these directions with no modifications to the files.

Step 1: Setting up Meta-Doctor

Linux

Installing required software

  1. Open terminal from the applications, accessories menu.
  2. If you have git installed, skip this step. If you do not have git installed, type:
    sudo apt-get install git-core
    and follow the directions to install git.
  3. Now type:
    git clone git://git.webos-internals.org/tools/meta-doctor.git
  4. If you do not have patch installed, you will need to install patch. On an Ubuntu system type:
    sudo apt-get install patch
  5. If you do not have java installed do so. To install java, choose (applications>Ubuntu Software Center> type java 6 runtime in search) It is easiest to search for java to find it, then follow the on screen instructions. It should be pretty simple.
  6. Download and install the palm sdk from http://developer.palm.com. Download the version for Ubuntu Here and install it. (If you are running the the 64-bit version of Ubuntu 9.x you will have difficulty installing the SDK and the instructions on the download site are wrong. Read this thread and this post for help.)
  7. Open a terminal and navigate to the meta-doctor directory where the meta-doctor was copied to in step 3 above. For example:
    cd meta-doctor
  8. Ensure that there is a downloads directory. If there is not one, create one using
    mkdir downloads
  9. Download the latest webosdoctor file using the download paths found at Webos Doctor Versions .The wr version is the German/UK GSM version. An example download command would be:
    cd downloads
    wget http://palm.cdnetworks.net/rom/p121r0d10092009/b11ep121rod/webosdoctorp100ewwbellmo.jar 
  10. Rename the file that you download to webosdoctorp100ewwsprint-1.2.1.jar (or webosdoctorp100eww-wr-1.1.3.jar or webosdoctorp100ewwbellmo-1.2.1.jar). An example command to do that would be:
    mv webosdoctorp100ewwbellmo.jar webosdoctorp100ewwbellmo-1.2.1.jar

Running meta-doctor

If you don't want to do all the things that the meta-doctor supports, then look at the top of the Makefile, and comment out the options you don't want.

  1. Navigate to the meta-doctor directory in the terminal by opening terminal and typing "cd meta-doctor"
  2. Type one of the following:
    make CARRIER=sprint unpack patch pack
    make CARRIER=wr unpack patch pack
    make CARRIER=bellmo unpack patch pack
    depending on the carrier in question.

This should begin a process within terminal that should take 10 minutes max.

Error conditions

If an error message appears with unknown in a file name, check the file rename in step 8 above.

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.

Mac OS X 10.6

In general, follow the Linux install instructions, with the following changes:

  1. If you haven't, install MacPorts first. [1].
  2. Install gnutar:
  3. sudo port install gnutar

After the make process, run the Doctor with:

java -jar  webosdoctorp100eww-wr-1.1.3.jar

(adapt for your flavor).

Using a Virtual Machine

If you do not have a Linux system, you will need to run the meta-doctor in a virtual machine. For windows users there are two options. For Mac users, follow option 1.

Running in VMware or VirtualBox

  1. Download Ubuntu 9.10.
  2. Download a virtual machine program, either vmware or virtualbox. A virtual machine is simply a program that allows you to piggyback a second operating system on top of your native OS without dual booting or actually having a Linux machine.
    I ended up using VirtualBox instead, because I found the VMware to be very confusing on what to actually download. The Virtual box website is very simple and straight forward. Here is a link for the virtualbox download for Windows: VirtualBox-3.0.10-54097-Win
  3. Now install virtualbox just like you would install any other application, nothing fancy here.
  4. Start up virtualbox and follow either of these instructions to install Ubuntu
    1. http://www.helpdeskgeek.com/linux-tips/how-to-install-ubuntu-in-virtualbox/
    2. http://www.psychocats.net/ubuntu/virtualbox


Using WUBI

Windows users have another option to avoid using a virtual machine. They 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.

  1. download Ubuntu 9.10
  2. burn that file to a cd or mount to virtual drive
  3. Run cd in windows (the wubi.exe file inside the disk, it also comes up in auto run)
  4. 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.
  5. 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 fallowing link should explain it to you better. Wubi Guide

Note: this will only work with the cd image found at the Ubuntu Download link. The dvd image of 9.04/9.10 is a live cd/installer and does not have the option to install inside windows using Wubi

Using Cygwin

Windows users can alternatively use Cygwin to run Meta-Doctor. This can often be simpler and faster than installing a full-blown Virtual Machine.

Simply install Cygwin, and include the following additional packages:

  1. Python
  2. Make
  3. Patch
  4. Git

After you have installed these packages, you can follow the Linux instructions

Step 2: 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/pre-p100eww-sprint-1.2.1/webosdoctorp100ewwsprint-1.2.1.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.

Windows host:

VirtualBox folder Sharing

VMWare folder Sharing

Mac OSX host:

VirtualBox folder Sharing


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/pre-p100eww-sprint-1.2.1/webosdoctorp100ewwsprint-1.2.1.jar /host/webosdoctorp100ewwsprint-1.2.1.jar

This will place the Jar either in your Windows C:\ drive or whatever drive you installed Wubi to.

Once the Doctor is running

  1. Select your language
  2. Accept the license agreement
  3. 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:

  1. With the USB cable connected, completely power off the Pre (hold down the power button until the option to power off appears)
  2. Hold down the Up button on the volume rocker
  3. While holding the Up button, power on the Pre
  4. "Next" should now be enabled - proceed with the recovery
{{#icon:Tux_with_Pre.png|}}

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.

Miscelaneous

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