<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.webos-internals.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cryptk</id>
	<title>WebOS Internals - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.webos-internals.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cryptk"/>
	<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/wiki/Special:Contributions/Cryptk"/>
	<updated>2026-05-03T18:26:27Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Internals_PDK&amp;diff=21677</id>
		<title>WebOS Internals PDK</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Internals_PDK&amp;diff=21677"/>
		<updated>2012-02-19T13:51:24Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Errors during make stage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: SDL]]&lt;br /&gt;
Palm's binary sdk  the &amp;quot;Plugin Developer Kit&amp;quot; became available to all developers in March 2010.&lt;br /&gt;
&lt;br /&gt;
When the widk was developed, the Palm PDK didn't exist, and until Dec 2010, it was not possible to run the PDK in Linux.  If you would like to run the official Palm PDK, see [[PDK on Linux]] for directions.&lt;br /&gt;
&lt;br /&gt;
In addition to the PDK, webOS Internals has released a full &amp;quot;WIDK&amp;quot; (webOS Internals Development Kit) for you using Scratchbox2.  &lt;br /&gt;
&lt;br /&gt;
Less than 10% of developers in the webOS developer community use Linux variants. Among those 10% there are dozens of different linux distributions that people use. Palm, therefore has chosen to support only Mac and Windows platforms for their PDK.  Palm recommends that Linux based developers use the webOS-internals WIDK instead.  &lt;br /&gt;
&lt;br /&gt;
We ''strongly'' urge the open-source homebrew community to standardize on this WIDK.   It uses the same underlying technologies, and is entirely open.  &lt;br /&gt;
&lt;br /&gt;
Scratchbox 2 is a cross-compilation engine, it can be used to create a highly flexible SDK.&lt;br /&gt;
&lt;br /&gt;
As installed below, the install process uses a script which extracts the required Palm provided files from a copy of webOS doctor, and  downloads from other sources, and builds a complete compilation environment automatically which can compile SDL and openGLES apps for webOS.  &lt;br /&gt;
&lt;br /&gt;
SB2 ''itself'' is totally distribution neutral but the webOS cross-compile environment is designed and tested on Ubuntu Server 11.04 32 bit. See [[WebOS_Internals_PDK_on_Mandriva]] if you want to run it on Mandriva.  If you want to run the WIDK on other distributions and are willing to support that yourself and not ask webOS Internals any questions about it then please enjoy and if you succeed come back here and make a new article on how you did it.  Otherwise, use the recommended OS.&lt;br /&gt;
&lt;br /&gt;
The webOS Internals team ''strongly suggest'' apt-get install into the Ubuntu environment only for this purpose. The same installation of Sun Virtualbox which hosts the Palm SDK emulator can host an Ubuntu 11.04 server with very little effort on any operating system. &lt;br /&gt;
&lt;br /&gt;
Developers wanting to work in a Gentoo environment 'without' SB2 can consider using the [http://www.webos-internals.org/wiki/Gentoo_NDK PuffTheMagic NDK].&lt;br /&gt;
&lt;br /&gt;
== Installing Ubuntu ==&lt;br /&gt;
&lt;br /&gt;
You can download VirtualBox here : https://www.virtualbox.org/wiki/Downloads &amp;lt;BR&amp;gt;&lt;br /&gt;
You can download ISO files to burn Ubuntu CD or DVD here : http://www.ubuntu.com/download/ubuntu/download &amp;lt;BR&amp;gt;&lt;br /&gt;
but if you want to spend a litle time for installing Ubuntu in VirtualBox, then use Ubunbu image available here : http://virtualboxes.org/images/ubuntu/ &amp;lt;BR&amp;gt;&lt;br /&gt;
After installing your ubuntu image, don't forget to use bridge network configuration in Virtualbox. &lt;br /&gt;
Then in the Ubuntu console, type  : &lt;br /&gt;
 sudo apt-get install telnet ssh virtualbox-ose&lt;br /&gt;
 sudo apt-get update&lt;br /&gt;
 sudo apt-get upgrade&lt;br /&gt;
In the Ubuntu desktop menu, go in System -&amp;gt; Preferences -&amp;gt; Keyboard -&amp;gt; Layouts tab to change the keyboard type.&lt;br /&gt;
Then next reboot your ubuntu.&lt;br /&gt;
&lt;br /&gt;
==SB2 Homepage==&lt;br /&gt;
[http://www.freedesktop.org/wiki/Software/sbox2 http://www.freedesktop.org/wiki/Software/sbox2]pdk&lt;br /&gt;
&lt;br /&gt;
==License==&lt;br /&gt;
Scratchbox 2 is distributed under LGPL version 2.1, portions are under GPL version 2. Some minor stuff is under MIT style license.&lt;br /&gt;
&lt;br /&gt;
== Installation on Ubuntu for webOS PDK cross compiling ==&lt;br /&gt;
&lt;br /&gt;
If setting up in a Virtual Box instance, it is recommended that you first complete the openSSH config as described in the VirtualBox tips for Windows users to the right.  This is helpful even with a Linux host, as SSH into the PDK Virtual Machine will allow copy and paste of the commands listed below and reduce errors.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; clear:right; width:30%&amp;quot;&amp;gt;{{Ubuntu_VM_notes_for_Windows_users}}&amp;lt;/div&amp;gt;&lt;br /&gt;
===Toolchain===&lt;br /&gt;
&lt;br /&gt;
===Prerequisites===&lt;br /&gt;
Your Ubuntu installation will need the following installed.  If you do not have them, run the command after the package name. You can test if they are found by just typing the command name.  If it says command not found, you need to install it.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|'''git''' || sudo apt-get install git-core&lt;br /&gt;
|-&lt;br /&gt;
|'''gcc''' || sudo apt-get install build-essential&lt;br /&gt;
|-&lt;br /&gt;
|'''curl''' || sudo apt-get install curl&lt;br /&gt;
|-&lt;br /&gt;
|'''unzip'''|| sudo apt-get install unzip&lt;br /&gt;
|-&lt;br /&gt;
|'''7zip *'''|| sudo apt-get install p7zip-full&lt;br /&gt;
|-&lt;br /&gt;
|'''autoconf'''|| sudo apt-get install autoconf&lt;br /&gt;
|-&lt;br /&gt;
|'''subversion'''|| sudo apt-get install subversion&lt;br /&gt;
|-&lt;br /&gt;
|'''libtool'''|| sudo apt-get install libtool&lt;br /&gt;
|-&lt;br /&gt;
|'''wget'''|| sudo apt-get install wget&lt;br /&gt;
|-&lt;br /&gt;
|'''pkg-config'''|| sudo apt-get install pkg-config&lt;br /&gt;
|-&lt;br /&gt;
|'''gettext'''|| sudo apt-get install gettext&lt;br /&gt;
|-&lt;br /&gt;
|'''fakeroot'''|| sudo apt-get install fakeroot&lt;br /&gt;
|-&lt;br /&gt;
|'''javac *'''|| sudo apt-get install sun-java6-jdk (if this command line does not work, then do :  sudo add-apt-repository ppa:ferramroberto/java; sudo apt-get update; sudo apt-get install sun-java6-jdk )&lt;br /&gt;
|-&lt;br /&gt;
|'''ant'''|| sudo apt-get install ant&lt;br /&gt;
|-&lt;br /&gt;
|'''cmake'''|| sudo apt-get install cmake&lt;br /&gt;
|-&lt;br /&gt;
|'''xsltproc'''|| sudo apt-get install xsltproc&lt;br /&gt;
|-&lt;br /&gt;
|'''intltool'''|| sudo apt-get install intltool&lt;br /&gt;
|-&lt;br /&gt;
|'''mkimage'''|| sudo apt-get install uboot-mkimage&lt;br /&gt;
|-&lt;br /&gt;
|'''lsdiff'''|| sudo apt-get install patchutils&lt;br /&gt;
|-&lt;br /&gt;
|'''flex'''|| sudo apt-get install flex&lt;br /&gt;
|-&lt;br /&gt;
|'''bison'''|| sudo apt-get install bison&lt;br /&gt;
|-&lt;br /&gt;
|'''libssl-dev'''|| sudo apt-get install libssl-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''zlib1g-dev'''|| sudo apt-get install zlib1g-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''libbz2-dev'''|| sudo apt-get install libbz2-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''xar *'''|| sudo apt-get install xar&lt;br /&gt;
|-&lt;br /&gt;
|'''help2man'''|| sudo apt-get install help2man&lt;br /&gt;
|-&lt;br /&gt;
|'''texinfo'''|| sudo apt-get install texinfo&lt;br /&gt;
|-&lt;br /&gt;
|'''automake 1.10'''|| sudo apt-get install automake1.10&lt;br /&gt;
|-&lt;br /&gt;
|'''autopoint'''|| sudo apt-get install autopoint&lt;br /&gt;
|-&lt;br /&gt;
|'''xutils-dev'''|| sudo apt-get install xutils-dev&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* 7-Zip version 4.59 or greater is needed&lt;br /&gt;
* it has been reported that sun-java6-jdk isn't necessary&lt;br /&gt;
* On Ubuntu 11.04 xar might not install using &amp;lt;code&amp;gt;sudo apt-get install xar&amp;lt;/code&amp;gt; See Note 2 Below&lt;br /&gt;
&lt;br /&gt;
If you're uncertain at all, and you're using Ubuntu 11.04, just cut and paste the following.  If they are already installed, they'll be skipped. xar is not included in the code below.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install git-core build-essential curl unzip p7zip-full autoconf subversion libtool wget pkg-config gettext fakeroot ant xsltproc intltool uboot-mkimage patchutils flex bison libssl-dev zlib1g-dev libbz2-dev help2man texinfo automake1.10 autopoint xutils-dev cmake&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you are a beginner with Ubuntu Linux Distribution, you should update all the packages on your system to avoid problems when you will compile.&lt;br /&gt;
&lt;br /&gt;
'''Note 2:''' If &amp;lt;code&amp;gt;xar&amp;lt;/code&amp;gt; cannot be installed with &amp;lt;code&amp;gt;sudo apt-get install xar&amp;lt;/code&amp;gt;, then you have to download two &amp;lt;code&amp;gt;.deb&amp;lt;/code&amp;gt;-files manually and install them (in the order they are listed):&lt;br /&gt;
* If you're using Ubuntu 11.04:&lt;br /&gt;
# [http://packages.ubuntu.com/hardy/libxar1 libxar1]&lt;br /&gt;
# [http://packages.ubuntu.com/hardy/xar xar]&lt;br /&gt;
* If you're using Debian 6.0.2 (Squeeze):&lt;br /&gt;
# [http://packages.debian.org/lenny/libxar1 libxar1]&lt;br /&gt;
# [http://packages.debian.org/lenny/xar xar]&lt;br /&gt;
&lt;br /&gt;
If you have not xar packages in your repo, then find the files in the previous links and next install manually xar files :&lt;br /&gt;
 sudo dpkg -i libxar1_1.5.1-1_i386.deb xar_1.5.1-1_i386.deb&lt;br /&gt;
&lt;br /&gt;
After that execute the above command again.&lt;br /&gt;
&lt;br /&gt;
Use these 2 command line :&amp;lt;BR&amp;gt;&lt;br /&gt;
Update repositories   :&lt;br /&gt;
 sudo aptitude update (if it doesn't work use : sudo apt-get update )&lt;br /&gt;
And next, update the packages :&lt;br /&gt;
 sudo aptitude safe-upgrade (if it doesn't work use : sudo apt-get upgrade )&lt;br /&gt;
&lt;br /&gt;
If you're on a 64-bit system, you will also need to install the ia32-libs package.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The ''make toolchain'' command and later steps will download approximately a half-gig of tools and sources from various locations.  Do not start this if you do not have time for a large download.  Additionally, if you already have downloaded a copy of the correct version of the WebOS doctor, you can reduce the download time by copying the doctor file into cross-compile/doctors/ with the correct name.  This will cause the appropriate command to skip that download.  Note that codesourcery rate limts downloads and at a minimum this process will take 10 to 15 minutes irrespective of your connection speed. &lt;br /&gt;
&lt;br /&gt;
====Start setup====&lt;br /&gt;
Create a preware folder, copy the cross-compile tools into it (if you have not installed git, apt-get install git-core), and use a make script to begin the set up of the compilation toolchain. &lt;br /&gt;
&lt;br /&gt;
 sudo mkdir -p /srv/preware&lt;br /&gt;
 cd /srv/preware&lt;br /&gt;
 sudo chmod 777 .&lt;br /&gt;
 git clone git://git.webos-internals.org/preware/cross-compile.git&lt;br /&gt;
 cd cross-compile&lt;br /&gt;
 make toolchain&lt;br /&gt;
&lt;br /&gt;
If errors occur, browse the [http://git.webos-internals.org/preware/cross-compile/ repository online] and checkout earlier commits until you get something that gets through &amp;quot;make toolchain&amp;quot; and the later &amp;quot;make stage&amp;quot; commands like so:&lt;br /&gt;
&lt;br /&gt;
 git checkout &amp;lt;commit-ish&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
 $ cd /srv/preware/cross-compile/&lt;br /&gt;
 $ ls -la&lt;br /&gt;
 drwxr-xr-x  8 ubuntu ubuntu 4096 2011-12-31 17:33 .git&lt;br /&gt;
 -rwxr-xr-x  1 ubuntu ubuntu   79 2011-12-31 17:33 .gitignore&lt;br /&gt;
 $ git branch&lt;br /&gt;
 * master&lt;br /&gt;
 $ git checkout master&lt;br /&gt;
 Already on 'master'&lt;br /&gt;
 $ git checkout&lt;br /&gt;
 $ ls -la&lt;br /&gt;
 drwxr-xr-x  8 ubuntu ubuntu 4096 2012-01-09 12:09 .git&lt;br /&gt;
 -rwxr-xr-x  1 ubuntu ubuntu   79 2011-12-31 17:33 .gitignore&lt;br /&gt;
&lt;br /&gt;
====Verify sh shell====&lt;br /&gt;
On Ubuntu /bin/sh is a symbolic link to dash.  This will cause errors with the make stage command below, as some of the scripts assume bash.  Run the following command to see what shell sh is linked to.&lt;br /&gt;
&lt;br /&gt;
  ls -l /bin/sh&lt;br /&gt;
&lt;br /&gt;
If the result is a link to dash:&lt;br /&gt;
&lt;br /&gt;
  lrwxrwxrwx 1 root root 4 2010-07-06 23:55 /bin/sh -&amp;gt; dash&lt;br /&gt;
&lt;br /&gt;
You will want to correct it with the following:&lt;br /&gt;
&lt;br /&gt;
  sudo dpkg-reconfigure dash&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to &amp;quot;Install dash as /bin/sh?&amp;quot;.  Select &amp;quot;&amp;lt;No&amp;gt;&amp;quot; and bash will be used.  Rerun the command to verify:&lt;br /&gt;
&lt;br /&gt;
  ls -l /bin/sh&lt;br /&gt;
&lt;br /&gt;
You should now see:&lt;br /&gt;
&lt;br /&gt;
  lrwxrwxrwx 1 root root 4 2010-07-09 21:12 /bin/sh -&amp;gt; bash&lt;br /&gt;
&lt;br /&gt;
====Setup Scratchbox====&lt;br /&gt;
Now, use apt-get to setup scratchbox...&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install scratchbox2 qemu-kvm-extras (in Debian install qemu-user and qemu-system instead of qemu-kvm-extras)&lt;br /&gt;
&lt;br /&gt;
...and set it up for compiling for webOS. &lt;br /&gt;
&lt;br /&gt;
 cd /srv/preware/cross-compile/toolchain/arm-2007q3/arm-none-linux-gnueabi/libc&lt;br /&gt;
 PATH=/srv/preware/cross-compile/toolchain/arm-2007q3/bin:${PATH} sb2-init -c /usr/bin/qemu-arm armv7 arm-none-linux-gnueabi-gcc&lt;br /&gt;
 PATH=/srv/preware/cross-compile/toolchain/arm-2007q3/bin:${PATH} sb2-init -c /usr/bin/qemu-arm armv6 arm-none-linux-gnueabi-gcc&lt;br /&gt;
 cd /srv/preware/cross-compile&lt;br /&gt;
&lt;br /&gt;
On some distributions such as recent Debian and Ubuntu, you'll have compiler problems with these values - use sb2-qemu-arm instead of qemu-arm in the sb2-init command lines above.&lt;br /&gt;
&lt;br /&gt;
Then:&lt;br /&gt;
&lt;br /&gt;
 make setup&lt;br /&gt;
&lt;br /&gt;
Once this setup is complete, compiling sdl apps for webOS is very simple. Note that the set up for i686 is not yet determined.&lt;br /&gt;
&lt;br /&gt;
==Verified installed clean list==&lt;br /&gt;
&lt;br /&gt;
If you have successfully built the WIDK from scratch, with NO problems, feel free to add your information to this list.  This will help us assess what distributions and versions it is fully compatible with.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|'''IRC name'''&lt;br /&gt;
|'''Linux Distribution'''&lt;br /&gt;
|'''Version'''&lt;br /&gt;
|'''Date'''&lt;br /&gt;
|'''Comments'''&lt;br /&gt;
|-&lt;br /&gt;
|Scoutcamper&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|9.04,9.10,10.04,10.10&lt;br /&gt;
|10-18-10&lt;br /&gt;
|Works Great!&lt;br /&gt;
|-&lt;br /&gt;
|elpollodiablo1&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|11.04&lt;br /&gt;
|7-13-11&lt;br /&gt;
|Works With updated Wiki Info&lt;br /&gt;
|-&lt;br /&gt;
|nebula&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|11.04&lt;br /&gt;
|9-7-11&lt;br /&gt;
|It works!&lt;br /&gt;
|-&lt;br /&gt;
|yannick56&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|11.04&lt;br /&gt;
|12-31-11&lt;br /&gt;
|Works With updated Wiki Info&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Errors during make stage ==&lt;br /&gt;
&lt;br /&gt;
===automake1.10===&lt;br /&gt;
&lt;br /&gt;
If you see the error below, you need the latest automake (1.10)&lt;br /&gt;
&lt;br /&gt;
 /usr/share/automake-1.9/am/depend2.am: am__fastdepOBJC does not appear in AM_CONDITIONAL&lt;br /&gt;
 configure.in:88: installing `./config.guess'&lt;br /&gt;
 configure.in:88: installing `./config.sub'&lt;br /&gt;
 Makefile.am: installing `./INSTALL'&lt;br /&gt;
 autoreconf2.50: automake failed with exit status: 1&lt;br /&gt;
&lt;br /&gt;
Install automake1.10 and it should work (according to [http://old.nabble.com/AC_PROG_OBJC-and-automake-1.9-td22434760.html this page])&lt;br /&gt;
&lt;br /&gt;
===Fix mmap errors===&lt;br /&gt;
The following commands appear redundant.  They are not.  The install this fixes your mmap config to fix an mmap: permission denied error, but we don't need the package itself. (Do each command separately with cut and paste).&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install qemu-arm-static&lt;br /&gt;
 sudo apt-get remove qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
It appears that this package has been renamed qemu-kvm-extras-static in Ubuntu 11.04.&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;span style=&amp;quot;font-size:150%&amp;quot;&amp;gt;OR&amp;lt;/span&amp;gt; As a workaround, if this package is not available, &lt;br /&gt;
::: the following commands can be executed in a root shell (sudo -s) to fix the mmap configuration to enable qemu-arm to work.&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;vm.mmap_min_addr = 4096&amp;quot; &amp;gt; /etc/sysctl.d/mmap_min_addr.conf&lt;br /&gt;
 /etc/init.d/procps restart&lt;br /&gt;
&lt;br /&gt;
(note that the value should not be &amp;quot;0&amp;quot;. 4096 is chosen to avoid null pointer attacks.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Libtool===&lt;br /&gt;
&lt;br /&gt;
 make[5]: Entering directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6/src'&lt;br /&gt;
 /bin/sh ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -Wall -g -O2 -MT libdotconf_la-dotconf.lo -MD -MP -MF .deps/libdotconf_la-dotconf.Tpo -c -o libdotconf_la-dotconf.lo `test -f 'dotconf.c' || echo './'`dotconf.c&lt;br /&gt;
 libtool: Version mismatch error.  This is libtool 2.2.6b, but the&lt;br /&gt;
 libtool: definition of this LT_INIT comes from libtool 2.2.6.&lt;br /&gt;
 libtool: You should recreate aclocal.m4 with macros from libtool 2.2.6b&lt;br /&gt;
 libtool: and run autoconf again.&lt;br /&gt;
 make[5]: *** [libdotconf_la-dotconf.lo] Error 63&lt;br /&gt;
 make[5]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6/src'&lt;br /&gt;
 make[4]: *** [install-recursive] Error 1&lt;br /&gt;
 make[4]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6'&lt;br /&gt;
 make[3]: *** [build/armv6.built] Error 2&lt;br /&gt;
 make[3]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf'&lt;br /&gt;
 make[2]: *** [build_common/libdotconf] Error 2&lt;br /&gt;
 make[2]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make[1]: *** [staging-armv6] Error 2&lt;br /&gt;
 make[1]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make: *** [stage] Error 2&lt;br /&gt;
&lt;br /&gt;
Confirmed by 3 people. Fix this by either (your choice)&lt;br /&gt;
*upgrading to Ubuntu 10.04 or newer (the WIDK now relies on a slightly newer version of libtool that's not in 9.10 or earlier)&lt;br /&gt;
*updating libtool to 2.2.6b-2 (backported to 9.10, see available downloads on http://linuxappfinder.com/package/libtool#ubuntu_karmicpartner)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you're getting an error where sb2-init gives you the following output:&lt;br /&gt;
&lt;br /&gt;
 checking for gcc... gcc&lt;br /&gt;
 checking for C compiler default output file name... a.out&lt;br /&gt;
 checking whether the C compiler works... configure: error: cannot run C compiled programs.&lt;br /&gt;
 If you meant to cross compile, use `--host'.&lt;br /&gt;
 See `config.log' for more details.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 Running /usr/bin/sb2-build-libtool failed&lt;br /&gt;
 You can run this manually later, otherwise your&lt;br /&gt;
 sb2 environment is correctly setup and ready to use&lt;br /&gt;
&lt;br /&gt;
You need to upgrade qemu. Alternatively, if your sb2-init output fails with a different output, like this:&lt;br /&gt;
&lt;br /&gt;
 checking for gcc... gcc&lt;br /&gt;
 checking for C compiler default output file name... a.out&lt;br /&gt;
 checking whether the C compiler works... configure: error: cannot run C compiled programs.&lt;br /&gt;
 If you meant to cross compile, use `--host'.&lt;br /&gt;
 See `config.log' for more details.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 sb2-init completed successfully, have fun!&lt;br /&gt;
&lt;br /&gt;
Then you need to upgrade scratchbox, too (install 2.0 instead of 1.99).&lt;br /&gt;
&lt;br /&gt;
=== ecore ===&lt;br /&gt;
*TRUE and FALSE are not defined:&lt;br /&gt;
Manually add the definition:&lt;br /&gt;
&lt;br /&gt;
 #ifndef TRUE&lt;br /&gt;
 # define TRUE 1&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
 #ifndef FALSE&lt;br /&gt;
 # define FALSE 0&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$po_makefile_in&amp;lt;/code&amp;gt; could not be found:&lt;br /&gt;
**Open the file &amp;lt;code&amp;gt;/srv/preware/cross-compile/packages/dev-e/ecore/build/src/configure.ac&amp;lt;/code&amp;gt; and search for the line with: &amp;lt;code&amp;gt;$po_makefile_in&amp;lt;/code&amp;gt; (in my case line 1437) and replace it with &amp;lt;code&amp;gt;po/Makefile.in&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== /bin/sh errors ===&lt;br /&gt;
If you are getting a &amp;quot;bad fd number&amp;quot; or other /bin/sh error, make sure your /bin/sh points to bash, not another shell (such as dash.)&lt;br /&gt;
&lt;br /&gt;
Go back through the Verify sh shell section above to correct.&lt;br /&gt;
&lt;br /&gt;
=== further download errors ===&lt;br /&gt;
&lt;br /&gt;
rwhitby's suggestion:&lt;br /&gt;
&lt;br /&gt;
If you don't need that package which is failing for you, just move it to the nonworking directory and try again.&lt;br /&gt;
&lt;br /&gt;
14 July 2011=Using Rod's approach: So far I had to move fuse, unionfs-fuse, dev-gl, voip and x (pango and pixman failed). Using Ubuntu 11.04.&lt;br /&gt;
&lt;br /&gt;
=== X--tag=CC: command not found ===&lt;br /&gt;
&lt;br /&gt;
While running '''make stage''' on Ubuntu 10.10, I got the following error during compilation of sdl-gfx:&lt;br /&gt;
&lt;br /&gt;
 /bin/sh ./libtool --tag=CC   --mode=compile gcc -DPACKAGE_NAME=\&amp;quot;\&amp;quot; -DPACKAGE_TARNAME=\&amp;quot;\&amp;quot; -DPACKAGE_VERSION=\&amp;quot;\&amp;quot; -DPACKAGE_STRING=\&amp;quot;\&amp;quot; -DPACKAGE_BUGREPORT=\&amp;quot;\&amp;quot; -DPACKAGE_URL=\&amp;quot;\&amp;quot; -DPACKAGE=\&amp;quot;SDL_gfx\&amp;quot; -DVERSION=\&amp;quot;2.0.20\&amp;quot; -DSTDC_HEADERS=1  -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1  -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\&amp;quot;.libs/\&amp;quot; -DX_DISPLAY_MISSING=1 -DBUILD_DLL -I.     -g -O2 -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -MT SDL_gfxPrimitives.lo -MD -MP -MF .deps/SDL_gfxPrimitives.Tpo -c -o  SDL_gfxPrimitives.lo SDL_gfxPrimitives.c&lt;br /&gt;
 ./libtool: line 847: X--tag=CC: command not found&lt;br /&gt;
 ./libtool: line 880: libtool: ignoring unknown tag : command not found&lt;br /&gt;
 ./libtool: line 847: X--mode=compile: command not found&lt;br /&gt;
 ./libtool: line 1014: *** Warning: inferring the mode of operation is deprecated.: command not found&lt;br /&gt;
 ./libtool: line 1015: *** Future versions of Libtool will require --mode=MODE be specified.: command not found&lt;br /&gt;
 ./libtool: line 1158: Xgcc: command not found&lt;br /&gt;
 ./libtool: line 1158: X-DPACKAGE_NAME=&amp;quot;&amp;quot;: command not found&lt;br /&gt;
 ./libtool: line 1158: X-DPACKAGE_TARNAME=&amp;quot;&amp;quot;: command not found&lt;br /&gt;
&lt;br /&gt;
In order to fix this problem, I had to run this command to set &amp;lt;code&amp;gt;$echo&amp;lt;/code&amp;gt; (which gets used in line 847 of the libtool script):&lt;br /&gt;
&lt;br /&gt;
 export echo=echo&lt;br /&gt;
&lt;br /&gt;
and re-run &amp;lt;code&amp;gt;make stage&amp;lt;/code&amp;gt; in the same shell session.&lt;br /&gt;
&lt;br /&gt;
=== missing macro AM_PATH_SDL in making libsdl-gfx ===&lt;br /&gt;
In Ubuntu Server 11.04 amd64 I had to install the package libsdl1.2-dev to get past this.  I also needed the X--tag=CC fix above.&lt;br /&gt;
Also for Ubuntu 11.04 i386 install the package libsdl1.2-dev.&lt;br /&gt;
&lt;br /&gt;
=== virtualbox-ose missing ===&lt;br /&gt;
&lt;br /&gt;
I have the following error with Ubuntu 11.04 :&lt;br /&gt;
 ...&lt;br /&gt;
 Extracting  nova-cust-image-sdk1457.vmdk&lt;br /&gt;
 Everything is Ok&lt;br /&gt;
 Size:       397672448&lt;br /&gt;
 Compressed: 164460248&lt;br /&gt;
 VBoxManage clonehd rootfs/i686/extract/nova-cust-image-sdk1457.vmdk rootfs/i686/extract/nova-cust-image-sdk1457.raw --format RAW&lt;br /&gt;
 make: VBoxManage: Command not found&lt;br /&gt;
 make: *** [rootfs/i686/.unpacked] Error 127&lt;br /&gt;
&lt;br /&gt;
and I fix it by installing virtualbox-ose pakage as this :&lt;br /&gt;
 sudo apt-get install virtualbox-ose&lt;br /&gt;
&lt;br /&gt;
=== etags: command not found ===&lt;br /&gt;
&lt;br /&gt;
If staging fails during compilation of liblinphone (possibly other packages) with an error similar to the following:&lt;br /&gt;
&lt;br /&gt;
 (cd build/src; etags `find . -type f -print`)&lt;br /&gt;
 /bin/sh: etags: command not found&lt;br /&gt;
 make[2]: *** [build/.unpacked] Error 127&lt;br /&gt;
 make[2]: Leaving directory `/srv/preware/cross-compile/packages/voip/liblinphone'&lt;br /&gt;
 make[1]: *** [build_voip/liblinphone] Error 2&lt;br /&gt;
 make[1]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make: *** [stage-armv7] Error 2&lt;br /&gt;
&lt;br /&gt;
Then you need to install the emacs common package.  On Ubuntu the command you need is:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install emacs23-bin-common&lt;br /&gt;
&lt;br /&gt;
=== xorg-xserver: must install fontutil ===&lt;br /&gt;
&lt;br /&gt;
If staging fails during compilation of xorg-xserver with an error similar to the following:&lt;br /&gt;
&lt;br /&gt;
 autoreconf: Entering directory `.'&lt;br /&gt;
 autoreconf: configure.ac: not using Gettext&lt;br /&gt;
 autoreconf: running: aclocal --force -I m4&lt;br /&gt;
 configure.ac:43: error: must install fontutil 1.1 or later before running autoconf/autogen&lt;br /&gt;
 configure.ac:43: the top level&lt;br /&gt;
 autom4te: /usr/bin/m4 failed with exit status: 1&lt;br /&gt;
&lt;br /&gt;
Then you need to install the xfonts-utils package.  On Ubuntu the command you need is:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install xfonts-utils&lt;br /&gt;
&lt;br /&gt;
==Sample build of [[Application:Doom]]==&lt;br /&gt;
&lt;br /&gt;
Now, go to [[Building DOOM with scratchbox2]] and follow the simple directions.&lt;br /&gt;
&lt;br /&gt;
==In Process Enhancements==&lt;br /&gt;
[[Extracting the PDK on Linux]]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_list&amp;diff=21591</id>
		<title>Ipkg list</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_list&amp;diff=21591"/>
		<updated>2012-02-06T22:25:14Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of all pagkages found through an `ipkg list`&lt;br /&gt;
&lt;br /&gt;
=webOS 2.2.4=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
accounts.ui - 1.0-42.5 - &lt;br /&gt;
acct - 6.3.99+6.4pre1-r0 - &lt;br /&gt;
activitymanager - 1.5-94.3 - &lt;br /&gt;
addressing - 1.0-34.1 - &lt;br /&gt;
alsa-conf-base - 1.0.24-3 - &lt;br /&gt;
alsa-lib - 1.0.24-3 - &lt;br /&gt;
alsa-plugins - 1.0.24-4 - &lt;br /&gt;
alsa-utils - 1.0.24-1 - &lt;br /&gt;
alsa-utils-alsactl - 1.0.24-1 - &lt;br /&gt;
alsa-utils-amixer - 1.0.24-1 - &lt;br /&gt;
alsa-utils-aplay - 1.0.24-1 - &lt;br /&gt;
amrnbcodec - 1.0-6 - &lt;br /&gt;
app-ipkgs - 1.0.6-32.99 - &lt;br /&gt;
applicationinstallerutility - 1.0-15 - &lt;br /&gt;
armtoolchain - 4.3-234.11 - &lt;br /&gt;
armtoolchain-gconv - 4.3-234.11 - &lt;br /&gt;
atomicparsley - 0.9.0-5 - &lt;br /&gt;
audiod - 1.1-368.53 - &lt;br /&gt;
audiod-config - 1.0.2-92.17 - &lt;br /&gt;
audiod-config-eu - 1.0-13 - &lt;br /&gt;
base-files - 3.0.14.6-40 - &lt;br /&gt;
base-passwd - 3.5.9-r7palm1 - &lt;br /&gt;
baseimage - 23.17M-r0 - &lt;br /&gt;
binutils - 2.17.50.0.8.1-2 - &lt;br /&gt;
boost - 1.39.0-r0palm2 - &lt;br /&gt;
boost-filesystem - 1.39.0-r0palm2 - &lt;br /&gt;
boost-program-options - 1.39.0-r0palm2 - &lt;br /&gt;
boost-regex - 1.39.0-r0palm2 - &lt;br /&gt;
boost-system - 1.39.0-r0palm2 - &lt;br /&gt;
bootchart - 0.9-r3 - &lt;br /&gt;
bootie-images - 1.0.3-25 - &lt;br /&gt;
bootloader - 1.0.0-243.2.28 - &lt;br /&gt;
brctl - 1.2-2 - &lt;br /&gt;
browser-adapter - 2.0.0-131.8 - &lt;br /&gt;
browserserver - 2.0.0-237.13 - &lt;br /&gt;
bsdiff - 4.3-2 - &lt;br /&gt;
bspatch-xz - 1.0.0-1 - &lt;br /&gt;
busybox - 1.17.3-12 - &lt;br /&gt;
bzip2 - 1.0.5-r3 - &lt;br /&gt;
c-ares - 1.7.4-r1 - &lt;br /&gt;
caja - 1.0-2 - &lt;br /&gt;
calendar - 1.0-38 - &lt;br /&gt;
calendar.dta - 1.0-17 - &lt;br /&gt;
calendar.io - 1.0-22.1 - &lt;br /&gt;
camd-omap36xx - 1.0.0-13 - &lt;br /&gt;
camsrc-omap36xx - 1.0.0-8 - &lt;br /&gt;
castletpfw - 1.0.2-15 - &lt;br /&gt;
cifs - 3.0.23c-1 - &lt;br /&gt;
ciscoanyconnectclient - 1.0.1-28 - &lt;br /&gt;
cjson - 1.0-27 - &lt;br /&gt;
com.palm.app.accounts - 1.0-13.2 - &lt;br /&gt;
com.palm.app.agendaview - 1.0-5.cf.1 - &lt;br /&gt;
com.palm.app.backup - 1.0-69.5 - &lt;br /&gt;
com.palm.app.bluetooth - 1.0-2.1.0.15 - &lt;br /&gt;
com.palm.app.browser - 2.0.0-147 - &lt;br /&gt;
com.palm.app.calculator - 1.0-39.3 - &lt;br /&gt;
com.palm.app.calendar - 1.0-277.3 - &lt;br /&gt;
com.palm.app.camera - 1.0-175.6 - &lt;br /&gt;
com.palm.app.certificate - 1.0-26 - &lt;br /&gt;
com.palm.app.clock - 1.0-46.6 - &lt;br /&gt;
com.palm.app.collectlogs - 1.0-45.cf.4 - &lt;br /&gt;
com.palm.app.contacts - 1.0-241 - &lt;br /&gt;
com.palm.app.crotest - 1.0-35 - &lt;br /&gt;
com.palm.app.dataimport - 1.0-67 - &lt;br /&gt;
com.palm.app.dateandtime - 1.0-57.3 - &lt;br /&gt;
com.palm.app.deviceinfo - 1.0-93.4 - &lt;br /&gt;
com.palm.app.devmodeswitcher - 1.0-9.1 - &lt;br /&gt;
com.palm.app.email - 1.0-461 - &lt;br /&gt;
com.palm.app.exhibitionpreferences - 1.0-3.5 - &lt;br /&gt;
com.palm.app.firstuse - 1.0-226.15.1 - &lt;br /&gt;
com.palm.app.help - 1.0-51.6 - &lt;br /&gt;
com.palm.app.languagepicker - 1.0-54.2 - &lt;br /&gt;
com.palm.app.location - 1.0-23.2 - &lt;br /&gt;
com.palm.app.maps-dbkinds - 1.0-5 - &lt;br /&gt;
com.palm.app.messaging - 1.0-253.cf.17.1 - &lt;br /&gt;
com.palm.app.mobilehotspot - 1.0-1.1.12 - &lt;br /&gt;
com.palm.app.monad - 1.0-4 - &lt;br /&gt;
com.palm.app.musicplayer - 1.0-218 - &lt;br /&gt;
com.palm.app.network - 1.0-9.3 - &lt;br /&gt;
com.palm.app.notes - 1.0.1-75.3 - &lt;br /&gt;
com.palm.app.oddcore - 1.0-22 - &lt;br /&gt;
com.palm.app.ondevlog - 1.0-7 - &lt;br /&gt;
com.palm.app.pdfviewer - 1.0-77.7 - &lt;br /&gt;
com.palm.app.phone - 1.1-62.38 - &lt;br /&gt;
com.palm.app.phoneaccounts - 1.0-5.1 - &lt;br /&gt;
com.palm.app.phonediag - 1.0-24 - &lt;br /&gt;
com.palm.app.photos - 1.0-100179.5 - &lt;br /&gt;
com.palm.app.screenlock - 1.0-71.7 - &lt;br /&gt;
com.palm.app.searchpreferences - 1.0-17.3 - &lt;br /&gt;
com.palm.app.skype - 1.1-8.3 - &lt;br /&gt;
com.palm.app.soundsandalerts - 1.0-39.3 - &lt;br /&gt;
com.palm.app.stk - 1.0-65.4 - &lt;br /&gt;
com.palm.app.streamingmusicplayer - 1.0-46.3 - &lt;br /&gt;
com.palm.app.swmanager - 1.0-25 - &lt;br /&gt;
com.palm.app.tasks - 1.0.2-92.9 - &lt;br /&gt;
com.palm.app.textassist - 1.0-19.3 - &lt;br /&gt;
com.palm.app.timedetails - 1.0-1 - &lt;br /&gt;
com.palm.app.updates - 1.0-101.3 - &lt;br /&gt;
com.palm.app.usbpassthrough - 1.0-34.2.cf - &lt;br /&gt;
com.palm.app.videoplayer - 1.0-149.4 - &lt;br /&gt;
com.palm.app.vpn - 1.0-45.3 - &lt;br /&gt;
com.palm.app.wifi - 1.0-101.3 - &lt;br /&gt;
com.palm.app.wlmcustomlogin - 1.0-7 - &lt;br /&gt;
com.palm.app.youtube - 1.0-46.2 - &lt;br /&gt;
com.palm.crotest - 1.0.1-26 - &lt;br /&gt;
com.palm.messaging.chatthreader - 1.0-45 - &lt;br /&gt;
com.palm.messaging.smstest - 1.0-5 - &lt;br /&gt;
com.palm.service.accounts - 1.0-54.4 - &lt;br /&gt;
com.palm.service.appcatalog - 1.0-20 - &lt;br /&gt;
com.palm.service.backup - 1.0-30.7 - &lt;br /&gt;
com.palm.service.bluetooth.spp - 1.0-14 - &lt;br /&gt;
com.palm.service.calendar.facebook - 1.0-16.1 - &lt;br /&gt;
com.palm.service.calendar.google - 1.0-50.5 - &lt;br /&gt;
com.palm.service.calendar.reminders - 1.0-26 - &lt;br /&gt;
com.palm.service.calendar.yahoo - 1.0-32.4 - &lt;br /&gt;
com.palm.service.collectlogs - 1.0-5 - &lt;br /&gt;
com.palm.service.contacts.base - 1.0-25 - &lt;br /&gt;
com.palm.service.contacts.facebook - 1.0-57.3 - &lt;br /&gt;
com.palm.service.contacts.google - 1.1-41.2 - &lt;br /&gt;
com.palm.service.contacts.linkedin - 1.0-54.3 - &lt;br /&gt;
com.palm.service.contacts.linker - 1.0-70.1 - &lt;br /&gt;
com.palm.service.contacts.sim - 1.0-24.1 - &lt;br /&gt;
com.palm.service.contacts.yahoo - 1.0-38.2 - &lt;br /&gt;
com.palm.service.customization - 1.0-16.6 - &lt;br /&gt;
com.palm.service.datatransfer - 1.0-26 - &lt;br /&gt;
com.palm.service.deviceprofile - 1.0-9 - &lt;br /&gt;
com.palm.service.dwipe - 1.0-7 - &lt;br /&gt;
com.palm.service.locale - 1.0-1 - &lt;br /&gt;
com.palm.service.mediabroadcast - 1.0-12 - &lt;br /&gt;
com.palm.service.mediacache - 1.0-15 - &lt;br /&gt;
com.palm.service.migration - 1.0-38.2 - &lt;br /&gt;
com.palm.service.migrationscript - 1.0-2 - &lt;br /&gt;
com.palm.service.palmprofile - 1.0-29.3 - &lt;br /&gt;
com.palm.service.photos.facebook - 1.0-8 - &lt;br /&gt;
com.palm.service.photos.photobucket - 1.0-11 - &lt;br /&gt;
com.palm.service.videos.facebook - 1.0-10 - &lt;br /&gt;
com.palm.service.videos.youtube - 1.0-12 - &lt;br /&gt;
com.palm.sfrvvm - 1.0.1-16 - &lt;br /&gt;
com.palm.synergy.templates.builtins - 1.0-30.2 - &lt;br /&gt;
com.palm.yahoo.authservice - 1.0.1-16.2 - &lt;br /&gt;
configurator - 1.2-36 - &lt;br /&gt;
contacts.base - 1.0-111 - &lt;br /&gt;
contacts.plugin.messaging - 1.0-12 - &lt;br /&gt;
contacts.plugin.phone - 1.0-8 - &lt;br /&gt;
contacts.plugin.pmvoicecommand - 1.0-2 - &lt;br /&gt;
contacts.plugin.smartkey - 1.0-2 - &lt;br /&gt;
contacts.ui - 1.0-45 - &lt;br /&gt;
contextupload - 1.0-24 - &lt;br /&gt;
cplite - 1.2-19 - &lt;br /&gt;
cpushareholder - 1.0-11 - &lt;br /&gt;
crotestcastleplus-images - 1.0-2 - &lt;br /&gt;
cryptofs - 0.6.0-13 - &lt;br /&gt;
cryptsetup - 1.0.6-r2 - &lt;br /&gt;
curl - 7.21.3-9 - &lt;br /&gt;
datamigration - 1.0-20 - &lt;br /&gt;
db - 4.8.26-r7 - &lt;br /&gt;
deletemanager - 1.0.1-8 - &lt;br /&gt;
dhcp-client - 3.0.2-r5palm2 - &lt;br /&gt;
dns-sd - 258.14-10 - &lt;br /&gt;
dnsmasq - 2.55-7 - &lt;br /&gt;
docadapterbase - 1.0.0-16 - &lt;br /&gt;
documentserver - 1.0.2-97 - &lt;br /&gt;
dosfstools - 2.11-r1palm1 - &lt;br /&gt;
downloadupdate - 1.0.1-70 - &lt;br /&gt;
dspmon-omap34xx - 1.0.0-9 - &lt;br /&gt;
e2fsprogs - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-badblocks - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-blkid - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-e2fsck - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-fsck - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-libs - 1.41.4-r0 - &lt;br /&gt;
e2fsprogs-mke2fs - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-tune2fs - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-uuidgen - 1.41.4.2-3 - &lt;br /&gt;
eglsubdrv - 1.0-57.1 - &lt;br /&gt;
email-adapter - 1.0.0-4.2 - &lt;br /&gt;
enyo - 1.0-102.1 - &lt;br /&gt;
eventreporter - 1.1-10 - &lt;br /&gt;
exmap-console - 1.0.0-6 - &lt;br /&gt;
expat - 1.95.8-r1 - &lt;br /&gt;
extractfs - 1.0.4-66 - &lt;br /&gt;
faac - 1.24-r0 - &lt;br /&gt;
facebook - 1.0-16 - &lt;br /&gt;
fbdraw - 1.0.0-6 - &lt;br /&gt;
fbprogress - 1.5-13 - &lt;br /&gt;
fbset - 2.1-r2 - &lt;br /&gt;
ffmpeg - 65daa94.1-r3palm2 - &lt;br /&gt;
filecache - 1.7-45.4 - &lt;br /&gt;
filenotifyd - 1.0.6-49.2 - &lt;br /&gt;
filenotifyd-triton - 1.0.10-83.5 - &lt;br /&gt;
flash - 1.0-90.1 - &lt;br /&gt;
flash-mini-adapter - 1.0.2-18 - &lt;br /&gt;
flashplugin - 10.3.185-46.1 - &lt;br /&gt;
fontconfig - 2.6.0-r1palm4 - &lt;br /&gt;
fontconfig-utils - 2.6.0-r1palm4 - &lt;br /&gt;
foundations.base - 1.0-104 - &lt;br /&gt;
foundations.crypto - 1.0-8 - &lt;br /&gt;
foundations.io - 1.0-16 - &lt;br /&gt;
foundations.json - 1.0-13 - &lt;br /&gt;
foundations.mojo - 1.0-13 - &lt;br /&gt;
foundations.xml - 1.0-7 - &lt;br /&gt;
freetype - 2.3.12-r1 - &lt;br /&gt;
fuse - 2.7.2-r2 - &lt;br /&gt;
fuse-utils - 2.7.2-r2 - &lt;br /&gt;
fuser - 22.2-r1 - &lt;br /&gt;
gdbm - 1.8.3-r3 - &lt;br /&gt;
geolocation-adapter - 1.1-15 - &lt;br /&gt;
giflib - 4.1.6-r2 - &lt;br /&gt;
glib-2.0 - 2.16.6-r5palm3 - &lt;br /&gt;
glibcurl - 1.0.0-2 - &lt;br /&gt;
glibmm - 2.16.4-r1 - &lt;br /&gt;
globalization - 1.0-44 - &lt;br /&gt;
gloox - 1.0-18 - &lt;br /&gt;
gmflag - 1.0.0-1 - &lt;br /&gt;
gnutls - 2.10.4-r10.0 - &lt;br /&gt;
goodfork - 1.0.0-3 - &lt;br /&gt;
gsm610 - 1.0-1 - &lt;br /&gt;
gst-ffmpeg - 0.10.11-3 - &lt;br /&gt;
gst-plugins-bad - 0.10.18-3 - &lt;br /&gt;
gst-plugins-base - 0.10.29-11 - &lt;br /&gt;
gst-plugins-good - 0.10.22-20 - &lt;br /&gt;
gst-plugins-ugly - 0.10.16-2 - &lt;br /&gt;
gstreamer - 0.10.29-4 - &lt;br /&gt;
gzip - 1.3.5-r1 - &lt;br /&gt;
hidaccelerometer - 2.0.0-46 - &lt;br /&gt;
hidavrcp - 1.0.0-1.5.0.1 - &lt;br /&gt;
hidcompass - 2.0.0-r0 - &lt;br /&gt;
hidd - 1.0.1-71 - &lt;br /&gt;
hiddiag - 1.0.0-11 - &lt;br /&gt;
hidinputdev - 1.0.0-4 - &lt;br /&gt;
hidkeypad - 2.0.0-58 - &lt;br /&gt;
hidlib - 2.0.0-77.1 - &lt;br /&gt;
hidlight - 2.0.0-31 - &lt;br /&gt;
hidproximity - 2.0.0-32 - &lt;br /&gt;
hidtouchpanel - 5-223 - &lt;br /&gt;
hostapd - 0.6.10-31 - &lt;br /&gt;
hunspell - 1.3.2-1 - &lt;br /&gt;
imaccountvalidator - 1.0-8 - &lt;br /&gt;
image-extras-cust - 1.0-1 - &lt;br /&gt;
image-extras-cust-default - 1.0-1 - &lt;br /&gt;
imagethumbnail - 1.0-5 - &lt;br /&gt;
imlibpurpleservice - 1.0-36 - &lt;br /&gt;
imsfrtransport - 1.0.2-25.cf - &lt;br /&gt;
imyahootransport - 1.0.1-41.4.cf - &lt;br /&gt;
initscripts - 1.1-111.1 - &lt;br /&gt;
install-first - 1.0.2-18 - &lt;br /&gt;
integcheck - 1.0-16 - &lt;br /&gt;
ipkg - 0.99.163-r9 - &lt;br /&gt;
iproute2 - 2.6.29-2 - &lt;br /&gt;
iptables - 1.4.2-1 - &lt;br /&gt;
iptables-utils - 1.4.2-1 - &lt;br /&gt;
iputils - 20071127-4 - &lt;br /&gt;
iputils-arping - 20071127-4 - &lt;br /&gt;
jail - 1.0.3-72.4 - &lt;br /&gt;
jemalloc - 1.0-7 - &lt;br /&gt;
jpeg - 6b-r6 - &lt;br /&gt;
jpegdecodelib-omap34xx - 1.0.0-12 - &lt;br /&gt;
kernel - 2.6.24-63 - &lt;br /&gt;
kernel-dev - 2.6.24-63 - &lt;br /&gt;
kernel-image-2.6.24-palm-joplin-3430 - 2.6.24-63 - &lt;br /&gt;
kernel-module-ecb - 2.6.24-63 - &lt;br /&gt;
kernel-module-ifb - 2.6.24-63 - &lt;br /&gt;
kernel-module-nbd - 2.6.24-63 - &lt;br /&gt;
kernel-module-oprofile - 2.6.24-63 - &lt;br /&gt;
kernel-module-pcbc - 2.6.24-63 - &lt;br /&gt;
kernel-module-scsi-wait-scan - 2.6.24-63 - &lt;br /&gt;
kernel-modules - 2.6.24-63 - &lt;br /&gt;
keymanager - 1.0-48 - &lt;br /&gt;
killall - 22.2-r1 - &lt;br /&gt;
klog - 1.0-2 - &lt;br /&gt;
libasound - 1.0.24-3 - &lt;br /&gt;
libasound-module-ctl-pulse - 1.0.24-4 - &lt;br /&gt;
libasound-module-pcm-pulse - 1.0.24-4 - &lt;br /&gt;
libavcodec - 65daa94.1-r3palm2 - &lt;br /&gt;
libavdevice - 65daa94.1-r3palm2 - &lt;br /&gt;
libavfilter - 65daa94.1-r3palm2 - &lt;br /&gt;
libavformat - 65daa94.1-r3palm2 - &lt;br /&gt;
libavutil - 65daa94.1-r3palm2 - &lt;br /&gt;
libcommonservices - 258.14-10 - &lt;br /&gt;
libcompass - 1.0.0-r0 - &lt;br /&gt;
libcrypto - 0.9.8k-5 - &lt;br /&gt;
libcurl - 7.21.3-9 - &lt;br /&gt;
libdnssd - 258.14-10 - &lt;br /&gt;
libexif - 0.6.17-r1 - &lt;br /&gt;
libfaac - 1.24-r0 - &lt;br /&gt;
libgcrypt - 1.4.4-r0 - &lt;br /&gt;
libgpg-error - 1.4-r1 - &lt;br /&gt;
libgpod - 0.6.0-r0 - &lt;br /&gt;
libhelpers - 1.0-26 - &lt;br /&gt;
libhostap - 0.6.10-31 - &lt;br /&gt;
libicudata - 3.6-r4 - &lt;br /&gt;
libicui18n - 3.6-r4 - &lt;br /&gt;
libicuio - 3.6-r4 - &lt;br /&gt;
libicule - 3.6-r4 - &lt;br /&gt;
libiculx - 3.6-r4 - &lt;br /&gt;
libicutu - 3.6-r4 - &lt;br /&gt;
libicuuc - 3.6-r4 - &lt;br /&gt;
libid3tag - 0.15.0b-r2 - &lt;br /&gt;
libipkg - 0.99.163-r9 - &lt;br /&gt;
libltdl - 1.5.24-r1 - &lt;br /&gt;
libmemcpy - 1.1-11 - &lt;br /&gt;
libnapp - 1.0-101.3 - &lt;br /&gt;
libnetbridge - 1.2-2 - &lt;br /&gt;
libnrwindow - 1.0-3 - &lt;br /&gt;
libnssmdns - 258.14-10 - &lt;br /&gt;
libogg - 1.1.3-r1 - &lt;br /&gt;
liboil - 0.3.14-r0 - &lt;br /&gt;
libopenal - 1.11.753-2 - &lt;br /&gt;
libpalmsocket - 1.0-24 - &lt;br /&gt;
libpcap - 0.9.3-r2 - &lt;br /&gt;
libpdl - 1.1-78.1 - &lt;br /&gt;
libpng - 1.2.44-r1 - &lt;br /&gt;
libpng12 - 1.2.44-r1 - &lt;br /&gt;
libpulse - 0.9.22-19 - &lt;br /&gt;
libpulse-simple - 0.9.22-19 - &lt;br /&gt;
libpurple - 1.0-r25 - &lt;br /&gt;
librdx - 1.0.0-116 - &lt;br /&gt;
libremoteplugin - 1.0-10 - &lt;br /&gt;
libsamplerate0 - 0.1.7-1 - &lt;br /&gt;
libsdl - 1.2-115.4 - &lt;br /&gt;
libsdl-cinema - 1.0-21 - &lt;br /&gt;
libsdl-image - 1.2-3 - &lt;br /&gt;
libsdl-mixer - 1.2-9 - &lt;br /&gt;
libsdl-net - 1.2-1 - &lt;br /&gt;
libsdl-ttf - 1.2-1 - &lt;br /&gt;
libsigcpp-2.0 - 2.0.17-r0 - &lt;br /&gt;
libsndfile1 - 1.0.21-ignored - &lt;br /&gt;
libsoup - 2.4.1-r0 - &lt;br /&gt;
libspeex - 1.2rc1-r3 - &lt;br /&gt;
libsqlite - 3.6.20-r0 - &lt;br /&gt;
libssl - 0.9.8k-5 - &lt;br /&gt;
libswscale - 65daa94.1-r3palm2 - &lt;br /&gt;
libsysfs - 2.0.0-r0 - &lt;br /&gt;
libulockmgr - 2.7.2-r2 - &lt;br /&gt;
libupstart - 0.3.8-24 - &lt;br /&gt;
libvolume-id - 115.2-32 - &lt;br /&gt;
libvorbis - 1.2.0-r0 - &lt;br /&gt;
libwebosproxy - 1.0.0-4 - &lt;br /&gt;
libwps - 0.6.10-31 - &lt;br /&gt;
libxml2 - 2.7.2-r0palm3 - &lt;br /&gt;
libxslt - 1.1.17-r7palm3 - &lt;br /&gt;
logctld - 1.0.1-70 - &lt;br /&gt;
logd-conf - 1.0.0-5 - &lt;br /&gt;
luna-applauncher - 1.0-174 - &lt;br /&gt;
luna-downloadmgr - 1.0-75.bw.1 - &lt;br /&gt;
luna-fonts - 1.0-20 - &lt;br /&gt;
luna-fonts-cjkv - 1.0-2 - &lt;br /&gt;
luna-fonts-prelude - 1.0-3 - &lt;br /&gt;
luna-init - 1.0-66.cf.3 - &lt;br /&gt;
luna-keymap-headers - 1.0-14 - &lt;br /&gt;
luna-keymaps - 1.0-70 - &lt;br /&gt;
luna-media-shim - 1.0-27 - &lt;br /&gt;
luna-network - 1.0-19 - &lt;br /&gt;
luna-prefs - 1.0-60.1 - &lt;br /&gt;
luna-service2 - 2.0.0-131.2 - &lt;br /&gt;
luna-sysmgr - 1.0-861.cf.74 - &lt;br /&gt;
luna-sysmgr-ipc - 1.0-25 - &lt;br /&gt;
luna-sysservice - 1.0-117.bw - &lt;br /&gt;
luna-systemui - 1.0-231.27 - &lt;br /&gt;
luna-universalsearchmgr - 1.0-29.cf.7 - &lt;br /&gt;
luna-webkit - 1.5-221.56 - &lt;br /&gt;
lvm2 - 2.02.44-r2 - &lt;br /&gt;
lvm2-config - 2.02.44-r2 - &lt;br /&gt;
lvm2-static - 2.02.44-r2 - &lt;br /&gt;
makedevs - 1.0.0-r2 - &lt;br /&gt;
marvell8686microap - 1.0.0-9 - &lt;br /&gt;
masflib - 1.0-10 - &lt;br /&gt;
mdnsd - 258.14-10 - &lt;br /&gt;
mediaadpcmdecodelib - 1.0.0-1 - &lt;br /&gt;
mediacapture - 1.0-11 - &lt;br /&gt;
mediaextension - 1.0-33 - &lt;br /&gt;
mediametaserver - 1.0.0-6 - &lt;br /&gt;
mediaserver - 1.2.0-428.52 - &lt;br /&gt;
mediastream - 1.0-27 - &lt;br /&gt;
mediasyncexporter - 1.0.0-13 - &lt;br /&gt;
memchute - 1.0.0-23 - &lt;br /&gt;
messaging.library - 1.0-1.3 - &lt;br /&gt;
metascene.audiorecorder - 1.0-11.2 - &lt;br /&gt;
metascene.base - 1.0-9 - &lt;br /&gt;
metascene.photos.base - 1.0-6.4 - &lt;br /&gt;
metascene.photos.crop - 1.0-3 - &lt;br /&gt;
metascene.photos.full - 1.0-15.1 - &lt;br /&gt;
metascene.photos.thumbs - 1.0-27.2 - &lt;br /&gt;
metascene.slideshow - 1.0-14.1 - &lt;br /&gt;
metascene.videos.base - 1.0-105.7 - &lt;br /&gt;
metascene.videos.share - 1.0-67 - &lt;br /&gt;
migrator - 1.0-10 - &lt;br /&gt;
minicore2 - 1.0.1-29 - &lt;br /&gt;
minidhcpd - 1.0.2-38 - &lt;br /&gt;
mjson - 1.0-15 - &lt;br /&gt;
mkbootfs-tools - 1.0-11 - &lt;br /&gt;
mkimage - 1.1.2-r1 - &lt;br /&gt;
mm-isp - 23.17M-r4 - &lt;br /&gt;
mmscodec - 1.0-32 - &lt;br /&gt;
mmsservice - 1.0-49 - &lt;br /&gt;
mobilehotspotd - 1.0.2-52.2.0.3.4 - &lt;br /&gt;
module-init-tools - 3.2.2-r3 - &lt;br /&gt;
module-init-tools-depmod - 3.2.2-r3 - &lt;br /&gt;
modutils-initscripts - 1.0-r2 - &lt;br /&gt;
mojo - 1.0-383 - &lt;br /&gt;
mojo.core - 1.0-33 - &lt;br /&gt;
mojo2 - 1.0-112 - &lt;br /&gt;
mojodb - 1.9-52.16 - &lt;br /&gt;
mojodbshim - 1.0-3 - &lt;br /&gt;
mojoloader - 1.0-34 - &lt;br /&gt;
mojolocation - 1.0-54.1 - &lt;br /&gt;
mojomail-common - 1.0-91 - &lt;br /&gt;
mojomail-eas - 1.1-109.5 - &lt;br /&gt;
mojomail-imap - 1.0-83.5 - &lt;br /&gt;
mojomail-pop - 1.0-50.4 - &lt;br /&gt;
mojomail-smtp - 1.0-40.1 - &lt;br /&gt;
mojoservice.base - 1.0-61 - &lt;br /&gt;
mojoservice.transport.base - 1.0-39 - &lt;br /&gt;
mojoservice.transport.sync - 1.0-77 - &lt;br /&gt;
mojoservicelauncher - 1.0.1-57 - &lt;br /&gt;
mountcfs - 1.0-14 - &lt;br /&gt;
mountcrypt - 1.1-18 - &lt;br /&gt;
mtools - 4.0.10-r0 - &lt;br /&gt;
natool - 1.0.0-11 - &lt;br /&gt;
ncurses - 5.4-r9 - &lt;br /&gt;
netbase - 4.22-6 - &lt;br /&gt;
network.alerts - 1.0-7.2 - &lt;br /&gt;
node-ls2 - 1.0-14 - &lt;br /&gt;
node-pmloglib - 1.0-3 - &lt;br /&gt;
node-webos - 1.0-3 - &lt;br /&gt;
nodejs - v0.2.3-17.5 - &lt;br /&gt;
notes - 1.0-15 - &lt;br /&gt;
novacom - 1.0-17 - &lt;br /&gt;
novacomd - 1.0-111 - &lt;br /&gt;
npapi-headers - 2.0-6 - &lt;br /&gt;
npapiinterfacelib - 1.0.0-45 - &lt;br /&gt;
ntpdate - 4.2.2p3-r1 - &lt;br /&gt;
omadm - 1.0.1-149 - &lt;br /&gt;
omxclientlib-omap34xx - 1.0.0-15 - &lt;br /&gt;
ondevicedemod - 1.0.9-97 - &lt;br /&gt;
ondevlogger - 1.0.0-5 - &lt;br /&gt;
opencore-amr - 0.1.2-1 - &lt;br /&gt;
opengles - 1.0.0-1 - &lt;br /&gt;
opengles-omap3 - 1.0.0-1 - &lt;br /&gt;
openssl - 0.9.8k-5 - &lt;br /&gt;
ossinfo - 1.0.0-22 - &lt;br /&gt;
ota-scripts - 1.3-23 - &lt;br /&gt;
palmadpcmdecoder - 1.0.0-7 - &lt;br /&gt;
palmaudiodecoder-omap34xx - 1.0.0-82 - &lt;br /&gt;
palmaudioencoder-omap34xx - 1.0.0-32 - &lt;br /&gt;
palmbuildinfo - 1.0.4-160 - &lt;br /&gt;
palmcustomizationinfo-wr - 1.0-160 - &lt;br /&gt;
palmgstskype - 1.0.0-17 - &lt;br /&gt;
palmjpgencsink-omap34xx - 1.0.0-59 - &lt;br /&gt;
palmmp4mux - 1.0.0-86 - &lt;br /&gt;
palmqcelpdemux - 1.0.0-19 - &lt;br /&gt;
palmvideodecoder-omap34xx - 1.0.0-67 - &lt;br /&gt;
palmvideoencoder-omap34xx - 1.0.0-47 - &lt;br /&gt;
palmvideosink-omap34xx - 1.0.0-85 - &lt;br /&gt;
palmvoicecodec - 1.0-13 - &lt;br /&gt;
palmvoicedecoder - 1.0-23 - &lt;br /&gt;
palmvoiceencoder - 1.0-17 - &lt;br /&gt;
parted - 1.8.8-r3 - &lt;br /&gt;
passthrud - 1.0.9-72 - &lt;br /&gt;
pbnjson - 1.0.1-38 - &lt;br /&gt;
pdfadapter - 1.0.0-46 - &lt;br /&gt;
photos - 1.0-304.5 - &lt;br /&gt;
piranha - 1.2-107.1 - &lt;br /&gt;
piranha-gles - 1.2-104 - &lt;br /&gt;
pma6updater - 1.0.0-9 - &lt;br /&gt;
pmbtcontacts - 1.0.0-2.1.0.11 - &lt;br /&gt;
pmbtengine - 1.0.0-2.1.0.50 - &lt;br /&gt;
pmbtos - 1.0.0-2.1.0.7 - &lt;br /&gt;
pmbtstack - 1.1.4-2.1.0.32 - &lt;br /&gt;
pmbtstartup - 1.0.2-2.1.0.7 - &lt;br /&gt;
pmcarrierdb - 1.0.0-65 - &lt;br /&gt;
pmcasper - 1.0.0-21 - &lt;br /&gt;
pmcertificatemgr - 1.0.0-21 - &lt;br /&gt;
pmcertificatemgrservice - 1.0.0-23 - &lt;br /&gt;
pmcertstore - 1.0.5-25 - &lt;br /&gt;
pmeloop - 1.0.0-3 - &lt;br /&gt;
pmklogd - 1.0.0-6 - &lt;br /&gt;
pmlegacyhcilinklayer - 1.0.0-3 - &lt;br /&gt;
pmlogctl - 1.0.0-7 - &lt;br /&gt;
pmlogdaemon - 1.0.2-95.1 - &lt;br /&gt;
pmloglib - 1.0.0-15 - &lt;br /&gt;
pmmedia - 1.0.0-1 - &lt;br /&gt;
pmmedia-omap36xx - 1.0.0-1 - &lt;br /&gt;
pmmodemefslogger - 1.0.1-36 - &lt;br /&gt;
pmmodeminfo - 1.0.0-47 - &lt;br /&gt;
pmmodempower - 1.0-9 - &lt;br /&gt;
pmmodemqxdmlogger - 1.0.0-10 - &lt;br /&gt;
pmmodemupdater - 1.0.0-164 - &lt;br /&gt;
pmmultitouchlib - 2-45 - &lt;br /&gt;
pmnetconfiglib - 1.0.1-17 - &lt;br /&gt;
pmnetconfigmanager - 1.0.6-158.7 - &lt;br /&gt;
pmnetworking - 1.0.0-0 - &lt;br /&gt;
pmnetworking-castle - 1.0.0-0 - &lt;br /&gt;
pmstatemachineengine - 1.0.1-7 - &lt;br /&gt;
pmtelephony - 1.0.0-1 - &lt;br /&gt;
pmtelephony-msm6xxx - 1.0.0-1 - &lt;br /&gt;
pmtpupdater - 3-37 - &lt;br /&gt;
pmupdater - 1.0.2-148 - &lt;br /&gt;
pmvoicecommand - 1.4-5.39 - &lt;br /&gt;
pmvoicecommand-dede - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-engb - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-enus - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-eses - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-esmx - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-frca - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-frfr - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-itit - 1.0-5.39 - &lt;br /&gt;
pmvpnacoal - 1.0.0-35 - &lt;br /&gt;
pmvpndaemon - 1.0.1-49 - &lt;br /&gt;
pmwanpppplugin - 1.0.0-22 - &lt;br /&gt;
pmwifidriver - 1.0.1-73.2.0.3.2 - &lt;br /&gt;
pmwifiservice - 1.0.1-179.3 - &lt;br /&gt;
pmwirelesssystemframework - 1.0.0-53 - &lt;br /&gt;
pmwsfdaemon - 1.0.0-14 - &lt;br /&gt;
pmwsfwanblade - 1.0.3-184.3.1 - &lt;br /&gt;
popt - 1.7-r4 - &lt;br /&gt;
popvol - 1.0.0-7 - &lt;br /&gt;
powerd - 1.0.0-306.18 - &lt;br /&gt;
ppp - 2.4.3-r3 - &lt;br /&gt;
procps - 3.2.7-r8 - &lt;br /&gt;
psmisc - 22.2-r1 - &lt;br /&gt;
pstree - 22.2-r1 - &lt;br /&gt;
ptmalloc3 - 1.0-7 - &lt;br /&gt;
pubsubservice - 1.0-91 - &lt;br /&gt;
pulseaudio - 0.9.22-19 - &lt;br /&gt;
pulseaudio-lib-alsa-util - 0.9.22-19 - &lt;br /&gt;
pulseaudio-lib-protocol-native - 0.9.22-19 - &lt;br /&gt;
pulseaudio-lib-protocol-simple - 0.9.22-19 - &lt;br /&gt;
pulseaudio-misc - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-alsa-card - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-alsa-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-alsa-source - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-card-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-combine - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-default-device-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-detect - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-device-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-native-protocol-fd - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-native-protocol-unix - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-null-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-null-source - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-palm-a2dp-provider-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-palm-policy - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-remap-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-rescue-streams - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-simple-protocol-unix - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-stream-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-suspend-on-idle - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-volume-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-server - 0.9.22-19 - &lt;br /&gt;
pvrtc - 1.0-6 - &lt;br /&gt;
qmi2 - 1.0.0-6 - &lt;br /&gt;
qmuxd - 1.0.0-4 - &lt;br /&gt;
qt4 - 4.6.1.1-47.4 - &lt;br /&gt;
rdxd - 1.0.3-118 - &lt;br /&gt;
readline - 4.3-r4 - &lt;br /&gt;
recovery-utilities - 1.0.0-10 - &lt;br /&gt;
redbend - 2.1.1.13-2 - &lt;br /&gt;
remote-adapter - 1.1-39 - &lt;br /&gt;
remote-adapter-ipc - 1.0-17 - &lt;br /&gt;
resizefat - 1.0.0-4 - &lt;br /&gt;
rolegen - 1.0-12 - &lt;br /&gt;
sersend - 1.0.0-6 - &lt;br /&gt;
setcharge - 0.1-7 - &lt;br /&gt;
setserial - 2.17-r1 - &lt;br /&gt;
sfrwisprd - 1.0.0-10 - &lt;br /&gt;
shutdownscripts - 1.0.0-30 - &lt;br /&gt;
skypekit - 1.5-8 - &lt;br /&gt;
skypem - 1.3-27.4c - &lt;br /&gt;
skypevalidator - 1.1-11.2 - &lt;br /&gt;
smartkey - 2.0.2-57 - &lt;br /&gt;
smsservice - 1.0-30 - &lt;br /&gt;
sp-smaps - 0.2.2-r0palm3 - &lt;br /&gt;
sqlite3 - 3.6.20-r0 - &lt;br /&gt;
sqlite3-palm-extension - 1.0-21 - &lt;br /&gt;
storaged - 1.0.3-119 - &lt;br /&gt;
strace - 4.5.19-r0 - &lt;br /&gt;
stservice - 1.0-36 - &lt;br /&gt;
sweatshop-wr-roadrunner - 1.0-42 - &lt;br /&gt;
sync.ui - 1.0-8.2 - &lt;br /&gt;
sysfsutils - 2.0.0-r0 - &lt;br /&gt;
sysstat - 9.0.1-r1 - &lt;br /&gt;
systemsoundsloader - 1.0.0-27.1 - &lt;br /&gt;
sysvinit - 2.86-40 - &lt;br /&gt;
sysvinit-pidof - 2.86-40 - &lt;br /&gt;
tap2shared - 1.0.1-47 - &lt;br /&gt;
tar - 1.17-r1 - &lt;br /&gt;
tasks - 1.0-18 - &lt;br /&gt;
tcpdump - 3.9.4-r3 - &lt;br /&gt;
tellbootie - 1.0-3 - &lt;br /&gt;
tidspbridge-extra - 23.17M-r5 - &lt;br /&gt;
tidspbridge-lib - 23.17M-r1 - &lt;br /&gt;
tidspbridge-module - 23.17M-r8 - &lt;br /&gt;
tidspbridge-mpusamples - 23.17M-r0 - &lt;br /&gt;
til - 1.0.0-138.42 - &lt;br /&gt;
timezone - 2010n-2 - &lt;br /&gt;
tiopenmax - 23.17M-r2 - &lt;br /&gt;
tiopenmax-aacdec - 23.17M-r3 - &lt;br /&gt;
tiopenmax-aacenc - 23.17M-r2 - &lt;br /&gt;
tiopenmax-audiomanager - 23.17M-r0 - &lt;br /&gt;
tiopenmax-camera - 23.17M-r2 - &lt;br /&gt;
tiopenmax-clock - 23.17M-r0 - &lt;br /&gt;
tiopenmax-common - 23.17M-r0 - &lt;br /&gt;
tiopenmax-core - 23.17M-r2 - &lt;br /&gt;
tiopenmax-inst2 - 23.17M-r0 - &lt;br /&gt;
tiopenmax-jpegdec - 23.17M-r1 - &lt;br /&gt;
tiopenmax-jpegenc - 23.17M-r2 - &lt;br /&gt;
tiopenmax-lcml - 23.17M-r3 - &lt;br /&gt;
tiopenmax-mp3 - 23.17M-r1 - &lt;br /&gt;
tiopenmax-nbamrdec - 23.17M-r1 - &lt;br /&gt;
tiopenmax-pcmdec - 23.17M-r1 - &lt;br /&gt;
tiopenmax-policymanager - 23.17M-r2 - &lt;br /&gt;
tiopenmax-postproc - 23.17M-r2 - &lt;br /&gt;
tiopenmax-prepostproc - 23.17M-r1 - &lt;br /&gt;
tiopenmax-ram - 23.17M-r0 - &lt;br /&gt;
tiopenmax-resourcemanager - 23.17M-r2 - &lt;br /&gt;
tiopenmax-rmproxy - 23.17M-r2 - &lt;br /&gt;
tiopenmax-videodec - 23.17M-r4 - &lt;br /&gt;
tiopenmax-videoenc - 23.17M-r5 - &lt;br /&gt;
tisgxgfx-roadrunner - L23.17M3-41 - &lt;br /&gt;
tisocketnode-control-task - 23.17M-r0 - &lt;br /&gt;
tisocketnode-conversions - 23.17M-r1 - &lt;br /&gt;
tisocketnode-dfgm - 23.17M-r0 - &lt;br /&gt;
tisocketnode-h264dec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-ipp - 23.17M-r1 - &lt;br /&gt;
tisocketnode-jpegdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-jpegenc - 23.17M-r1 - &lt;br /&gt;
tisocketnode-mp3 - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4aacdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4aacenc - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4dec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4enc - 23.17M-r0 - &lt;br /&gt;
tisocketnode-nbamrdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-pcmdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-ringio - 23.17M-r1 - &lt;br /&gt;
tisocketnode-usn - 23.17M-r1 - &lt;br /&gt;
tisocketnode-vpp - 23.17M-r0 - &lt;br /&gt;
touchpanel-measure - 1.0-3 - &lt;br /&gt;
transcodeserver - 1.0.0-54 - &lt;br /&gt;
trenchcoat - 2.0-132.4 - &lt;br /&gt;
udev - 115.2-32 - &lt;br /&gt;
underscore - 1.0-7 - &lt;br /&gt;
unittest - 1.0-17 - &lt;br /&gt;
update-modules - 1.0-r4 - &lt;br /&gt;
update-rc.d - 0.7-r0 - &lt;br /&gt;
updatedaemon - 1.0.2-212 - &lt;br /&gt;
updatefsinfo - 1.5-6 - &lt;br /&gt;
uploadd - 1.0.1-40 - &lt;br /&gt;
upstart - 0.3.8-24 - &lt;br /&gt;
upstart-initscripts - 1.0-118 - &lt;br /&gt;
upstart-sysvcompat - 0.3.8-24 - &lt;br /&gt;
uriparser - 0.7.4-r0 - &lt;br /&gt;
usbmon - 1.0-5 - &lt;br /&gt;
usbnet - 1.0.0-1 - &lt;br /&gt;
usbsniffd - 1.0.0-1 - &lt;br /&gt;
util-linux-ng-blockdev - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-ionice - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-losetup - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-mkswap - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-swaponoff - 2.14.2-r5 - &lt;br /&gt;
v8 - 1.1-2.5.9.22-2 - &lt;br /&gt;
vibetonz - 1.0.0-4 - &lt;br /&gt;
vpnacagent - 1.0.0-39 - &lt;br /&gt;
vpnc - 0.5.3-4 - &lt;br /&gt;
vpncagent - 1.0.0-37 - &lt;br /&gt;
watchdogd - 1.0.0-3 - &lt;br /&gt;
webview - 2.0-23.11 - &lt;br /&gt;
wireless-tools - 29-r2 - &lt;br /&gt;
wirelesswhitebox-tiltest - 1.0-9 - &lt;br /&gt;
wpasupplicant - 0.6.10-31 - &lt;br /&gt;
xt9 - 6.2.3-16 - &lt;br /&gt;
xz-embedded - 1.0-1 - &lt;br /&gt;
yajl - 1.0.7-3 - &lt;br /&gt;
zeroconfigd - 1.0.1-15 - &lt;br /&gt;
zlib - 1.2.3-r2 -&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_list&amp;diff=21589</id>
		<title>Ipkg list</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_list&amp;diff=21589"/>
		<updated>2012-02-06T22:24:45Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: Created page with &amp;quot;This is a list of all pagkages found through an `ipkg list` on a Pre2 running webOS 2.2.4  accounts.ui - 1.0-42.5 -  acct - 6.3.99+6.4pre1-r0 -  activitymanager - 1.5-94.3 -  add...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of all pagkages found through an `ipkg list` on a Pre2 running webOS 2.2.4&lt;br /&gt;
&lt;br /&gt;
accounts.ui - 1.0-42.5 - &lt;br /&gt;
acct - 6.3.99+6.4pre1-r0 - &lt;br /&gt;
activitymanager - 1.5-94.3 - &lt;br /&gt;
addressing - 1.0-34.1 - &lt;br /&gt;
alsa-conf-base - 1.0.24-3 - &lt;br /&gt;
alsa-lib - 1.0.24-3 - &lt;br /&gt;
alsa-plugins - 1.0.24-4 - &lt;br /&gt;
alsa-utils - 1.0.24-1 - &lt;br /&gt;
alsa-utils-alsactl - 1.0.24-1 - &lt;br /&gt;
alsa-utils-amixer - 1.0.24-1 - &lt;br /&gt;
alsa-utils-aplay - 1.0.24-1 - &lt;br /&gt;
amrnbcodec - 1.0-6 - &lt;br /&gt;
app-ipkgs - 1.0.6-32.99 - &lt;br /&gt;
applicationinstallerutility - 1.0-15 - &lt;br /&gt;
armtoolchain - 4.3-234.11 - &lt;br /&gt;
armtoolchain-gconv - 4.3-234.11 - &lt;br /&gt;
atomicparsley - 0.9.0-5 - &lt;br /&gt;
audiod - 1.1-368.53 - &lt;br /&gt;
audiod-config - 1.0.2-92.17 - &lt;br /&gt;
audiod-config-eu - 1.0-13 - &lt;br /&gt;
base-files - 3.0.14.6-40 - &lt;br /&gt;
base-passwd - 3.5.9-r7palm1 - &lt;br /&gt;
baseimage - 23.17M-r0 - &lt;br /&gt;
binutils - 2.17.50.0.8.1-2 - &lt;br /&gt;
boost - 1.39.0-r0palm2 - &lt;br /&gt;
boost-filesystem - 1.39.0-r0palm2 - &lt;br /&gt;
boost-program-options - 1.39.0-r0palm2 - &lt;br /&gt;
boost-regex - 1.39.0-r0palm2 - &lt;br /&gt;
boost-system - 1.39.0-r0palm2 - &lt;br /&gt;
bootchart - 0.9-r3 - &lt;br /&gt;
bootie-images - 1.0.3-25 - &lt;br /&gt;
bootloader - 1.0.0-243.2.28 - &lt;br /&gt;
brctl - 1.2-2 - &lt;br /&gt;
browser-adapter - 2.0.0-131.8 - &lt;br /&gt;
browserserver - 2.0.0-237.13 - &lt;br /&gt;
bsdiff - 4.3-2 - &lt;br /&gt;
bspatch-xz - 1.0.0-1 - &lt;br /&gt;
busybox - 1.17.3-12 - &lt;br /&gt;
bzip2 - 1.0.5-r3 - &lt;br /&gt;
c-ares - 1.7.4-r1 - &lt;br /&gt;
caja - 1.0-2 - &lt;br /&gt;
calendar - 1.0-38 - &lt;br /&gt;
calendar.dta - 1.0-17 - &lt;br /&gt;
calendar.io - 1.0-22.1 - &lt;br /&gt;
camd-omap36xx - 1.0.0-13 - &lt;br /&gt;
camsrc-omap36xx - 1.0.0-8 - &lt;br /&gt;
castletpfw - 1.0.2-15 - &lt;br /&gt;
cifs - 3.0.23c-1 - &lt;br /&gt;
ciscoanyconnectclient - 1.0.1-28 - &lt;br /&gt;
cjson - 1.0-27 - &lt;br /&gt;
com.palm.app.accounts - 1.0-13.2 - &lt;br /&gt;
com.palm.app.agendaview - 1.0-5.cf.1 - &lt;br /&gt;
com.palm.app.backup - 1.0-69.5 - &lt;br /&gt;
com.palm.app.bluetooth - 1.0-2.1.0.15 - &lt;br /&gt;
com.palm.app.browser - 2.0.0-147 - &lt;br /&gt;
com.palm.app.calculator - 1.0-39.3 - &lt;br /&gt;
com.palm.app.calendar - 1.0-277.3 - &lt;br /&gt;
com.palm.app.camera - 1.0-175.6 - &lt;br /&gt;
com.palm.app.certificate - 1.0-26 - &lt;br /&gt;
com.palm.app.clock - 1.0-46.6 - &lt;br /&gt;
com.palm.app.collectlogs - 1.0-45.cf.4 - &lt;br /&gt;
com.palm.app.contacts - 1.0-241 - &lt;br /&gt;
com.palm.app.crotest - 1.0-35 - &lt;br /&gt;
com.palm.app.dataimport - 1.0-67 - &lt;br /&gt;
com.palm.app.dateandtime - 1.0-57.3 - &lt;br /&gt;
com.palm.app.deviceinfo - 1.0-93.4 - &lt;br /&gt;
com.palm.app.devmodeswitcher - 1.0-9.1 - &lt;br /&gt;
com.palm.app.email - 1.0-461 - &lt;br /&gt;
com.palm.app.exhibitionpreferences - 1.0-3.5 - &lt;br /&gt;
com.palm.app.firstuse - 1.0-226.15.1 - &lt;br /&gt;
com.palm.app.help - 1.0-51.6 - &lt;br /&gt;
com.palm.app.languagepicker - 1.0-54.2 - &lt;br /&gt;
com.palm.app.location - 1.0-23.2 - &lt;br /&gt;
com.palm.app.maps-dbkinds - 1.0-5 - &lt;br /&gt;
com.palm.app.messaging - 1.0-253.cf.17.1 - &lt;br /&gt;
com.palm.app.mobilehotspot - 1.0-1.1.12 - &lt;br /&gt;
com.palm.app.monad - 1.0-4 - &lt;br /&gt;
com.palm.app.musicplayer - 1.0-218 - &lt;br /&gt;
com.palm.app.network - 1.0-9.3 - &lt;br /&gt;
com.palm.app.notes - 1.0.1-75.3 - &lt;br /&gt;
com.palm.app.oddcore - 1.0-22 - &lt;br /&gt;
com.palm.app.ondevlog - 1.0-7 - &lt;br /&gt;
com.palm.app.pdfviewer - 1.0-77.7 - &lt;br /&gt;
com.palm.app.phone - 1.1-62.38 - &lt;br /&gt;
com.palm.app.phoneaccounts - 1.0-5.1 - &lt;br /&gt;
com.palm.app.phonediag - 1.0-24 - &lt;br /&gt;
com.palm.app.photos - 1.0-100179.5 - &lt;br /&gt;
com.palm.app.screenlock - 1.0-71.7 - &lt;br /&gt;
com.palm.app.searchpreferences - 1.0-17.3 - &lt;br /&gt;
com.palm.app.skype - 1.1-8.3 - &lt;br /&gt;
com.palm.app.soundsandalerts - 1.0-39.3 - &lt;br /&gt;
com.palm.app.stk - 1.0-65.4 - &lt;br /&gt;
com.palm.app.streamingmusicplayer - 1.0-46.3 - &lt;br /&gt;
com.palm.app.swmanager - 1.0-25 - &lt;br /&gt;
com.palm.app.tasks - 1.0.2-92.9 - &lt;br /&gt;
com.palm.app.textassist - 1.0-19.3 - &lt;br /&gt;
com.palm.app.timedetails - 1.0-1 - &lt;br /&gt;
com.palm.app.updates - 1.0-101.3 - &lt;br /&gt;
com.palm.app.usbpassthrough - 1.0-34.2.cf - &lt;br /&gt;
com.palm.app.videoplayer - 1.0-149.4 - &lt;br /&gt;
com.palm.app.vpn - 1.0-45.3 - &lt;br /&gt;
com.palm.app.wifi - 1.0-101.3 - &lt;br /&gt;
com.palm.app.wlmcustomlogin - 1.0-7 - &lt;br /&gt;
com.palm.app.youtube - 1.0-46.2 - &lt;br /&gt;
com.palm.crotest - 1.0.1-26 - &lt;br /&gt;
com.palm.messaging.chatthreader - 1.0-45 - &lt;br /&gt;
com.palm.messaging.smstest - 1.0-5 - &lt;br /&gt;
com.palm.service.accounts - 1.0-54.4 - &lt;br /&gt;
com.palm.service.appcatalog - 1.0-20 - &lt;br /&gt;
com.palm.service.backup - 1.0-30.7 - &lt;br /&gt;
com.palm.service.bluetooth.spp - 1.0-14 - &lt;br /&gt;
com.palm.service.calendar.facebook - 1.0-16.1 - &lt;br /&gt;
com.palm.service.calendar.google - 1.0-50.5 - &lt;br /&gt;
com.palm.service.calendar.reminders - 1.0-26 - &lt;br /&gt;
com.palm.service.calendar.yahoo - 1.0-32.4 - &lt;br /&gt;
com.palm.service.collectlogs - 1.0-5 - &lt;br /&gt;
com.palm.service.contacts.base - 1.0-25 - &lt;br /&gt;
com.palm.service.contacts.facebook - 1.0-57.3 - &lt;br /&gt;
com.palm.service.contacts.google - 1.1-41.2 - &lt;br /&gt;
com.palm.service.contacts.linkedin - 1.0-54.3 - &lt;br /&gt;
com.palm.service.contacts.linker - 1.0-70.1 - &lt;br /&gt;
com.palm.service.contacts.sim - 1.0-24.1 - &lt;br /&gt;
com.palm.service.contacts.yahoo - 1.0-38.2 - &lt;br /&gt;
com.palm.service.customization - 1.0-16.6 - &lt;br /&gt;
com.palm.service.datatransfer - 1.0-26 - &lt;br /&gt;
com.palm.service.deviceprofile - 1.0-9 - &lt;br /&gt;
com.palm.service.dwipe - 1.0-7 - &lt;br /&gt;
com.palm.service.locale - 1.0-1 - &lt;br /&gt;
com.palm.service.mediabroadcast - 1.0-12 - &lt;br /&gt;
com.palm.service.mediacache - 1.0-15 - &lt;br /&gt;
com.palm.service.migration - 1.0-38.2 - &lt;br /&gt;
com.palm.service.migrationscript - 1.0-2 - &lt;br /&gt;
com.palm.service.palmprofile - 1.0-29.3 - &lt;br /&gt;
com.palm.service.photos.facebook - 1.0-8 - &lt;br /&gt;
com.palm.service.photos.photobucket - 1.0-11 - &lt;br /&gt;
com.palm.service.videos.facebook - 1.0-10 - &lt;br /&gt;
com.palm.service.videos.youtube - 1.0-12 - &lt;br /&gt;
com.palm.sfrvvm - 1.0.1-16 - &lt;br /&gt;
com.palm.synergy.templates.builtins - 1.0-30.2 - &lt;br /&gt;
com.palm.yahoo.authservice - 1.0.1-16.2 - &lt;br /&gt;
configurator - 1.2-36 - &lt;br /&gt;
contacts.base - 1.0-111 - &lt;br /&gt;
contacts.plugin.messaging - 1.0-12 - &lt;br /&gt;
contacts.plugin.phone - 1.0-8 - &lt;br /&gt;
contacts.plugin.pmvoicecommand - 1.0-2 - &lt;br /&gt;
contacts.plugin.smartkey - 1.0-2 - &lt;br /&gt;
contacts.ui - 1.0-45 - &lt;br /&gt;
contextupload - 1.0-24 - &lt;br /&gt;
cplite - 1.2-19 - &lt;br /&gt;
cpushareholder - 1.0-11 - &lt;br /&gt;
crotestcastleplus-images - 1.0-2 - &lt;br /&gt;
cryptofs - 0.6.0-13 - &lt;br /&gt;
cryptsetup - 1.0.6-r2 - &lt;br /&gt;
curl - 7.21.3-9 - &lt;br /&gt;
datamigration - 1.0-20 - &lt;br /&gt;
db - 4.8.26-r7 - &lt;br /&gt;
deletemanager - 1.0.1-8 - &lt;br /&gt;
dhcp-client - 3.0.2-r5palm2 - &lt;br /&gt;
dns-sd - 258.14-10 - &lt;br /&gt;
dnsmasq - 2.55-7 - &lt;br /&gt;
docadapterbase - 1.0.0-16 - &lt;br /&gt;
documentserver - 1.0.2-97 - &lt;br /&gt;
dosfstools - 2.11-r1palm1 - &lt;br /&gt;
downloadupdate - 1.0.1-70 - &lt;br /&gt;
dspmon-omap34xx - 1.0.0-9 - &lt;br /&gt;
e2fsprogs - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-badblocks - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-blkid - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-e2fsck - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-fsck - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-libs - 1.41.4-r0 - &lt;br /&gt;
e2fsprogs-mke2fs - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-tune2fs - 1.41.4.2-3 - &lt;br /&gt;
e2fsprogs-uuidgen - 1.41.4.2-3 - &lt;br /&gt;
eglsubdrv - 1.0-57.1 - &lt;br /&gt;
email-adapter - 1.0.0-4.2 - &lt;br /&gt;
enyo - 1.0-102.1 - &lt;br /&gt;
eventreporter - 1.1-10 - &lt;br /&gt;
exmap-console - 1.0.0-6 - &lt;br /&gt;
expat - 1.95.8-r1 - &lt;br /&gt;
extractfs - 1.0.4-66 - &lt;br /&gt;
faac - 1.24-r0 - &lt;br /&gt;
facebook - 1.0-16 - &lt;br /&gt;
fbdraw - 1.0.0-6 - &lt;br /&gt;
fbprogress - 1.5-13 - &lt;br /&gt;
fbset - 2.1-r2 - &lt;br /&gt;
ffmpeg - 65daa94.1-r3palm2 - &lt;br /&gt;
filecache - 1.7-45.4 - &lt;br /&gt;
filenotifyd - 1.0.6-49.2 - &lt;br /&gt;
filenotifyd-triton - 1.0.10-83.5 - &lt;br /&gt;
flash - 1.0-90.1 - &lt;br /&gt;
flash-mini-adapter - 1.0.2-18 - &lt;br /&gt;
flashplugin - 10.3.185-46.1 - &lt;br /&gt;
fontconfig - 2.6.0-r1palm4 - &lt;br /&gt;
fontconfig-utils - 2.6.0-r1palm4 - &lt;br /&gt;
foundations.base - 1.0-104 - &lt;br /&gt;
foundations.crypto - 1.0-8 - &lt;br /&gt;
foundations.io - 1.0-16 - &lt;br /&gt;
foundations.json - 1.0-13 - &lt;br /&gt;
foundations.mojo - 1.0-13 - &lt;br /&gt;
foundations.xml - 1.0-7 - &lt;br /&gt;
freetype - 2.3.12-r1 - &lt;br /&gt;
fuse - 2.7.2-r2 - &lt;br /&gt;
fuse-utils - 2.7.2-r2 - &lt;br /&gt;
fuser - 22.2-r1 - &lt;br /&gt;
gdbm - 1.8.3-r3 - &lt;br /&gt;
geolocation-adapter - 1.1-15 - &lt;br /&gt;
giflib - 4.1.6-r2 - &lt;br /&gt;
glib-2.0 - 2.16.6-r5palm3 - &lt;br /&gt;
glibcurl - 1.0.0-2 - &lt;br /&gt;
glibmm - 2.16.4-r1 - &lt;br /&gt;
globalization - 1.0-44 - &lt;br /&gt;
gloox - 1.0-18 - &lt;br /&gt;
gmflag - 1.0.0-1 - &lt;br /&gt;
gnutls - 2.10.4-r10.0 - &lt;br /&gt;
goodfork - 1.0.0-3 - &lt;br /&gt;
gsm610 - 1.0-1 - &lt;br /&gt;
gst-ffmpeg - 0.10.11-3 - &lt;br /&gt;
gst-plugins-bad - 0.10.18-3 - &lt;br /&gt;
gst-plugins-base - 0.10.29-11 - &lt;br /&gt;
gst-plugins-good - 0.10.22-20 - &lt;br /&gt;
gst-plugins-ugly - 0.10.16-2 - &lt;br /&gt;
gstreamer - 0.10.29-4 - &lt;br /&gt;
gzip - 1.3.5-r1 - &lt;br /&gt;
hidaccelerometer - 2.0.0-46 - &lt;br /&gt;
hidavrcp - 1.0.0-1.5.0.1 - &lt;br /&gt;
hidcompass - 2.0.0-r0 - &lt;br /&gt;
hidd - 1.0.1-71 - &lt;br /&gt;
hiddiag - 1.0.0-11 - &lt;br /&gt;
hidinputdev - 1.0.0-4 - &lt;br /&gt;
hidkeypad - 2.0.0-58 - &lt;br /&gt;
hidlib - 2.0.0-77.1 - &lt;br /&gt;
hidlight - 2.0.0-31 - &lt;br /&gt;
hidproximity - 2.0.0-32 - &lt;br /&gt;
hidtouchpanel - 5-223 - &lt;br /&gt;
hostapd - 0.6.10-31 - &lt;br /&gt;
hunspell - 1.3.2-1 - &lt;br /&gt;
imaccountvalidator - 1.0-8 - &lt;br /&gt;
image-extras-cust - 1.0-1 - &lt;br /&gt;
image-extras-cust-default - 1.0-1 - &lt;br /&gt;
imagethumbnail - 1.0-5 - &lt;br /&gt;
imlibpurpleservice - 1.0-36 - &lt;br /&gt;
imsfrtransport - 1.0.2-25.cf - &lt;br /&gt;
imyahootransport - 1.0.1-41.4.cf - &lt;br /&gt;
initscripts - 1.1-111.1 - &lt;br /&gt;
install-first - 1.0.2-18 - &lt;br /&gt;
integcheck - 1.0-16 - &lt;br /&gt;
ipkg - 0.99.163-r9 - &lt;br /&gt;
iproute2 - 2.6.29-2 - &lt;br /&gt;
iptables - 1.4.2-1 - &lt;br /&gt;
iptables-utils - 1.4.2-1 - &lt;br /&gt;
iputils - 20071127-4 - &lt;br /&gt;
iputils-arping - 20071127-4 - &lt;br /&gt;
jail - 1.0.3-72.4 - &lt;br /&gt;
jemalloc - 1.0-7 - &lt;br /&gt;
jpeg - 6b-r6 - &lt;br /&gt;
jpegdecodelib-omap34xx - 1.0.0-12 - &lt;br /&gt;
kernel - 2.6.24-63 - &lt;br /&gt;
kernel-dev - 2.6.24-63 - &lt;br /&gt;
kernel-image-2.6.24-palm-joplin-3430 - 2.6.24-63 - &lt;br /&gt;
kernel-module-ecb - 2.6.24-63 - &lt;br /&gt;
kernel-module-ifb - 2.6.24-63 - &lt;br /&gt;
kernel-module-nbd - 2.6.24-63 - &lt;br /&gt;
kernel-module-oprofile - 2.6.24-63 - &lt;br /&gt;
kernel-module-pcbc - 2.6.24-63 - &lt;br /&gt;
kernel-module-scsi-wait-scan - 2.6.24-63 - &lt;br /&gt;
kernel-modules - 2.6.24-63 - &lt;br /&gt;
keymanager - 1.0-48 - &lt;br /&gt;
killall - 22.2-r1 - &lt;br /&gt;
klog - 1.0-2 - &lt;br /&gt;
libasound - 1.0.24-3 - &lt;br /&gt;
libasound-module-ctl-pulse - 1.0.24-4 - &lt;br /&gt;
libasound-module-pcm-pulse - 1.0.24-4 - &lt;br /&gt;
libavcodec - 65daa94.1-r3palm2 - &lt;br /&gt;
libavdevice - 65daa94.1-r3palm2 - &lt;br /&gt;
libavfilter - 65daa94.1-r3palm2 - &lt;br /&gt;
libavformat - 65daa94.1-r3palm2 - &lt;br /&gt;
libavutil - 65daa94.1-r3palm2 - &lt;br /&gt;
libcommonservices - 258.14-10 - &lt;br /&gt;
libcompass - 1.0.0-r0 - &lt;br /&gt;
libcrypto - 0.9.8k-5 - &lt;br /&gt;
libcurl - 7.21.3-9 - &lt;br /&gt;
libdnssd - 258.14-10 - &lt;br /&gt;
libexif - 0.6.17-r1 - &lt;br /&gt;
libfaac - 1.24-r0 - &lt;br /&gt;
libgcrypt - 1.4.4-r0 - &lt;br /&gt;
libgpg-error - 1.4-r1 - &lt;br /&gt;
libgpod - 0.6.0-r0 - &lt;br /&gt;
libhelpers - 1.0-26 - &lt;br /&gt;
libhostap - 0.6.10-31 - &lt;br /&gt;
libicudata - 3.6-r4 - &lt;br /&gt;
libicui18n - 3.6-r4 - &lt;br /&gt;
libicuio - 3.6-r4 - &lt;br /&gt;
libicule - 3.6-r4 - &lt;br /&gt;
libiculx - 3.6-r4 - &lt;br /&gt;
libicutu - 3.6-r4 - &lt;br /&gt;
libicuuc - 3.6-r4 - &lt;br /&gt;
libid3tag - 0.15.0b-r2 - &lt;br /&gt;
libipkg - 0.99.163-r9 - &lt;br /&gt;
libltdl - 1.5.24-r1 - &lt;br /&gt;
libmemcpy - 1.1-11 - &lt;br /&gt;
libnapp - 1.0-101.3 - &lt;br /&gt;
libnetbridge - 1.2-2 - &lt;br /&gt;
libnrwindow - 1.0-3 - &lt;br /&gt;
libnssmdns - 258.14-10 - &lt;br /&gt;
libogg - 1.1.3-r1 - &lt;br /&gt;
liboil - 0.3.14-r0 - &lt;br /&gt;
libopenal - 1.11.753-2 - &lt;br /&gt;
libpalmsocket - 1.0-24 - &lt;br /&gt;
libpcap - 0.9.3-r2 - &lt;br /&gt;
libpdl - 1.1-78.1 - &lt;br /&gt;
libpng - 1.2.44-r1 - &lt;br /&gt;
libpng12 - 1.2.44-r1 - &lt;br /&gt;
libpulse - 0.9.22-19 - &lt;br /&gt;
libpulse-simple - 0.9.22-19 - &lt;br /&gt;
libpurple - 1.0-r25 - &lt;br /&gt;
librdx - 1.0.0-116 - &lt;br /&gt;
libremoteplugin - 1.0-10 - &lt;br /&gt;
libsamplerate0 - 0.1.7-1 - &lt;br /&gt;
libsdl - 1.2-115.4 - &lt;br /&gt;
libsdl-cinema - 1.0-21 - &lt;br /&gt;
libsdl-image - 1.2-3 - &lt;br /&gt;
libsdl-mixer - 1.2-9 - &lt;br /&gt;
libsdl-net - 1.2-1 - &lt;br /&gt;
libsdl-ttf - 1.2-1 - &lt;br /&gt;
libsigcpp-2.0 - 2.0.17-r0 - &lt;br /&gt;
libsndfile1 - 1.0.21-ignored - &lt;br /&gt;
libsoup - 2.4.1-r0 - &lt;br /&gt;
libspeex - 1.2rc1-r3 - &lt;br /&gt;
libsqlite - 3.6.20-r0 - &lt;br /&gt;
libssl - 0.9.8k-5 - &lt;br /&gt;
libswscale - 65daa94.1-r3palm2 - &lt;br /&gt;
libsysfs - 2.0.0-r0 - &lt;br /&gt;
libulockmgr - 2.7.2-r2 - &lt;br /&gt;
libupstart - 0.3.8-24 - &lt;br /&gt;
libvolume-id - 115.2-32 - &lt;br /&gt;
libvorbis - 1.2.0-r0 - &lt;br /&gt;
libwebosproxy - 1.0.0-4 - &lt;br /&gt;
libwps - 0.6.10-31 - &lt;br /&gt;
libxml2 - 2.7.2-r0palm3 - &lt;br /&gt;
libxslt - 1.1.17-r7palm3 - &lt;br /&gt;
logctld - 1.0.1-70 - &lt;br /&gt;
logd-conf - 1.0.0-5 - &lt;br /&gt;
luna-applauncher - 1.0-174 - &lt;br /&gt;
luna-downloadmgr - 1.0-75.bw.1 - &lt;br /&gt;
luna-fonts - 1.0-20 - &lt;br /&gt;
luna-fonts-cjkv - 1.0-2 - &lt;br /&gt;
luna-fonts-prelude - 1.0-3 - &lt;br /&gt;
luna-init - 1.0-66.cf.3 - &lt;br /&gt;
luna-keymap-headers - 1.0-14 - &lt;br /&gt;
luna-keymaps - 1.0-70 - &lt;br /&gt;
luna-media-shim - 1.0-27 - &lt;br /&gt;
luna-network - 1.0-19 - &lt;br /&gt;
luna-prefs - 1.0-60.1 - &lt;br /&gt;
luna-service2 - 2.0.0-131.2 - &lt;br /&gt;
luna-sysmgr - 1.0-861.cf.74 - &lt;br /&gt;
luna-sysmgr-ipc - 1.0-25 - &lt;br /&gt;
luna-sysservice - 1.0-117.bw - &lt;br /&gt;
luna-systemui - 1.0-231.27 - &lt;br /&gt;
luna-universalsearchmgr - 1.0-29.cf.7 - &lt;br /&gt;
luna-webkit - 1.5-221.56 - &lt;br /&gt;
lvm2 - 2.02.44-r2 - &lt;br /&gt;
lvm2-config - 2.02.44-r2 - &lt;br /&gt;
lvm2-static - 2.02.44-r2 - &lt;br /&gt;
makedevs - 1.0.0-r2 - &lt;br /&gt;
marvell8686microap - 1.0.0-9 - &lt;br /&gt;
masflib - 1.0-10 - &lt;br /&gt;
mdnsd - 258.14-10 - &lt;br /&gt;
mediaadpcmdecodelib - 1.0.0-1 - &lt;br /&gt;
mediacapture - 1.0-11 - &lt;br /&gt;
mediaextension - 1.0-33 - &lt;br /&gt;
mediametaserver - 1.0.0-6 - &lt;br /&gt;
mediaserver - 1.2.0-428.52 - &lt;br /&gt;
mediastream - 1.0-27 - &lt;br /&gt;
mediasyncexporter - 1.0.0-13 - &lt;br /&gt;
memchute - 1.0.0-23 - &lt;br /&gt;
messaging.library - 1.0-1.3 - &lt;br /&gt;
metascene.audiorecorder - 1.0-11.2 - &lt;br /&gt;
metascene.base - 1.0-9 - &lt;br /&gt;
metascene.photos.base - 1.0-6.4 - &lt;br /&gt;
metascene.photos.crop - 1.0-3 - &lt;br /&gt;
metascene.photos.full - 1.0-15.1 - &lt;br /&gt;
metascene.photos.thumbs - 1.0-27.2 - &lt;br /&gt;
metascene.slideshow - 1.0-14.1 - &lt;br /&gt;
metascene.videos.base - 1.0-105.7 - &lt;br /&gt;
metascene.videos.share - 1.0-67 - &lt;br /&gt;
migrator - 1.0-10 - &lt;br /&gt;
minicore2 - 1.0.1-29 - &lt;br /&gt;
minidhcpd - 1.0.2-38 - &lt;br /&gt;
mjson - 1.0-15 - &lt;br /&gt;
mkbootfs-tools - 1.0-11 - &lt;br /&gt;
mkimage - 1.1.2-r1 - &lt;br /&gt;
mm-isp - 23.17M-r4 - &lt;br /&gt;
mmscodec - 1.0-32 - &lt;br /&gt;
mmsservice - 1.0-49 - &lt;br /&gt;
mobilehotspotd - 1.0.2-52.2.0.3.4 - &lt;br /&gt;
module-init-tools - 3.2.2-r3 - &lt;br /&gt;
module-init-tools-depmod - 3.2.2-r3 - &lt;br /&gt;
modutils-initscripts - 1.0-r2 - &lt;br /&gt;
mojo - 1.0-383 - &lt;br /&gt;
mojo.core - 1.0-33 - &lt;br /&gt;
mojo2 - 1.0-112 - &lt;br /&gt;
mojodb - 1.9-52.16 - &lt;br /&gt;
mojodbshim - 1.0-3 - &lt;br /&gt;
mojoloader - 1.0-34 - &lt;br /&gt;
mojolocation - 1.0-54.1 - &lt;br /&gt;
mojomail-common - 1.0-91 - &lt;br /&gt;
mojomail-eas - 1.1-109.5 - &lt;br /&gt;
mojomail-imap - 1.0-83.5 - &lt;br /&gt;
mojomail-pop - 1.0-50.4 - &lt;br /&gt;
mojomail-smtp - 1.0-40.1 - &lt;br /&gt;
mojoservice.base - 1.0-61 - &lt;br /&gt;
mojoservice.transport.base - 1.0-39 - &lt;br /&gt;
mojoservice.transport.sync - 1.0-77 - &lt;br /&gt;
mojoservicelauncher - 1.0.1-57 - &lt;br /&gt;
mountcfs - 1.0-14 - &lt;br /&gt;
mountcrypt - 1.1-18 - &lt;br /&gt;
mtools - 4.0.10-r0 - &lt;br /&gt;
natool - 1.0.0-11 - &lt;br /&gt;
ncurses - 5.4-r9 - &lt;br /&gt;
netbase - 4.22-6 - &lt;br /&gt;
network.alerts - 1.0-7.2 - &lt;br /&gt;
node-ls2 - 1.0-14 - &lt;br /&gt;
node-pmloglib - 1.0-3 - &lt;br /&gt;
node-webos - 1.0-3 - &lt;br /&gt;
nodejs - v0.2.3-17.5 - &lt;br /&gt;
notes - 1.0-15 - &lt;br /&gt;
novacom - 1.0-17 - &lt;br /&gt;
novacomd - 1.0-111 - &lt;br /&gt;
npapi-headers - 2.0-6 - &lt;br /&gt;
npapiinterfacelib - 1.0.0-45 - &lt;br /&gt;
ntpdate - 4.2.2p3-r1 - &lt;br /&gt;
omadm - 1.0.1-149 - &lt;br /&gt;
omxclientlib-omap34xx - 1.0.0-15 - &lt;br /&gt;
ondevicedemod - 1.0.9-97 - &lt;br /&gt;
ondevlogger - 1.0.0-5 - &lt;br /&gt;
opencore-amr - 0.1.2-1 - &lt;br /&gt;
opengles - 1.0.0-1 - &lt;br /&gt;
opengles-omap3 - 1.0.0-1 - &lt;br /&gt;
openssl - 0.9.8k-5 - &lt;br /&gt;
ossinfo - 1.0.0-22 - &lt;br /&gt;
ota-scripts - 1.3-23 - &lt;br /&gt;
palmadpcmdecoder - 1.0.0-7 - &lt;br /&gt;
palmaudiodecoder-omap34xx - 1.0.0-82 - &lt;br /&gt;
palmaudioencoder-omap34xx - 1.0.0-32 - &lt;br /&gt;
palmbuildinfo - 1.0.4-160 - &lt;br /&gt;
palmcustomizationinfo-wr - 1.0-160 - &lt;br /&gt;
palmgstskype - 1.0.0-17 - &lt;br /&gt;
palmjpgencsink-omap34xx - 1.0.0-59 - &lt;br /&gt;
palmmp4mux - 1.0.0-86 - &lt;br /&gt;
palmqcelpdemux - 1.0.0-19 - &lt;br /&gt;
palmvideodecoder-omap34xx - 1.0.0-67 - &lt;br /&gt;
palmvideoencoder-omap34xx - 1.0.0-47 - &lt;br /&gt;
palmvideosink-omap34xx - 1.0.0-85 - &lt;br /&gt;
palmvoicecodec - 1.0-13 - &lt;br /&gt;
palmvoicedecoder - 1.0-23 - &lt;br /&gt;
palmvoiceencoder - 1.0-17 - &lt;br /&gt;
parted - 1.8.8-r3 - &lt;br /&gt;
passthrud - 1.0.9-72 - &lt;br /&gt;
pbnjson - 1.0.1-38 - &lt;br /&gt;
pdfadapter - 1.0.0-46 - &lt;br /&gt;
photos - 1.0-304.5 - &lt;br /&gt;
piranha - 1.2-107.1 - &lt;br /&gt;
piranha-gles - 1.2-104 - &lt;br /&gt;
pma6updater - 1.0.0-9 - &lt;br /&gt;
pmbtcontacts - 1.0.0-2.1.0.11 - &lt;br /&gt;
pmbtengine - 1.0.0-2.1.0.50 - &lt;br /&gt;
pmbtos - 1.0.0-2.1.0.7 - &lt;br /&gt;
pmbtstack - 1.1.4-2.1.0.32 - &lt;br /&gt;
pmbtstartup - 1.0.2-2.1.0.7 - &lt;br /&gt;
pmcarrierdb - 1.0.0-65 - &lt;br /&gt;
pmcasper - 1.0.0-21 - &lt;br /&gt;
pmcertificatemgr - 1.0.0-21 - &lt;br /&gt;
pmcertificatemgrservice - 1.0.0-23 - &lt;br /&gt;
pmcertstore - 1.0.5-25 - &lt;br /&gt;
pmeloop - 1.0.0-3 - &lt;br /&gt;
pmklogd - 1.0.0-6 - &lt;br /&gt;
pmlegacyhcilinklayer - 1.0.0-3 - &lt;br /&gt;
pmlogctl - 1.0.0-7 - &lt;br /&gt;
pmlogdaemon - 1.0.2-95.1 - &lt;br /&gt;
pmloglib - 1.0.0-15 - &lt;br /&gt;
pmmedia - 1.0.0-1 - &lt;br /&gt;
pmmedia-omap36xx - 1.0.0-1 - &lt;br /&gt;
pmmodemefslogger - 1.0.1-36 - &lt;br /&gt;
pmmodeminfo - 1.0.0-47 - &lt;br /&gt;
pmmodempower - 1.0-9 - &lt;br /&gt;
pmmodemqxdmlogger - 1.0.0-10 - &lt;br /&gt;
pmmodemupdater - 1.0.0-164 - &lt;br /&gt;
pmmultitouchlib - 2-45 - &lt;br /&gt;
pmnetconfiglib - 1.0.1-17 - &lt;br /&gt;
pmnetconfigmanager - 1.0.6-158.7 - &lt;br /&gt;
pmnetworking - 1.0.0-0 - &lt;br /&gt;
pmnetworking-castle - 1.0.0-0 - &lt;br /&gt;
pmstatemachineengine - 1.0.1-7 - &lt;br /&gt;
pmtelephony - 1.0.0-1 - &lt;br /&gt;
pmtelephony-msm6xxx - 1.0.0-1 - &lt;br /&gt;
pmtpupdater - 3-37 - &lt;br /&gt;
pmupdater - 1.0.2-148 - &lt;br /&gt;
pmvoicecommand - 1.4-5.39 - &lt;br /&gt;
pmvoicecommand-dede - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-engb - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-enus - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-eses - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-esmx - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-frca - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-frfr - 1.0-5.39 - &lt;br /&gt;
pmvoicecommand-itit - 1.0-5.39 - &lt;br /&gt;
pmvpnacoal - 1.0.0-35 - &lt;br /&gt;
pmvpndaemon - 1.0.1-49 - &lt;br /&gt;
pmwanpppplugin - 1.0.0-22 - &lt;br /&gt;
pmwifidriver - 1.0.1-73.2.0.3.2 - &lt;br /&gt;
pmwifiservice - 1.0.1-179.3 - &lt;br /&gt;
pmwirelesssystemframework - 1.0.0-53 - &lt;br /&gt;
pmwsfdaemon - 1.0.0-14 - &lt;br /&gt;
pmwsfwanblade - 1.0.3-184.3.1 - &lt;br /&gt;
popt - 1.7-r4 - &lt;br /&gt;
popvol - 1.0.0-7 - &lt;br /&gt;
powerd - 1.0.0-306.18 - &lt;br /&gt;
ppp - 2.4.3-r3 - &lt;br /&gt;
procps - 3.2.7-r8 - &lt;br /&gt;
psmisc - 22.2-r1 - &lt;br /&gt;
pstree - 22.2-r1 - &lt;br /&gt;
ptmalloc3 - 1.0-7 - &lt;br /&gt;
pubsubservice - 1.0-91 - &lt;br /&gt;
pulseaudio - 0.9.22-19 - &lt;br /&gt;
pulseaudio-lib-alsa-util - 0.9.22-19 - &lt;br /&gt;
pulseaudio-lib-protocol-native - 0.9.22-19 - &lt;br /&gt;
pulseaudio-lib-protocol-simple - 0.9.22-19 - &lt;br /&gt;
pulseaudio-misc - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-alsa-card - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-alsa-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-alsa-source - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-card-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-combine - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-default-device-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-detect - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-device-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-native-protocol-fd - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-native-protocol-unix - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-null-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-null-source - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-palm-a2dp-provider-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-palm-policy - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-remap-sink - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-rescue-streams - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-simple-protocol-unix - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-stream-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-suspend-on-idle - 0.9.22-19 - &lt;br /&gt;
pulseaudio-module-volume-restore - 0.9.22-19 - &lt;br /&gt;
pulseaudio-server - 0.9.22-19 - &lt;br /&gt;
pvrtc - 1.0-6 - &lt;br /&gt;
qmi2 - 1.0.0-6 - &lt;br /&gt;
qmuxd - 1.0.0-4 - &lt;br /&gt;
qt4 - 4.6.1.1-47.4 - &lt;br /&gt;
rdxd - 1.0.3-118 - &lt;br /&gt;
readline - 4.3-r4 - &lt;br /&gt;
recovery-utilities - 1.0.0-10 - &lt;br /&gt;
redbend - 2.1.1.13-2 - &lt;br /&gt;
remote-adapter - 1.1-39 - &lt;br /&gt;
remote-adapter-ipc - 1.0-17 - &lt;br /&gt;
resizefat - 1.0.0-4 - &lt;br /&gt;
rolegen - 1.0-12 - &lt;br /&gt;
sersend - 1.0.0-6 - &lt;br /&gt;
setcharge - 0.1-7 - &lt;br /&gt;
setserial - 2.17-r1 - &lt;br /&gt;
sfrwisprd - 1.0.0-10 - &lt;br /&gt;
shutdownscripts - 1.0.0-30 - &lt;br /&gt;
skypekit - 1.5-8 - &lt;br /&gt;
skypem - 1.3-27.4c - &lt;br /&gt;
skypevalidator - 1.1-11.2 - &lt;br /&gt;
smartkey - 2.0.2-57 - &lt;br /&gt;
smsservice - 1.0-30 - &lt;br /&gt;
sp-smaps - 0.2.2-r0palm3 - &lt;br /&gt;
sqlite3 - 3.6.20-r0 - &lt;br /&gt;
sqlite3-palm-extension - 1.0-21 - &lt;br /&gt;
storaged - 1.0.3-119 - &lt;br /&gt;
strace - 4.5.19-r0 - &lt;br /&gt;
stservice - 1.0-36 - &lt;br /&gt;
sweatshop-wr-roadrunner - 1.0-42 - &lt;br /&gt;
sync.ui - 1.0-8.2 - &lt;br /&gt;
sysfsutils - 2.0.0-r0 - &lt;br /&gt;
sysstat - 9.0.1-r1 - &lt;br /&gt;
systemsoundsloader - 1.0.0-27.1 - &lt;br /&gt;
sysvinit - 2.86-40 - &lt;br /&gt;
sysvinit-pidof - 2.86-40 - &lt;br /&gt;
tap2shared - 1.0.1-47 - &lt;br /&gt;
tar - 1.17-r1 - &lt;br /&gt;
tasks - 1.0-18 - &lt;br /&gt;
tcpdump - 3.9.4-r3 - &lt;br /&gt;
tellbootie - 1.0-3 - &lt;br /&gt;
tidspbridge-extra - 23.17M-r5 - &lt;br /&gt;
tidspbridge-lib - 23.17M-r1 - &lt;br /&gt;
tidspbridge-module - 23.17M-r8 - &lt;br /&gt;
tidspbridge-mpusamples - 23.17M-r0 - &lt;br /&gt;
til - 1.0.0-138.42 - &lt;br /&gt;
timezone - 2010n-2 - &lt;br /&gt;
tiopenmax - 23.17M-r2 - &lt;br /&gt;
tiopenmax-aacdec - 23.17M-r3 - &lt;br /&gt;
tiopenmax-aacenc - 23.17M-r2 - &lt;br /&gt;
tiopenmax-audiomanager - 23.17M-r0 - &lt;br /&gt;
tiopenmax-camera - 23.17M-r2 - &lt;br /&gt;
tiopenmax-clock - 23.17M-r0 - &lt;br /&gt;
tiopenmax-common - 23.17M-r0 - &lt;br /&gt;
tiopenmax-core - 23.17M-r2 - &lt;br /&gt;
tiopenmax-inst2 - 23.17M-r0 - &lt;br /&gt;
tiopenmax-jpegdec - 23.17M-r1 - &lt;br /&gt;
tiopenmax-jpegenc - 23.17M-r2 - &lt;br /&gt;
tiopenmax-lcml - 23.17M-r3 - &lt;br /&gt;
tiopenmax-mp3 - 23.17M-r1 - &lt;br /&gt;
tiopenmax-nbamrdec - 23.17M-r1 - &lt;br /&gt;
tiopenmax-pcmdec - 23.17M-r1 - &lt;br /&gt;
tiopenmax-policymanager - 23.17M-r2 - &lt;br /&gt;
tiopenmax-postproc - 23.17M-r2 - &lt;br /&gt;
tiopenmax-prepostproc - 23.17M-r1 - &lt;br /&gt;
tiopenmax-ram - 23.17M-r0 - &lt;br /&gt;
tiopenmax-resourcemanager - 23.17M-r2 - &lt;br /&gt;
tiopenmax-rmproxy - 23.17M-r2 - &lt;br /&gt;
tiopenmax-videodec - 23.17M-r4 - &lt;br /&gt;
tiopenmax-videoenc - 23.17M-r5 - &lt;br /&gt;
tisgxgfx-roadrunner - L23.17M3-41 - &lt;br /&gt;
tisocketnode-control-task - 23.17M-r0 - &lt;br /&gt;
tisocketnode-conversions - 23.17M-r1 - &lt;br /&gt;
tisocketnode-dfgm - 23.17M-r0 - &lt;br /&gt;
tisocketnode-h264dec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-ipp - 23.17M-r1 - &lt;br /&gt;
tisocketnode-jpegdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-jpegenc - 23.17M-r1 - &lt;br /&gt;
tisocketnode-mp3 - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4aacdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4aacenc - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4dec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-mpeg4enc - 23.17M-r0 - &lt;br /&gt;
tisocketnode-nbamrdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-pcmdec - 23.17M-r0 - &lt;br /&gt;
tisocketnode-ringio - 23.17M-r1 - &lt;br /&gt;
tisocketnode-usn - 23.17M-r1 - &lt;br /&gt;
tisocketnode-vpp - 23.17M-r0 - &lt;br /&gt;
touchpanel-measure - 1.0-3 - &lt;br /&gt;
transcodeserver - 1.0.0-54 - &lt;br /&gt;
trenchcoat - 2.0-132.4 - &lt;br /&gt;
udev - 115.2-32 - &lt;br /&gt;
underscore - 1.0-7 - &lt;br /&gt;
unittest - 1.0-17 - &lt;br /&gt;
update-modules - 1.0-r4 - &lt;br /&gt;
update-rc.d - 0.7-r0 - &lt;br /&gt;
updatedaemon - 1.0.2-212 - &lt;br /&gt;
updatefsinfo - 1.5-6 - &lt;br /&gt;
uploadd - 1.0.1-40 - &lt;br /&gt;
upstart - 0.3.8-24 - &lt;br /&gt;
upstart-initscripts - 1.0-118 - &lt;br /&gt;
upstart-sysvcompat - 0.3.8-24 - &lt;br /&gt;
uriparser - 0.7.4-r0 - &lt;br /&gt;
usbmon - 1.0-5 - &lt;br /&gt;
usbnet - 1.0.0-1 - &lt;br /&gt;
usbsniffd - 1.0.0-1 - &lt;br /&gt;
util-linux-ng-blockdev - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-ionice - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-losetup - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-mkswap - 2.14.2-r5 - &lt;br /&gt;
util-linux-ng-swaponoff - 2.14.2-r5 - &lt;br /&gt;
v8 - 1.1-2.5.9.22-2 - &lt;br /&gt;
vibetonz - 1.0.0-4 - &lt;br /&gt;
vpnacagent - 1.0.0-39 - &lt;br /&gt;
vpnc - 0.5.3-4 - &lt;br /&gt;
vpncagent - 1.0.0-37 - &lt;br /&gt;
watchdogd - 1.0.0-3 - &lt;br /&gt;
webview - 2.0-23.11 - &lt;br /&gt;
wireless-tools - 29-r2 - &lt;br /&gt;
wirelesswhitebox-tiltest - 1.0-9 - &lt;br /&gt;
wpasupplicant - 0.6.10-31 - &lt;br /&gt;
xt9 - 6.2.3-16 - &lt;br /&gt;
xz-embedded - 1.0-1 - &lt;br /&gt;
yajl - 1.0.7-3 - &lt;br /&gt;
zeroconfigd - 1.0.1-15 - &lt;br /&gt;
zlib - 1.2.3-r2 -&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Internals_PDK&amp;diff=21533</id>
		<title>WebOS Internals PDK</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Internals_PDK&amp;diff=21533"/>
		<updated>2012-01-31T15:08:49Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Errors during make stage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: SDL]]&lt;br /&gt;
Palm's binary sdk  the &amp;quot;Plugin Developer Kit&amp;quot; became available to all developers in March 2010.&lt;br /&gt;
&lt;br /&gt;
When the widk was developed, the Palm PDK didn't exist, and until Dec 2010, it was not possible to run the PDK in Linux.  If you would like to run the official Palm PDK, see [[PDK on Linux]] for directions.&lt;br /&gt;
&lt;br /&gt;
In addition to the PDK, webOS Internals has released a full &amp;quot;WIDK&amp;quot; (webOS Internals Development Kit) for you using Scratchbox2.  &lt;br /&gt;
&lt;br /&gt;
Less than 10% of developers in the webOS developer community use Linux variants. Among those 10% there are dozens of different linux distributions that people use. Palm, therefore has chosen to support only Mac and Windows platforms for their PDK.  Palm recommends that Linux based developers use the webOS-internals WIDK instead.  &lt;br /&gt;
&lt;br /&gt;
We ''strongly'' urge the open-source homebrew community to standardize on this WIDK.   It uses the same underlying technologies, and is entirely open.  &lt;br /&gt;
&lt;br /&gt;
Scratchbox 2 is a cross-compilation engine, it can be used to create a highly flexible SDK.&lt;br /&gt;
&lt;br /&gt;
As installed below, the install process uses a script which extracts the required Palm provided files from a copy of webOS doctor, and  downloads from other sources, and builds a complete compilation environment automatically which can compile SDL and openGLES apps for webOS.  &lt;br /&gt;
&lt;br /&gt;
SB2 ''itself'' is totally distribution neutral but the webOS cross-compile environment is designed and tested on Ubuntu Server 11.04 32 bit. See [[WebOS_Internals_PDK_on_Mandriva]] if you want to run it on Mandriva.  If you want to run the WIDK on other distributions and are willing to support that yourself and not ask webOS Internals any questions about it then please enjoy and if you succeed come back here and make a new article on how you did it.  Otherwise, use the recommended OS.&lt;br /&gt;
&lt;br /&gt;
The webOS Internals team ''strongly suggest'' apt-get install into the Ubuntu environment only for this purpose. The same installation of Sun Virtualbox which hosts the Palm SDK emulator can host an Ubuntu 11.04 server with very little effort on any operating system. &lt;br /&gt;
&lt;br /&gt;
Developers wanting to work in a Gentoo environment 'without' SB2 can consider using the [http://www.webos-internals.org/wiki/Gentoo_NDK PuffTheMagic NDK].&lt;br /&gt;
&lt;br /&gt;
== Installing Ubuntu ==&lt;br /&gt;
&lt;br /&gt;
You can download VirtualBox here : https://www.virtualbox.org/wiki/Downloads &amp;lt;BR&amp;gt;&lt;br /&gt;
You can download ISO files to burn Ubuntu CD or DVD here : http://www.ubuntu.com/download/ubuntu/download &amp;lt;BR&amp;gt;&lt;br /&gt;
but if you want to spend a litle time for installing Ubuntu in VirtualBox, then use Ubunbu image available here : http://virtualboxes.org/images/ubuntu/ &amp;lt;BR&amp;gt;&lt;br /&gt;
After installing your ubuntu image, don't forget to use bridge network configuration in Virtualbox. &lt;br /&gt;
Then in the Ubuntu console, type  : &lt;br /&gt;
 sudo apt-get install telnet ssh virtualbox-ose&lt;br /&gt;
 sudo apt-get update&lt;br /&gt;
 sudo apt-get upgrade&lt;br /&gt;
In the Ubuntu desktop menu, go in System -&amp;gt; Preferences -&amp;gt; Keyboard -&amp;gt; Layouts tab to change the keyboard type.&lt;br /&gt;
Then next reboot your ubuntu.&lt;br /&gt;
&lt;br /&gt;
==SB2 Homepage==&lt;br /&gt;
[http://www.freedesktop.org/wiki/Software/sbox2 http://www.freedesktop.org/wiki/Software/sbox2]pdk&lt;br /&gt;
&lt;br /&gt;
==License==&lt;br /&gt;
Scratchbox 2 is distributed under LGPL version 2.1, portions are under GPL version 2. Some minor stuff is under MIT style license.&lt;br /&gt;
&lt;br /&gt;
== Installation on Ubuntu for webOS PDK cross compiling ==&lt;br /&gt;
&lt;br /&gt;
If setting up in a Virtual Box instance, it is recommended that you first complete the openSSH config as described in the VirtualBox tips for Windows users to the right.  This is helpful even with a Linux host, as SSH into the PDK Virtual Machine will allow copy and paste of the commands listed below and reduce errors.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; clear:right; width:30%&amp;quot;&amp;gt;{{Ubuntu_VM_notes_for_Windows_users}}&amp;lt;/div&amp;gt;&lt;br /&gt;
===Toolchain===&lt;br /&gt;
&lt;br /&gt;
===Prerequisites===&lt;br /&gt;
Your Ubuntu installation will need the following installed.  If you do not have them, run the command after the package name. You can test if they are found by just typing the command name.  If it says command not found, you need to install it.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|'''git''' || sudo apt-get install git-core&lt;br /&gt;
|-&lt;br /&gt;
|'''gcc''' || sudo apt-get install build-essential&lt;br /&gt;
|-&lt;br /&gt;
|'''curl''' || sudo apt-get install curl&lt;br /&gt;
|-&lt;br /&gt;
|'''unzip'''|| sudo apt-get install unzip&lt;br /&gt;
|-&lt;br /&gt;
|'''7zip *'''|| sudo apt-get install p7zip-full&lt;br /&gt;
|-&lt;br /&gt;
|'''autoconf'''|| sudo apt-get install autoconf&lt;br /&gt;
|-&lt;br /&gt;
|'''subversion'''|| sudo apt-get install subversion&lt;br /&gt;
|-&lt;br /&gt;
|'''libtool'''|| sudo apt-get install libtool&lt;br /&gt;
|-&lt;br /&gt;
|'''wget'''|| sudo apt-get install wget&lt;br /&gt;
|-&lt;br /&gt;
|'''pkg-config'''|| sudo apt-get install pkg-config&lt;br /&gt;
|-&lt;br /&gt;
|'''gettext'''|| sudo apt-get install gettext&lt;br /&gt;
|-&lt;br /&gt;
|'''fakeroot'''|| sudo apt-get install fakeroot&lt;br /&gt;
|-&lt;br /&gt;
|'''javac *'''|| sudo apt-get install sun-java6-jdk (if this command line does not work, then do :  sudo add-apt-repository ppa:ferramroberto/java; sudo apt-get update; sudo apt-get install sun-java6-jdk )&lt;br /&gt;
|-&lt;br /&gt;
|'''ant'''|| sudo apt-get install ant&lt;br /&gt;
|-&lt;br /&gt;
|'''cmake'''|| sudo apt-get install cmake&lt;br /&gt;
|-&lt;br /&gt;
|'''xsltproc'''|| sudo apt-get install xsltproc&lt;br /&gt;
|-&lt;br /&gt;
|'''intltool'''|| sudo apt-get install intltool&lt;br /&gt;
|-&lt;br /&gt;
|'''mkimage'''|| sudo apt-get install uboot-mkimage&lt;br /&gt;
|-&lt;br /&gt;
|'''lsdiff'''|| sudo apt-get install patchutils&lt;br /&gt;
|-&lt;br /&gt;
|'''flex'''|| sudo apt-get install flex&lt;br /&gt;
|-&lt;br /&gt;
|'''bison'''|| sudo apt-get install bison&lt;br /&gt;
|-&lt;br /&gt;
|'''libssl-dev'''|| sudo apt-get install libssl-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''zlib1g-dev'''|| sudo apt-get install zlib1g-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''libbz2-dev'''|| sudo apt-get install libbz2-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''xar *'''|| sudo apt-get install xar&lt;br /&gt;
|-&lt;br /&gt;
|'''help2man'''|| sudo apt-get install help2man&lt;br /&gt;
|-&lt;br /&gt;
|'''texinfo'''|| sudo apt-get install texinfo&lt;br /&gt;
|-&lt;br /&gt;
|'''automake 1.10'''|| sudo apt-get install automake1.10&lt;br /&gt;
|-&lt;br /&gt;
|'''autopoint'''|| sudo apt-get install autopoint&lt;br /&gt;
|-&lt;br /&gt;
|'''xutils-dev'''|| sudo apt-get install xutils-dev&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* 7-Zip version 4.59 or greater is needed&lt;br /&gt;
* it has been reported that sun-java6-jdk isn't necessary&lt;br /&gt;
* On Ubuntu 11.04 xar might not install using &amp;lt;code&amp;gt;sudo apt-get install xar&amp;lt;/code&amp;gt; See Note 2 Below&lt;br /&gt;
&lt;br /&gt;
If you're uncertain at all, and you're using Ubuntu 11.04, just cut and paste the following.  If they are already installed, they'll be skipped. xar is not included in the code below.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install git-core build-essential curl unzip p7zip-full autoconf subversion libtool wget pkg-config gettext fakeroot ant xsltproc intltool uboot-mkimage patchutils flex bison libssl-dev zlib1g-dev libbz2-dev help2man texinfo automake1.10 autopoint xutils-dev cmake&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you are a beginner with Ubuntu Linux Distribution, you should update all the packages on your system to avoid problems when you will compile.&lt;br /&gt;
&lt;br /&gt;
'''Note 2:''' If &amp;lt;code&amp;gt;xar&amp;lt;/code&amp;gt; cannot be installed with &amp;lt;code&amp;gt;sudo apt-get install xar&amp;lt;/code&amp;gt;, then you have to download two &amp;lt;code&amp;gt;.deb&amp;lt;/code&amp;gt;-files manually and install them (in the order they are listed):&lt;br /&gt;
* If you're using Ubuntu 11.04:&lt;br /&gt;
# [http://packages.ubuntu.com/hardy/libxar1 libxar1]&lt;br /&gt;
# [http://packages.ubuntu.com/hardy/xar xar]&lt;br /&gt;
* If you're using Debian 6.0.2 (Squeeze):&lt;br /&gt;
# [http://packages.debian.org/lenny/libxar1 libxar1]&lt;br /&gt;
# [http://packages.debian.org/lenny/xar xar]&lt;br /&gt;
&lt;br /&gt;
If you have not xar packages in your repo, then find the files in the previous links and next install manually xar files :&lt;br /&gt;
 sudo dpkg -i libxar1_1.5.1-1_i386.deb xar_1.5.1-1_i386.deb&lt;br /&gt;
&lt;br /&gt;
After that execute the above command again.&lt;br /&gt;
&lt;br /&gt;
Use these 2 command line :&amp;lt;BR&amp;gt;&lt;br /&gt;
Update repositories   :&lt;br /&gt;
 sudo aptitude update (if it doesn't work use : sudo apt-get update )&lt;br /&gt;
And next, update the packages :&lt;br /&gt;
 sudo aptitude safe-upgrade (if it doesn't work use : sudo apt-get upgrade )&lt;br /&gt;
&lt;br /&gt;
If you're on a 64-bit system, you will also need to install the ia32-libs package.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The ''make toolchain'' command and later steps will download approximately a half-gig of tools and sources from various locations.  Do not start this if you do not have time for a large download.  Additionally, if you already have downloaded a copy of the correct version of the WebOS doctor, you can reduce the download time by copying the doctor file into cross-compile/doctors/ with the correct name.  This will cause the appropriate command to skip that download.  Note that codesourcery rate limts downloads and at a minimum this process will take 10 to 15 minutes irrespective of your connection speed. &lt;br /&gt;
&lt;br /&gt;
====Start setup====&lt;br /&gt;
Create a preware folder, copy the cross-compile tools into it (if you have not installed git, apt-get install git-core), and use a make script to begin the set up of the compilation toolchain. &lt;br /&gt;
&lt;br /&gt;
 sudo mkdir -p /srv/preware&lt;br /&gt;
 cd /srv/preware&lt;br /&gt;
 sudo chmod 777 .&lt;br /&gt;
 git clone git://git.webos-internals.org/preware/cross-compile.git&lt;br /&gt;
 cd cross-compile&lt;br /&gt;
 make toolchain&lt;br /&gt;
&lt;br /&gt;
If errors occur, browse the [http://git.webos-internals.org/preware/cross-compile/ repository online] and checkout earlier commits until you get something that gets through &amp;quot;make toolchain&amp;quot; and the later &amp;quot;make stage&amp;quot; commands like so:&lt;br /&gt;
&lt;br /&gt;
 git checkout &amp;lt;commit-ish&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
 $ cd /srv/preware/cross-compile/&lt;br /&gt;
 $ ls -la&lt;br /&gt;
 drwxr-xr-x  8 ubuntu ubuntu 4096 2011-12-31 17:33 .git&lt;br /&gt;
 -rwxr-xr-x  1 ubuntu ubuntu   79 2011-12-31 17:33 .gitignore&lt;br /&gt;
 $ git branch&lt;br /&gt;
 * master&lt;br /&gt;
 $ git checkout master&lt;br /&gt;
 Already on 'master'&lt;br /&gt;
 $ git checkout&lt;br /&gt;
 $ ls -la&lt;br /&gt;
 drwxr-xr-x  8 ubuntu ubuntu 4096 2012-01-09 12:09 .git&lt;br /&gt;
 -rwxr-xr-x  1 ubuntu ubuntu   79 2011-12-31 17:33 .gitignore&lt;br /&gt;
&lt;br /&gt;
====Verify sh shell====&lt;br /&gt;
On Ubuntu /bin/sh is a symbolic link to dash.  This will cause errors with the make stage command below, as some of the scripts assume bash.  Run the following command to see what shell sh is linked to.&lt;br /&gt;
&lt;br /&gt;
  ls -l /bin/sh&lt;br /&gt;
&lt;br /&gt;
If the result is a link to dash:&lt;br /&gt;
&lt;br /&gt;
  lrwxrwxrwx 1 root root 4 2010-07-06 23:55 /bin/sh -&amp;gt; dash&lt;br /&gt;
&lt;br /&gt;
You will want to correct it with the following:&lt;br /&gt;
&lt;br /&gt;
  sudo dpkg-reconfigure dash&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to &amp;quot;Install dash as /bin/sh?&amp;quot;.  Select &amp;quot;&amp;lt;No&amp;gt;&amp;quot; and bash will be used.  Rerun the command to verify:&lt;br /&gt;
&lt;br /&gt;
  ls -l /bin/sh&lt;br /&gt;
&lt;br /&gt;
You should now see:&lt;br /&gt;
&lt;br /&gt;
  lrwxrwxrwx 1 root root 4 2010-07-09 21:12 /bin/sh -&amp;gt; bash&lt;br /&gt;
&lt;br /&gt;
====Setup Scratchbox====&lt;br /&gt;
Now, use apt-get to setup scratchbox...&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install scratchbox2 qemu-kvm-extras (in Debian install qemu-user and qemu-system instead of qemu-kvm-extras)&lt;br /&gt;
&lt;br /&gt;
...and set it up for compiling for webOS. &lt;br /&gt;
&lt;br /&gt;
 cd /srv/preware/cross-compile/toolchain/arm-2007q3/arm-none-linux-gnueabi/libc&lt;br /&gt;
 PATH=/srv/preware/cross-compile/toolchain/arm-2007q3/bin:${PATH} sb2-init -c /usr/bin/qemu-arm armv7 arm-none-linux-gnueabi-gcc&lt;br /&gt;
 PATH=/srv/preware/cross-compile/toolchain/arm-2007q3/bin:${PATH} sb2-init -c /usr/bin/qemu-arm armv6 arm-none-linux-gnueabi-gcc&lt;br /&gt;
 cd /srv/preware/cross-compile&lt;br /&gt;
&lt;br /&gt;
On some distributions such as recent Debian and Ubuntu, you'll have compiler problems with these values - use sb2-qemu-arm instead of qemu-arm in the sb2-init command lines above.&lt;br /&gt;
&lt;br /&gt;
Then:&lt;br /&gt;
&lt;br /&gt;
 make setup&lt;br /&gt;
&lt;br /&gt;
Once this setup is complete, compiling sdl apps for webOS is very simple. Note that the set up for i686 is not yet determined.&lt;br /&gt;
&lt;br /&gt;
==Verified installed clean list==&lt;br /&gt;
&lt;br /&gt;
If you have successfully built the WIDK from scratch, with NO problems, feel free to add your information to this list.  This will help us assess what distributions and versions it is fully compatible with.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|'''IRC name'''&lt;br /&gt;
|'''Linux Distribution'''&lt;br /&gt;
|'''Version'''&lt;br /&gt;
|'''Date'''&lt;br /&gt;
|'''Comments'''&lt;br /&gt;
|-&lt;br /&gt;
|Scoutcamper&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|9.04,9.10,10.04,10.10&lt;br /&gt;
|10-18-10&lt;br /&gt;
|Works Great!&lt;br /&gt;
|-&lt;br /&gt;
|elpollodiablo1&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|11.04&lt;br /&gt;
|7-13-11&lt;br /&gt;
|Works With updated Wiki Info&lt;br /&gt;
|-&lt;br /&gt;
|nebula&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|11.04&lt;br /&gt;
|9-7-11&lt;br /&gt;
|It works!&lt;br /&gt;
|-&lt;br /&gt;
|yannick56&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|11.04&lt;br /&gt;
|12-31-11&lt;br /&gt;
|Works With updated Wiki Info&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Errors during make stage ==&lt;br /&gt;
&lt;br /&gt;
===automake1.10===&lt;br /&gt;
&lt;br /&gt;
If you see the error below, you need the latest automake (1.10)&lt;br /&gt;
&lt;br /&gt;
 /usr/share/automake-1.9/am/depend2.am: am__fastdepOBJC does not appear in AM_CONDITIONAL&lt;br /&gt;
 configure.in:88: installing `./config.guess'&lt;br /&gt;
 configure.in:88: installing `./config.sub'&lt;br /&gt;
 Makefile.am: installing `./INSTALL'&lt;br /&gt;
 autoreconf2.50: automake failed with exit status: 1&lt;br /&gt;
&lt;br /&gt;
Install automake1.10 and it should work (according to [http://old.nabble.com/AC_PROG_OBJC-and-automake-1.9-td22434760.html this page])&lt;br /&gt;
&lt;br /&gt;
===Fix mmap errors===&lt;br /&gt;
The following commands appear redundant.  They are not.  The install this fixes your mmap config to fix an mmap: permission denied error, but we don't need the package itself. (Do each command separately with cut and paste).&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install qemu-arm-static&lt;br /&gt;
 sudo apt-get remove qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
It appears that this package has been renamed qemu-kvm-extras-static in Ubuntu 11.04.&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;span style=&amp;quot;font-size:150%&amp;quot;&amp;gt;OR&amp;lt;/span&amp;gt; As a workaround, if this package is not available, &lt;br /&gt;
::: the following commands can be executed in a root shell (sudo -s) to fix the mmap configuration to enable qemu-arm to work.&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;vm.mmap_min_addr = 4096&amp;quot; &amp;gt; /etc/sysctl.d/mmap_min_addr.conf&lt;br /&gt;
 /etc/init.d/procps restart&lt;br /&gt;
&lt;br /&gt;
(note that the value should not be &amp;quot;0&amp;quot;. 4096 is chosen to avoid null pointer attacks.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Libtool===&lt;br /&gt;
&lt;br /&gt;
 make[5]: Entering directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6/src'&lt;br /&gt;
 /bin/sh ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -Wall -g -O2 -MT libdotconf_la-dotconf.lo -MD -MP -MF .deps/libdotconf_la-dotconf.Tpo -c -o libdotconf_la-dotconf.lo `test -f 'dotconf.c' || echo './'`dotconf.c&lt;br /&gt;
 libtool: Version mismatch error.  This is libtool 2.2.6b, but the&lt;br /&gt;
 libtool: definition of this LT_INIT comes from libtool 2.2.6.&lt;br /&gt;
 libtool: You should recreate aclocal.m4 with macros from libtool 2.2.6b&lt;br /&gt;
 libtool: and run autoconf again.&lt;br /&gt;
 make[5]: *** [libdotconf_la-dotconf.lo] Error 63&lt;br /&gt;
 make[5]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6/src'&lt;br /&gt;
 make[4]: *** [install-recursive] Error 1&lt;br /&gt;
 make[4]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6'&lt;br /&gt;
 make[3]: *** [build/armv6.built] Error 2&lt;br /&gt;
 make[3]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf'&lt;br /&gt;
 make[2]: *** [build_common/libdotconf] Error 2&lt;br /&gt;
 make[2]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make[1]: *** [staging-armv6] Error 2&lt;br /&gt;
 make[1]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make: *** [stage] Error 2&lt;br /&gt;
&lt;br /&gt;
Confirmed by 3 people. Fix this by either (your choice)&lt;br /&gt;
*upgrading to Ubuntu 10.04 or newer (the WIDK now relies on a slightly newer version of libtool that's not in 9.10 or earlier)&lt;br /&gt;
*updating libtool to 2.2.6b-2 (backported to 9.10, see available downloads on http://linuxappfinder.com/package/libtool#ubuntu_karmicpartner)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you're getting an error where sb2-init gives you the following output:&lt;br /&gt;
&lt;br /&gt;
 checking for gcc... gcc&lt;br /&gt;
 checking for C compiler default output file name... a.out&lt;br /&gt;
 checking whether the C compiler works... configure: error: cannot run C compiled programs.&lt;br /&gt;
 If you meant to cross compile, use `--host'.&lt;br /&gt;
 See `config.log' for more details.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 Running /usr/bin/sb2-build-libtool failed&lt;br /&gt;
 You can run this manually later, otherwise your&lt;br /&gt;
 sb2 environment is correctly setup and ready to use&lt;br /&gt;
&lt;br /&gt;
You need to upgrade qemu. Alternatively, if your sb2-init output fails with a different output, like this:&lt;br /&gt;
&lt;br /&gt;
 checking for gcc... gcc&lt;br /&gt;
 checking for C compiler default output file name... a.out&lt;br /&gt;
 checking whether the C compiler works... configure: error: cannot run C compiled programs.&lt;br /&gt;
 If you meant to cross compile, use `--host'.&lt;br /&gt;
 See `config.log' for more details.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 sb2-init completed successfully, have fun!&lt;br /&gt;
&lt;br /&gt;
Then you need to upgrade scratchbox, too (install 2.0 instead of 1.99).&lt;br /&gt;
&lt;br /&gt;
=== ecore ===&lt;br /&gt;
*TRUE and FALSE are not defined:&lt;br /&gt;
Manually add the definition:&lt;br /&gt;
&lt;br /&gt;
 #ifndef TRUE&lt;br /&gt;
 # define TRUE 1&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
 #ifndef FALSE&lt;br /&gt;
 # define FALSE 0&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$po_makefile_in&amp;lt;/code&amp;gt; could not be found:&lt;br /&gt;
**Open the file &amp;lt;code&amp;gt;/srv/preware/cross-compile/packages/dev-e/ecore/build/src/configure.ac&amp;lt;/code&amp;gt; and search for the line with: &amp;lt;code&amp;gt;$po_makefile_in&amp;lt;/code&amp;gt; (in my case line 1437) and replace it with &amp;lt;code&amp;gt;po/Makefile.in&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== /bin/sh errors ===&lt;br /&gt;
If you are getting a &amp;quot;bad fd number&amp;quot; or other /bin/sh error, make sure your /bin/sh points to bash, not another shell (such as dash.)&lt;br /&gt;
&lt;br /&gt;
Go back through the Verify sh shell section above to correct.&lt;br /&gt;
&lt;br /&gt;
=== further download errors ===&lt;br /&gt;
&lt;br /&gt;
rwhitby's suggestion:&lt;br /&gt;
&lt;br /&gt;
If you don't need that package which is failing for you, just move it to the nonworking directory and try again.&lt;br /&gt;
&lt;br /&gt;
14 July 2011=Using Rod's approach: So far I had to move fuse, unionfs-fuse, dev-gl, voip and x (pango and pixman failed). Using Ubuntu 11.04.&lt;br /&gt;
&lt;br /&gt;
=== X--tag=CC: command not found ===&lt;br /&gt;
&lt;br /&gt;
While running '''make stage''' on Ubuntu 10.10, I got the following error during compilation of sdl-gfx:&lt;br /&gt;
&lt;br /&gt;
 /bin/sh ./libtool --tag=CC   --mode=compile gcc -DPACKAGE_NAME=\&amp;quot;\&amp;quot; -DPACKAGE_TARNAME=\&amp;quot;\&amp;quot; -DPACKAGE_VERSION=\&amp;quot;\&amp;quot; -DPACKAGE_STRING=\&amp;quot;\&amp;quot; -DPACKAGE_BUGREPORT=\&amp;quot;\&amp;quot; -DPACKAGE_URL=\&amp;quot;\&amp;quot; -DPACKAGE=\&amp;quot;SDL_gfx\&amp;quot; -DVERSION=\&amp;quot;2.0.20\&amp;quot; -DSTDC_HEADERS=1  -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1  -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\&amp;quot;.libs/\&amp;quot; -DX_DISPLAY_MISSING=1 -DBUILD_DLL -I.     -g -O2 -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -MT SDL_gfxPrimitives.lo -MD -MP -MF .deps/SDL_gfxPrimitives.Tpo -c -o  SDL_gfxPrimitives.lo SDL_gfxPrimitives.c&lt;br /&gt;
 ./libtool: line 847: X--tag=CC: command not found&lt;br /&gt;
 ./libtool: line 880: libtool: ignoring unknown tag : command not found&lt;br /&gt;
 ./libtool: line 847: X--mode=compile: command not found&lt;br /&gt;
 ./libtool: line 1014: *** Warning: inferring the mode of operation is deprecated.: command not found&lt;br /&gt;
 ./libtool: line 1015: *** Future versions of Libtool will require --mode=MODE be specified.: command not found&lt;br /&gt;
 ./libtool: line 1158: Xgcc: command not found&lt;br /&gt;
 ./libtool: line 1158: X-DPACKAGE_NAME=&amp;quot;&amp;quot;: command not found&lt;br /&gt;
 ./libtool: line 1158: X-DPACKAGE_TARNAME=&amp;quot;&amp;quot;: command not found&lt;br /&gt;
&lt;br /&gt;
In order to fix this problem, I had to run this command to set &amp;lt;code&amp;gt;$echo&amp;lt;/code&amp;gt; (which gets used in line 847 of the libtool script):&lt;br /&gt;
&lt;br /&gt;
 export echo=echo&lt;br /&gt;
&lt;br /&gt;
and re-run &amp;lt;code&amp;gt;make stage&amp;lt;/code&amp;gt; in the same shell session.&lt;br /&gt;
&lt;br /&gt;
=== missing macro AM_PATH_SDL in making libsdl-gfx ===&lt;br /&gt;
In Ubuntu Server 11.04 amd64 I had to install the package libsdl1.2-dev to get past this.  I also needed the X--tag=CC fix above.&lt;br /&gt;
Also for Ubuntu 11.04 i386 install the package libsdl1.2-dev.&lt;br /&gt;
&lt;br /&gt;
=== virtualbox-ose missing ===&lt;br /&gt;
&lt;br /&gt;
I have the following error with Ubuntu 11.04 :&lt;br /&gt;
 ...&lt;br /&gt;
 Extracting  nova-cust-image-sdk1457.vmdk&lt;br /&gt;
 Everything is Ok&lt;br /&gt;
 Size:       397672448&lt;br /&gt;
 Compressed: 164460248&lt;br /&gt;
 VBoxManage clonehd rootfs/i686/extract/nova-cust-image-sdk1457.vmdk rootfs/i686/extract/nova-cust-image-sdk1457.raw --format RAW&lt;br /&gt;
 make: VBoxManage: Command not found&lt;br /&gt;
 make: *** [rootfs/i686/.unpacked] Error 127&lt;br /&gt;
&lt;br /&gt;
and I fix it by installing virtualbox-ose pakage as this :&lt;br /&gt;
 sudo apt-get install virtualbox-ose&lt;br /&gt;
&lt;br /&gt;
=== etags: command not found ===&lt;br /&gt;
&lt;br /&gt;
If staging fails during compilation of liblinphone (possibly other packages) with an error similar to the following:&lt;br /&gt;
&lt;br /&gt;
 (cd build/src; etags `find . -type f -print`)&lt;br /&gt;
 /bin/sh: etags: command not found&lt;br /&gt;
 make[2]: *** [build/.unpacked] Error 127&lt;br /&gt;
 make[2]: Leaving directory `/srv/preware/cross-compile/packages/voip/liblinphone'&lt;br /&gt;
 make[1]: *** [build_voip/liblinphone] Error 2&lt;br /&gt;
 make[1]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make: *** [stage-armv7] Error 2&lt;br /&gt;
&lt;br /&gt;
Then you need to install the emacs common package.  On Ubuntu the command you need is:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install emacs23-bin-common&lt;br /&gt;
&lt;br /&gt;
==Sample build of [[Application:Doom]]==&lt;br /&gt;
&lt;br /&gt;
Now, go to [[Building DOOM with scratchbox2]] and follow the simple directions.&lt;br /&gt;
&lt;br /&gt;
==In Process Enhancements==&lt;br /&gt;
[[Extracting the PDK on Linux]]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:Sitenotice&amp;diff=21451</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:Sitenotice&amp;diff=21451"/>
		<updated>2012-01-17T15:17:12Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;-&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:Sitenotice&amp;diff=21449</id>
		<title>MediaWiki:Sitenotice</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:Sitenotice&amp;diff=21449"/>
		<updated>2012-01-17T15:16:36Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: Created page with &amp;quot;- test&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;-&lt;br /&gt;
test&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Application:AppTuckerbox&amp;diff=20489</id>
		<title>Application:AppTuckerbox</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Application:AppTuckerbox&amp;diff=20489"/>
		<updated>2011-12-11T10:20:50Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Application]]&lt;br /&gt;
&lt;br /&gt;
{{application&lt;br /&gt;
| name=App Tuckerbox&lt;br /&gt;
| type=webOS&lt;br /&gt;
| version=Version: 0.8.0 (5 December 2011)&lt;br /&gt;
| tag=Utilities&lt;br /&gt;
| screenshot=Apptuckerbox_ss1.png&lt;br /&gt;
| description=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Summary ==&lt;br /&gt;
App Tuckerbox is a homebrew app that allows you to register your device for direct access to information gathered from HP App Catalog, Web and Beta Feeds.&lt;br /&gt;
&lt;br /&gt;
=== Key features ===&lt;br /&gt;
# Access to the official Feeds (palm-catalog, palm-beta, palm-web)&lt;br /&gt;
# Install Packages without geo restriction&lt;br /&gt;
# Install Packages on all webOS devices (without compatibility restrictions)&lt;br /&gt;
# Install your previously purchased Apps on all of your devices&lt;br /&gt;
# Show the changelog of App Catalog Apps&lt;br /&gt;
&lt;br /&gt;
=== Status ===&lt;br /&gt;
&lt;br /&gt;
AppTuckerbox is currently in a closed beta status. You must post an Impostah screenshot showing that you have purchased 75+ webOS apps to qualify for the closed beta.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
&lt;br /&gt;
=== Register Process ===&lt;br /&gt;
&lt;br /&gt;
To register a device a highly encrypted message is sent to a secure server containing your email address, your device id number and your profile authorization token. Your profile password and credit card are '''not''' sent to the server.&lt;br /&gt;
Your informations are protected using an industry standard RSA encryption algorithm with a military-grade 4096 bit key. &lt;br /&gt;
&lt;br /&gt;
A secure verification process running on the App Tuckerbox servers temporarily decrypts your stored encrypted info to verify your account status and add the information about your accessible apps to the AppTuckerbox feeds.&lt;br /&gt;
&lt;br /&gt;
=== Access the Feeds ===&lt;br /&gt;
&lt;br /&gt;
After a valid registration App Tuckerbox configures the Preware (version 1.9.4 or higher) feeds to access the palm-catalog, palm-beta and palm-web feeds. The feeds are now available within the feed manager. The feeds can be enabled and disabled like all other feeds within [[Application:Preware|Preware]].&lt;br /&gt;
&lt;br /&gt;
=== Apps in Preware ===&lt;br /&gt;
&lt;br /&gt;
The applications from this feeds can now be installed like other pakages in Preware. You have access to '''all''' free apps in this feed regardless of country, carrier or device type. You can also install your previously purchased apps on all of your devices (e.g. TouchPad apps on Enyo-capable Phones).&lt;br /&gt;
&lt;br /&gt;
You can configure Preware to show you all available Apps regardless of device compatibility. When you try to install an app that is not designed for your device a disclaimer message is shown, which you have to accept. &lt;br /&gt;
&lt;br /&gt;
==Operation notes==&lt;br /&gt;
&lt;br /&gt;
=== Limitations ===&lt;br /&gt;
&lt;br /&gt;
App Tuckerbox does '''not''' allow you to purchase apps. Purchasing and billing is only the business of HP. This is not a missing feature, it is intentional.&lt;br /&gt;
&lt;br /&gt;
=== Bugs ===&lt;br /&gt;
&lt;br /&gt;
No known bugs.&lt;br /&gt;
&lt;br /&gt;
== Changelog ==&lt;br /&gt;
&lt;br /&gt;
; 0.8.0&lt;br /&gt;
* The server check the api version and shows a message if you need to reregister.&lt;br /&gt;
&lt;br /&gt;
; 0.7.0&lt;br /&gt;
* Second beta release.&lt;br /&gt;
&lt;br /&gt;
; 0.6.0&lt;br /&gt;
* First beta release.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Angstrom_on_Touchpad&amp;diff=18027</id>
		<title>Angstrom on Touchpad</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Angstrom_on_Touchpad&amp;diff=18027"/>
		<updated>2011-08-28T15:13:22Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Update Angstrom */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Booting Angstrom on the TouchPad is actually fairly easy.  Here are the steps to get it going.&lt;br /&gt;
&lt;br /&gt;
=What to boot=&lt;br /&gt;
&lt;br /&gt;
For this we will have a beagleboard of Angstrom located in an LVM on the touchpad named ext2fs.  This is un-tested with an ext3 filesystem, but it will likely work.  The Angstrom rootfs needs to be right in the base of the LVM, not in a sub-folder.&lt;br /&gt;
&lt;br /&gt;
We are going to be creating a multi-file uImage.  It will be one file with both a uImage kernel as well as an initrd.&lt;br /&gt;
&lt;br /&gt;
=Gather required bits=&lt;br /&gt;
&lt;br /&gt;
First novaterm into the TouchPad and run the following commands&lt;br /&gt;
&lt;br /&gt;
 cd /var/home/root&lt;br /&gt;
 tar czvf boot.tgz -C /boot/ .&lt;br /&gt;
&lt;br /&gt;
Then exit out of novaterm and back on your PC run the following&lt;br /&gt;
&lt;br /&gt;
 mkdir -p uImage/initrd&lt;br /&gt;
 cd uImage&lt;br /&gt;
 novacom get file:///var/home/root/boot.tgz &amp;gt; boot.tgz&lt;br /&gt;
&lt;br /&gt;
This will have everything you need to create the multi-file uImage using whatever kernel is currently installed on your TouchPad.  I would recommend using either UberKernel or F15... something that gives console output on bootup.&lt;br /&gt;
&lt;br /&gt;
=initrd=&lt;br /&gt;
==Build the initrd==&lt;br /&gt;
&lt;br /&gt;
First we need to make an empty file that will be used for our initrd.  We will be starting off with an 8M initrd.&lt;br /&gt;
&lt;br /&gt;
 dd if=/dev/zero of=ramdisk bs=1M count=8&lt;br /&gt;
 mke2fs -Fvm0 ramdisk&lt;br /&gt;
 mount -o loop ramdisk initrd&lt;br /&gt;
&lt;br /&gt;
Now we have an empty initrd ramdisk file and it is mounted as a loopback so that we can put things into it.&lt;br /&gt;
&lt;br /&gt;
==Fill the initrd==&lt;br /&gt;
&lt;br /&gt;
This one is pretty simple.  We are going to fill the initrd with the contents of the boot.tgz EXCEPT for the kernel.&lt;br /&gt;
&lt;br /&gt;
 mkdir boottemp&lt;br /&gt;
 tar xzvf boot.tgz -C boottemp&lt;br /&gt;
 rm boottemp/uImage&lt;br /&gt;
 mv boottemp/uImage-2.6.35-palm-tenderloin &lt;br /&gt;
 mv boottemp/* initrd&lt;br /&gt;
&lt;br /&gt;
==Change the pivot_root==&lt;br /&gt;
&lt;br /&gt;
You need to edit the file /sbin/init within the initrd to alter what rootfs is loaded at bootup&lt;br /&gt;
&lt;br /&gt;
 vi initrd/sbin/init&lt;br /&gt;
&lt;br /&gt;
find these lines:&lt;br /&gt;
&lt;br /&gt;
 lvm.static lvchange -ay --ignorelockingfailure /dev/mapper/store-root&lt;br /&gt;
 &lt;br /&gt;
 # May need to say &amp;quot;don't update mtab&amp;quot; option below&lt;br /&gt;
 mount -o ro /dev/mapper/store-root /realroot&lt;br /&gt;
&lt;br /&gt;
And change them to &lt;br /&gt;
&lt;br /&gt;
 lvm.static lvchange -ay --ignorelockingfailure /dev/mapper/store-ext2fs&lt;br /&gt;
 &lt;br /&gt;
 # May need to say &amp;quot;don't update mtab&amp;quot; option below&lt;br /&gt;
 mount -o ro /dev/mapper/store-ext2fs /realroot&lt;br /&gt;
&lt;br /&gt;
And you are now done with creating the initrd.  You can umount initrd now if you like, or leave it mounted if you are going to be making changes and testing them.&lt;br /&gt;
&lt;br /&gt;
=Build the multi-file uImage=&lt;br /&gt;
&lt;br /&gt;
You will need the package uboot-mkimage (at least on Ubuntu) installed to do this&lt;br /&gt;
&lt;br /&gt;
==Cheater Script==&lt;br /&gt;
&lt;br /&gt;
I have worked up a script that runs the needed commands for you.&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 rm uMulti uRamdisk&lt;br /&gt;
 mkimage -A arm -O linux -T ramdisk -C none -d ramdisk uRamdisk&lt;br /&gt;
 mkimage -a 0 -e 0 -A arm -O linux -T multi -C none -d uImage-2.6.35-palm-tenderloin:uRamdisk uMulti&lt;br /&gt;
&lt;br /&gt;
Just name the file something like spin-kernel.sh and give it execute permission.  It should be inside of the uImage folder we made earlier, then give it a run.&lt;br /&gt;
&lt;br /&gt;
=Update Angstrom=&lt;br /&gt;
&lt;br /&gt;
You will need to chroot into the angstrom rootfs on the Touchpad over a novaterm session and install lvm with the command&lt;br /&gt;
&lt;br /&gt;
 opkg install lvm2&lt;br /&gt;
&lt;br /&gt;
Also, one thing that I have found is that the checkroot script was not running early enough so it was halting the boot due to the rootfs still being read-only.  To fix this go to /etc/rcS.d within your angstrom rootfs.  Find the symlink that points to ../init.d/checkroot and rename it to S01checkroot&lt;br /&gt;
&lt;br /&gt;
=Boot Angstrom=&lt;br /&gt;
&lt;br /&gt;
To do this, just put the Touchpad into recovery mode and memboot the multi-file uImage we made earlier.  Because we are membooting it, if something go's wrong and the Touchpad doesn't boot properly, you can force a reboot by holding Home+Power for 10 seconds and it will safely reboot into webOS!&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Angstrom_on_Touchpad&amp;diff=18025</id>
		<title>Angstrom on Touchpad</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Angstrom_on_Touchpad&amp;diff=18025"/>
		<updated>2011-08-28T15:10:49Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: Created page with &amp;quot;Booting Angstrom on the TouchPad is actually fairly easy.  Here are the steps to get it going.  =What to boot=  For this we will have a beagleboard of Angstrom located in an LVM ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Booting Angstrom on the TouchPad is actually fairly easy.  Here are the steps to get it going.&lt;br /&gt;
&lt;br /&gt;
=What to boot=&lt;br /&gt;
&lt;br /&gt;
For this we will have a beagleboard of Angstrom located in an LVM on the touchpad named ext2fs.  This is un-tested with an ext3 filesystem, but it will likely work.  The Angstrom rootfs needs to be right in the base of the LVM, not in a sub-folder.&lt;br /&gt;
&lt;br /&gt;
We are going to be creating a multi-file uImage.  It will be one file with both a uImage kernel as well as an initrd.&lt;br /&gt;
&lt;br /&gt;
=Gather required bits=&lt;br /&gt;
&lt;br /&gt;
First novaterm into the TouchPad and run the following commands&lt;br /&gt;
&lt;br /&gt;
 cd /var/home/root&lt;br /&gt;
 tar czvf boot.tgz -C /boot/ .&lt;br /&gt;
&lt;br /&gt;
Then exit out of novaterm and back on your PC run the following&lt;br /&gt;
&lt;br /&gt;
 mkdir -p uImage/initrd&lt;br /&gt;
 cd uImage&lt;br /&gt;
 novacom get file:///var/home/root/boot.tgz &amp;gt; boot.tgz&lt;br /&gt;
&lt;br /&gt;
This will have everything you need to create the multi-file uImage using whatever kernel is currently installed on your TouchPad.  I would recommend using either UberKernel or F15... something that gives console output on bootup.&lt;br /&gt;
&lt;br /&gt;
=initrd=&lt;br /&gt;
==Build the initrd==&lt;br /&gt;
&lt;br /&gt;
First we need to make an empty file that will be used for our initrd.  We will be starting off with an 8M initrd.&lt;br /&gt;
&lt;br /&gt;
 dd if=/dev/zero of=ramdisk bs=1M count=8&lt;br /&gt;
 mke2fs -Fvm0 ramdisk&lt;br /&gt;
 mount -o loop ramdisk initrd&lt;br /&gt;
&lt;br /&gt;
Now we have an empty initrd ramdisk file and it is mounted as a loopback so that we can put things into it.&lt;br /&gt;
&lt;br /&gt;
==Fill the initrd==&lt;br /&gt;
&lt;br /&gt;
This one is pretty simple.  We are going to fill the initrd with the contents of the boot.tgz EXCEPT for the kernel.&lt;br /&gt;
&lt;br /&gt;
 mkdir boottemp&lt;br /&gt;
 tar xzvf boot.tgz -C boottemp&lt;br /&gt;
 rm boottemp/uImage&lt;br /&gt;
 mv boottemp/uImage-2.6.35-palm-tenderloin &lt;br /&gt;
 mv boottemp/* initrd&lt;br /&gt;
&lt;br /&gt;
==Change the pivot_root==&lt;br /&gt;
&lt;br /&gt;
You need to edit the file /sbin/init within the initrd to alter what rootfs is loaded at bootup&lt;br /&gt;
&lt;br /&gt;
 vi initrd/sbin/init&lt;br /&gt;
&lt;br /&gt;
find these lines:&lt;br /&gt;
&lt;br /&gt;
 lvm.static lvchange -ay --ignorelockingfailure /dev/mapper/store-root&lt;br /&gt;
 &lt;br /&gt;
 # May need to say &amp;quot;don't update mtab&amp;quot; option below&lt;br /&gt;
 mount -o ro /dev/mapper/store-root /realroot&lt;br /&gt;
&lt;br /&gt;
And change them to &lt;br /&gt;
&lt;br /&gt;
 lvm.static lvchange -ay --ignorelockingfailure /dev/mapper/store-ext2fs&lt;br /&gt;
 &lt;br /&gt;
 # May need to say &amp;quot;don't update mtab&amp;quot; option below&lt;br /&gt;
 mount -o ro /dev/mapper/store-ext2fs /realroot&lt;br /&gt;
&lt;br /&gt;
And you are now done with creating the initrd.  You can umount initrd now if you like, or leave it mounted if you are going to be making changes and testing them.&lt;br /&gt;
&lt;br /&gt;
=Build the multi-file uImage=&lt;br /&gt;
&lt;br /&gt;
You will need the package uboot-mkimage (at least on Ubuntu) installed to do this&lt;br /&gt;
&lt;br /&gt;
==Cheater Script==&lt;br /&gt;
&lt;br /&gt;
I have worked up a script that runs the needed commands for you.&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 rm uMulti uRamdisk&lt;br /&gt;
 mkimage -A arm -O linux -T ramdisk -C none -d ramdisk uRamdisk&lt;br /&gt;
 mkimage -a 0 -e 0 -A arm -O linux -T multi -C none -d uImage-2.6.35-palm-tenderloin:uRamdisk uMulti&lt;br /&gt;
&lt;br /&gt;
Just name the file something like spin-kernel.sh and give it execute permission.  It should be inside of the uImage folder we made earlier, then give it a run.&lt;br /&gt;
&lt;br /&gt;
=Update Angstrom=&lt;br /&gt;
&lt;br /&gt;
One thing that I have found is that the checkroot script was not running early enough so it was halting the boot due to the rootfs still being read-only.  To fix this go to /etc/rcS.d within your angstrom rootfs.  Find the symlink that points to ../init.d/checkroot and rename it to S01checkroot&lt;br /&gt;
&lt;br /&gt;
=Boot Angstrom=&lt;br /&gt;
&lt;br /&gt;
To do this, just put the Touchpad into recovery mode and memboot the multi-file uImage we made earlier.  Because we are membooting it, if something go's wrong and the Touchpad doesn't boot properly, you can force a reboot by holding Home+Power for 10 seconds and it will safely reboot into webOS!&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=HP_TP_Key_mapping&amp;diff=17973</id>
		<title>HP TP Key mapping</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=HP_TP_Key_mapping&amp;diff=17973"/>
		<updated>2011-08-27T10:08:26Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* HP TouchPad's Key Mapping for Device Buttons */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== HP TouchPad's Key Mapping for Device Buttons==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== This page is under construction and is served as a reference page for now ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
event0 covers multiple GPIO keys&lt;br /&gt;
&lt;br /&gt;
event0 has 4 keys - KEY_VOLUMEDOWN, KEY_VOLUMEUP, KEY_REPLY and ?&lt;br /&gt;
&lt;br /&gt;
event0 they names are self-explanatory except KEY_REPLY is the home key... the key labeled ? is literally labeled as ? and it's purpose is unknown&lt;br /&gt;
&lt;br /&gt;
event1 is pmic8058_pwrkey  with KEY_END and KEY_POWER&lt;br /&gt;
&lt;br /&gt;
event2 is headset&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''tapping''' power sends KEY_END over event1, '''holding''' it (for 1/2 second) sends KEY_POWER&lt;br /&gt;
&lt;br /&gt;
--event0 is on the CPU itself.&lt;br /&gt;
&lt;br /&gt;
--event2 could be from the Audio Processor&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
evtest /dev/input/event0&lt;br /&gt;
&lt;br /&gt;
Input driver version is 1.0.0&lt;br /&gt;
&lt;br /&gt;
Input device ID: bus 0x19 vendor 0x1 product 0x1 version 0x100&lt;br /&gt;
&lt;br /&gt;
Input device name: &amp;quot;gpio-keys&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Supported events:&lt;br /&gt;
&lt;br /&gt;
Event type 0 (Sync)&lt;br /&gt;
&lt;br /&gt;
Event type 1 (Key)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Event code 114 (VolumeDown)&lt;br /&gt;
Event code 115 (VolumeUp)&lt;br /&gt;
Event code 232 (Reply)&lt;br /&gt;
Event code 249 (?)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
event type 5 (?)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
evtest /dev/input/event1&lt;br /&gt;
&lt;br /&gt;
Input driver version is 1.0.0&lt;br /&gt;
&lt;br /&gt;
Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0&lt;br /&gt;
&lt;br /&gt;
Input device name: &amp;quot;pmic8058_pwrkey&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Supported events:&lt;br /&gt;
&lt;br /&gt;
Event type 0 (Sync)&lt;br /&gt;
&lt;br /&gt;
Event type 1 (Key)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Event code 107 (End)&lt;br /&gt;
Event code 116 (Power)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
evtest /dev/input/event2&lt;br /&gt;
&lt;br /&gt;
Input driver version is 1.0.0&lt;br /&gt;
&lt;br /&gt;
Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0&lt;br /&gt;
&lt;br /&gt;
Input device name: &amp;quot;headset&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Supported events:&lt;br /&gt;
&lt;br /&gt;
Event type 0 (Sync)&lt;br /&gt;
Event type 1 (Key)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Event code 164 (PlayPause)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Event type 5 (?)&lt;br /&gt;
Event code 2 (?)&lt;br /&gt;
Event code 4 (?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==  sysfs locations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
udevadm info --query=all --name=/dev/input/event0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
P: /devices/platform/gpio-keys/input/input0/event0&lt;br /&gt;
&lt;br /&gt;
E: UDEV_LOG=3&lt;br /&gt;
&lt;br /&gt;
E: DEVPATH=/devices/platform/gpio-keys/input/input0/event0&lt;br /&gt;
&lt;br /&gt;
E: MAJOR=13&lt;br /&gt;
&lt;br /&gt;
E: MINOR=64&lt;br /&gt;
&lt;br /&gt;
E: DEVNAME=input/event0&lt;br /&gt;
&lt;br /&gt;
E: SUBSYSTEM=input&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
udevadm info --query=all --name=/dev/input/event1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
P: /devices/i2c-6/6-0055/pm8058-pwrkey/input/input1/event1&lt;br /&gt;
&lt;br /&gt;
E: UDEV_LOG=3&lt;br /&gt;
&lt;br /&gt;
E: DEVPATH=/devices/i2c-6/6-0055/pm8058-pwrkey/input/input1/event1&lt;br /&gt;
&lt;br /&gt;
E: MAJOR=13&lt;br /&gt;
&lt;br /&gt;
E: MINOR=65&lt;br /&gt;
&lt;br /&gt;
E: DEVNAME=input/event1&lt;br /&gt;
&lt;br /&gt;
E: SUBSYSTEM=input&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
udevadm info --query=all --name=/dev/input/event2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
P: /devices/platform/soc-audio.0/sound/card0/input2/event2&lt;br /&gt;
&lt;br /&gt;
E: UDEV_LOG=3&lt;br /&gt;
&lt;br /&gt;
E: DEVPATH=/devices/platform/soc-audio.0/sound/card0/input2/event2&lt;br /&gt;
&lt;br /&gt;
E: MAJOR=13&lt;br /&gt;
&lt;br /&gt;
E: MINOR=66&lt;br /&gt;
&lt;br /&gt;
E: DEVNAME=input/event2&lt;br /&gt;
&lt;br /&gt;
E: SUBSYSTEM=input&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=HP_BT_Key_mapping&amp;diff=17961</id>
		<title>HP BT Key mapping</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=HP_BT_Key_mapping&amp;diff=17961"/>
		<updated>2011-08-27T08:35:14Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: moved HP BT Key mapping to HP TP Key mapping&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[HP TP Key mapping]]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=HP_TP_Key_mapping&amp;diff=17959</id>
		<title>HP TP Key mapping</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=HP_TP_Key_mapping&amp;diff=17959"/>
		<updated>2011-08-27T08:35:14Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: moved HP BT Key mapping to HP TP Key mapping&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== HP's TouchPad Bluetooth Keyboard Mapping ==&lt;br /&gt;
&lt;br /&gt;
This page is under construction and is served as a reference page for now&lt;br /&gt;
&lt;br /&gt;
event0 is the volume&lt;br /&gt;
&lt;br /&gt;
event0 has 4 keys - KEY_VOLUMEDOWN, KEY_VOLUMEUP, KEY_REPLY and ?&lt;br /&gt;
&lt;br /&gt;
event0 is multiple gpio keys&lt;br /&gt;
&lt;br /&gt;
KEY_REPLY looks to be the home button&lt;br /&gt;
&lt;br /&gt;
event0 they names are self-explanitory except KEY_REPLY is the home key&lt;br /&gt;
&lt;br /&gt;
event1 is pmic8058_pwrkey  &lt;br /&gt;
&lt;br /&gt;
event2 is headset&lt;br /&gt;
&lt;br /&gt;
power button '''tap''' hits KEY_END over event1&lt;br /&gt;
&lt;br /&gt;
'''tapping''' power sends KEY_END over event1, '''holding''' it sends KEY_POWER&lt;br /&gt;
&lt;br /&gt;
--event0 is on the CPU itself.&lt;br /&gt;
&lt;br /&gt;
--event2 could be from the Audio Processor&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
evtest /dev/input/event0&lt;br /&gt;
&lt;br /&gt;
Input driver version is 1.0.0&lt;br /&gt;
&lt;br /&gt;
Input device ID: bus 0x19 vendor 0x1 product 0x1 version 0x100&lt;br /&gt;
&lt;br /&gt;
Input device name: &amp;quot;gpio-keys&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Supported events:&lt;br /&gt;
&lt;br /&gt;
Event type 0 (Sync)&lt;br /&gt;
&lt;br /&gt;
Event type 1 (Key)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Event code 114 (VolumeDown)&lt;br /&gt;
Event code 115 (VolumeUp)&lt;br /&gt;
Event code 232 (Reply)&lt;br /&gt;
Event code 249 (?)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
event type 5 (?)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
evtest /dev/input/event1&lt;br /&gt;
&lt;br /&gt;
Input driver version is 1.0.0&lt;br /&gt;
&lt;br /&gt;
Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0&lt;br /&gt;
&lt;br /&gt;
Input device name: &amp;quot;pmic8058_pwrkey&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Supported events:&lt;br /&gt;
&lt;br /&gt;
Event type 0 (Sync)&lt;br /&gt;
&lt;br /&gt;
Event type 1 (Key)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Event code 107 (End)&lt;br /&gt;
Event code 116 (Power)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
evtest /dev/input/event2&lt;br /&gt;
&lt;br /&gt;
Input driver version is 1.0.0&lt;br /&gt;
&lt;br /&gt;
Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0&lt;br /&gt;
&lt;br /&gt;
Input device name: &amp;quot;headset&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Supported events:&lt;br /&gt;
&lt;br /&gt;
Event type 0 (Sync)&lt;br /&gt;
Event type 1 (Key)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Event code 164 (PlayPause)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Event type 5 (?)&lt;br /&gt;
Event code 2 (?)&lt;br /&gt;
Event code 4 (?)&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Internals_PDK&amp;diff=17523</id>
		<title>WebOS Internals PDK</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Internals_PDK&amp;diff=17523"/>
		<updated>2011-07-25T18:26:27Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Start setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: SDL]]&lt;br /&gt;
Palm's binary sdk  the &amp;quot;Plugin Developer Kit&amp;quot; became available to all developers in March 2010.&lt;br /&gt;
&lt;br /&gt;
When the widk was developed, the Palm PDK didn't exist, and until Dec 2010, it was not possible to run the PDK in Linux.  If you would like to run the official Palm PDK, see [[PDK on Linux]] for directions.&lt;br /&gt;
&lt;br /&gt;
In addition to the PDK, webOS Internals has released a full &amp;quot;WIDK&amp;quot; (webOS Internals Development Kit) for you using Scratchbox2.  &lt;br /&gt;
&lt;br /&gt;
Less than 10% of developers in the webOS developer community use Linux variants. Among those 10% there are dozens of different linux distributions that people use. Palm, therefore has chosen to support only Mac and Windows platforms for their PDK.  Palm recommends that Linux based developers use the webOS-internals WIDK instead.  &lt;br /&gt;
&lt;br /&gt;
We ''strongly'' urge the open-source homebrew community to standardize on this WIDK.   It uses the same underlying technologies, and is entirely open.  &lt;br /&gt;
&lt;br /&gt;
Scratchbox 2 is a cross-compilation engine, it can be used to create a highly flexible SDK.&lt;br /&gt;
&lt;br /&gt;
As installed below, the install process uses a script which extracts the required Palm provided files from a copy of webOS doctor, and  downloads from other sources, and builds a complete compilation environment automatically which can compile SDL and openGLES apps for webOS.  &lt;br /&gt;
&lt;br /&gt;
SB2 ''itself'' is totally distribution neutral but the webOS cross-compile environment is designed and tested on Ubuntu 11.04 32 bit. See [[WebOS_Internals_PDK_on_Mandriva]] if you want to run it on Mandriva.  If you want to run the WIDK on other distributions and are willing to support that yourself and not ask webOS Internals any questions about it then please enjoy and if you succeed come back here and make a new article on how you did it.  Otherwise, use the recommended OS.&lt;br /&gt;
&lt;br /&gt;
The webOS Internals team ''strongly suggest'' apt-get install into the Ubuntu environment only for this purpose. The same installation of Sun Virtualbox which hosts the Palm SDK emulator can host an Ubuntu 11.04 server with very little effort on any operating system. &lt;br /&gt;
&lt;br /&gt;
Developers wanting to work in a Gentoo environment 'without' SB2 can consider using the [http://www.webos-internals.org/wiki/Gentoo_NDK PuffTheMagic NDK].&lt;br /&gt;
&lt;br /&gt;
==SB2 Homepage==&lt;br /&gt;
[http://www.freedesktop.org/wiki/Software/sbox2 http://www.freedesktop.org/wiki/Software/sbox2]pdk&lt;br /&gt;
&lt;br /&gt;
==License==&lt;br /&gt;
Scratchbox 2 is distributed under LGPL version 2.1, portions are under GPL version 2. Some minor stuff is under MIT style license.&lt;br /&gt;
&lt;br /&gt;
== Installation on Ubuntu for webOS PDK cross compiling ==&lt;br /&gt;
&lt;br /&gt;
If setting up in a Virtual Box instance, it is recommended that you first complete the openSSH config as described in the VirtualBox tips for Windows users to the right.  This is helpful even with a Linux host, as SSH into the PDK Virtual Machine will allow copy and paste of the commands listed below and reduce errors.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; clear:right; width:30%&amp;quot;&amp;gt;{{Ubuntu_VM_notes_for_Windows_users}}&amp;lt;/div&amp;gt;&lt;br /&gt;
===Toolchain===&lt;br /&gt;
&lt;br /&gt;
===Prerequisites===&lt;br /&gt;
Your Ubuntu installation will need the following installed.  If you do not have them, run the command after the package name. You can test if they are found by just typing the command name.  If it says command not found, you need to install it.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|'''git''' || sudo apt-get install git-core&lt;br /&gt;
|-&lt;br /&gt;
|'''gcc''' || sudo apt-get install build-essential&lt;br /&gt;
|-&lt;br /&gt;
|'''curl''' || sudo apt-get install curl&lt;br /&gt;
|-&lt;br /&gt;
|'''unzip'''|| sudo apt-get install unzip&lt;br /&gt;
|-&lt;br /&gt;
|'''7zip'''|| sudo apt-get install p7zip-full&lt;br /&gt;
|-&lt;br /&gt;
|'''autoconf'''|| sudo apt-get install autoconf&lt;br /&gt;
|-&lt;br /&gt;
|'''subversion'''|| sudo apt-get install subversion&lt;br /&gt;
|-&lt;br /&gt;
|'''libtool'''|| sudo apt-get install libtool&lt;br /&gt;
|-&lt;br /&gt;
|'''wget'''|| sudo apt-get install wget&lt;br /&gt;
|-&lt;br /&gt;
|'''pkg-config'''|| sudo apt-get install pkg-config&lt;br /&gt;
|-&lt;br /&gt;
|'''gettext'''|| sudo apt-get install gettext&lt;br /&gt;
|-&lt;br /&gt;
|'''fakeroot'''|| sudo apt-get install fakeroot&lt;br /&gt;
|-&lt;br /&gt;
|'''javac *'''|| sudo apt-get install sun-java6-jdk&lt;br /&gt;
|-&lt;br /&gt;
|'''ant'''|| sudo apt-get install ant&lt;br /&gt;
|-&lt;br /&gt;
|'''cmake'''|| sudo apt-get install cmake&lt;br /&gt;
|-&lt;br /&gt;
|'''xsltproc'''|| sudo apt-get install xsltproc&lt;br /&gt;
|-&lt;br /&gt;
|'''intltool'''|| sudo apt-get install intltool&lt;br /&gt;
|-&lt;br /&gt;
|'''mkimage'''|| sudo apt-get install uboot-mkimage&lt;br /&gt;
|-&lt;br /&gt;
|'''lsdiff'''|| sudo apt-get install patchutils&lt;br /&gt;
|-&lt;br /&gt;
|'''flex'''|| sudo apt-get install flex&lt;br /&gt;
|-&lt;br /&gt;
|'''bison'''|| sudo apt-get install bison&lt;br /&gt;
|-&lt;br /&gt;
|'''libssl-dev'''|| sudo apt-get install libssl-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''zlib1g-dev'''|| sudo apt-get install zlib1g-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''libbz2-dev'''|| sudo apt-get install libbz2-dev&lt;br /&gt;
|-&lt;br /&gt;
|'''xar *'''|| sudo apt-get install xar&lt;br /&gt;
|-&lt;br /&gt;
|'''help2man'''|| sudo apt-get install help2man&lt;br /&gt;
|-&lt;br /&gt;
|'''texinfo'''|| sudo apt-get install texinfo&lt;br /&gt;
|-&lt;br /&gt;
|'''automake 1.10'''|| sudo apt-get install automake1.10&lt;br /&gt;
|-&lt;br /&gt;
|'''autopoint'''|| sudo apt-get install autopoint&lt;br /&gt;
|-&lt;br /&gt;
|'''xutils-dev'''|| sudo apt-get install xutils-dev&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* it has been reported that sun-java6-jdk isn't necessary&lt;br /&gt;
* On Ubuntu 11.04 xar might not install using &amp;lt;code&amp;gt;sudo apt-get install xar&amp;lt;/code&amp;gt; See Note 2 Below&lt;br /&gt;
&lt;br /&gt;
If you're uncertain at all, and you're using Ubuntu 11.04, just cut and paste the following.  If they are already installed, they'll be skipped. xar is not included in the code below.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install git-core build-essential curl unzip p7zip-full autoconf subversion libtool wget pkg-config gettext fakeroot ant xsltproc intltool uboot-mkimage patchutils flex bison libssl-dev zlib1g-dev libbz2-dev help2man texinfo automake1.10 autopoint xutils-dev cmake&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If you are a beginner with Ubuntu Linux Distribution, you should update all the packages on your system to avoid problems when you will compile.&lt;br /&gt;
&lt;br /&gt;
'''Note 2:''' If you're using Ubuntu 11.04 and &amp;lt;code&amp;gt;xar&amp;lt;/code&amp;gt; cannot be installed with &amp;lt;code&amp;gt;sudo apt-get install xar&amp;lt;/code&amp;gt;, then you have to download two &amp;lt;code&amp;gt;.deb&amp;lt;/code&amp;gt;-files manually and install them (in the order they are listed):&lt;br /&gt;
# [http://packages.ubuntu.com/hardy/libxar1 libxar1]&lt;br /&gt;
# [http://packages.ubuntu.com/hardy/xar xar]&lt;br /&gt;
After that execute the above command again.&lt;br /&gt;
&lt;br /&gt;
Use these 2 command line :&amp;lt;BR&amp;gt;&lt;br /&gt;
Update repositories   :&lt;br /&gt;
 sudo aptitude update&lt;br /&gt;
And next, update the packages :&lt;br /&gt;
 sudo aptitude safe-upgrade&lt;br /&gt;
&lt;br /&gt;
If you're on a 64-bit system, you will also need to install the ia32-libs package.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The ''make toolchain'' command and later steps will download approximately a half-gig of tools and sources from various locations.  Do not start this if you do not have time for a large download.  Additionally, if you already have downloaded a copy of the correct version of the WebOS doctor, you can reduce the download time by copying the doctor file into cross-compile/doctors/ with the correct name.  This will cause the appropriate command to skip that download.  Note that codesourcery rate limts downloads and at a minimum this process will take 10 to 15 minutes irrespective of your connection speed. &lt;br /&gt;
&lt;br /&gt;
====Start setup====&lt;br /&gt;
Create a preware folder, copy the cross-compile tools into it (if you have not installed git, apt-get install git-core), and use a make script to begin the set up of the compilation toolchain. &lt;br /&gt;
&lt;br /&gt;
 sudo mkdir -p /srv/preware&lt;br /&gt;
 cd /srv/preware&lt;br /&gt;
 sudo chmod 777 .&lt;br /&gt;
 git clone git://git.webos-internals.org/preware/cross-compile.git&lt;br /&gt;
 cd cross-compile&lt;br /&gt;
 make toolchain&lt;br /&gt;
&lt;br /&gt;
If errors occur, browse the [http://git.webos-internals.org/preware/cross-compile/ repository online] and checkout earlier commits until you get something that gets through &amp;quot;make toolchain&amp;quot; and the later &amp;quot;make stage&amp;quot; commands like so:&lt;br /&gt;
&lt;br /&gt;
 git checkout &amp;lt;commit-ish&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Verify sh shell====&lt;br /&gt;
On Ubuntu /bin/sh is a symbolic link to dash.  This will cause errors with the make stage command below, as some of the scripts assume bash.  Run the following command to see what shell sh is linked to.&lt;br /&gt;
&lt;br /&gt;
  ls -l /bin/sh&lt;br /&gt;
&lt;br /&gt;
If the result is a link to dash:&lt;br /&gt;
&lt;br /&gt;
  lrwxrwxrwx 1 root root 4 2010-07-06 23:55 /bin/sh -&amp;gt; dash&lt;br /&gt;
&lt;br /&gt;
You will want to correct it with the following:&lt;br /&gt;
&lt;br /&gt;
  sudo dpkg-reconfigure dash&lt;br /&gt;
&lt;br /&gt;
You will be asked if you want to &amp;quot;Install dash as /bin/sh?&amp;quot;.  Select &amp;quot;&amp;lt;No&amp;gt;&amp;quot; and bash will be used.  Rerun the command to verify:&lt;br /&gt;
&lt;br /&gt;
  ls -l /bin/sh&lt;br /&gt;
&lt;br /&gt;
You should now see:&lt;br /&gt;
&lt;br /&gt;
  lrwxrwxrwx 1 root root 4 2010-07-09 21:12 /bin/sh -&amp;gt; bash&lt;br /&gt;
&lt;br /&gt;
====Setup Scratchbox====&lt;br /&gt;
Now, use apt-get to setup scratchbox...&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install scratchbox2 qemu-kvm-extras (in Debian install qemu-user and qemu-system instead of qemu-kvm-extras)&lt;br /&gt;
&lt;br /&gt;
...and set it up for compiling for webOS. &lt;br /&gt;
&lt;br /&gt;
 cd /srv/preware/cross-compile/toolchain/arm-2007q3/arm-none-linux-gnueabi/libc&lt;br /&gt;
 PATH=/srv/preware/cross-compile/toolchain/arm-2007q3/bin:${PATH} sb2-init -c /usr/bin/qemu-arm armv7 arm-none-linux-gnueabi-gcc&lt;br /&gt;
 PATH=/srv/preware/cross-compile/toolchain/arm-2007q3/bin:${PATH} sb2-init -c /usr/bin/qemu-arm armv6 arm-none-linux-gnueabi-gcc&lt;br /&gt;
 cd /srv/preware/cross-compile&lt;br /&gt;
&lt;br /&gt;
Then:&lt;br /&gt;
&lt;br /&gt;
 make setup&lt;br /&gt;
&lt;br /&gt;
Once this setup is complete, compiling sdl apps for webOS is very simple.&lt;br /&gt;
&lt;br /&gt;
==Verified installed clean list==&lt;br /&gt;
&lt;br /&gt;
If you have successfully built the WIDK from scratch, with NO problems, feel free to add your information to this list.  This will help us assess what distributions and versions it is fully compatible with.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|'''IRC name'''&lt;br /&gt;
|'''Linux Distribution'''&lt;br /&gt;
|'''Version'''&lt;br /&gt;
|'''Date'''&lt;br /&gt;
|'''Comments'''&lt;br /&gt;
|-&lt;br /&gt;
|Scoutcamper&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|9.04,9.10,10.04,10.10&lt;br /&gt;
|10-18-10&lt;br /&gt;
|Works Great!&lt;br /&gt;
|-&lt;br /&gt;
|elpollodiablo1&lt;br /&gt;
|Ubuntu&lt;br /&gt;
|11.04&lt;br /&gt;
|7-13-11&lt;br /&gt;
|Works With updated Wiki Info&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Errors during make stage ==&lt;br /&gt;
&lt;br /&gt;
===automake1.10===&lt;br /&gt;
&lt;br /&gt;
If you see the error below, you need the latest automake (1.10)&lt;br /&gt;
&lt;br /&gt;
 /usr/share/automake-1.9/am/depend2.am: am__fastdepOBJC does not appear in AM_CONDITIONAL&lt;br /&gt;
 configure.in:88: installing `./config.guess'&lt;br /&gt;
 configure.in:88: installing `./config.sub'&lt;br /&gt;
 Makefile.am: installing `./INSTALL'&lt;br /&gt;
 autoreconf2.50: automake failed with exit status: 1&lt;br /&gt;
&lt;br /&gt;
Install automake1.10 and it should work (according to [http://old.nabble.com/AC_PROG_OBJC-and-automake-1.9-td22434760.html this page])&lt;br /&gt;
&lt;br /&gt;
====Fix mmap errors====&lt;br /&gt;
The following commands appear redundant.  They are not.  The install this fixes your mmap config to fix an mmap: permission denied error, but we don't need the package itself. (Do each command separately with cut and paste).&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install qemu-arm-static&lt;br /&gt;
 sudo apt-get remove qemu-arm-static&lt;br /&gt;
&lt;br /&gt;
It appears that this package has been renamed qemu-kvm-extras-static in Ubuntu 11.04.&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;span style=&amp;quot;font-size:150%&amp;quot;&amp;gt;OR&amp;lt;/span&amp;gt; As a workaround, if this package is not available, &lt;br /&gt;
::: the following commands can be executed in a root shell (sudo -s) to fix the mmap configuration to enable qemu-arm to work.&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;vm.mmap_min_addr = 4096&amp;quot; &amp;gt; /etc/sysctl.d/mmap_min_addr.conf&lt;br /&gt;
 /etc/init.d/procps restart&lt;br /&gt;
&lt;br /&gt;
(note that the value should not be &amp;quot;0&amp;quot;. 4096 is chosen to avoid null pointer attacks.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Libtool===&lt;br /&gt;
&lt;br /&gt;
 make[5]: Entering directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6/src'&lt;br /&gt;
 /bin/sh ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -Wall -g -O2 -MT libdotconf_la-dotconf.lo -MD -MP -MF .deps/libdotconf_la-dotconf.Tpo -c -o libdotconf_la-dotconf.lo `test -f 'dotconf.c' || echo './'`dotconf.c&lt;br /&gt;
 libtool: Version mismatch error.  This is libtool 2.2.6b, but the&lt;br /&gt;
 libtool: definition of this LT_INIT comes from libtool 2.2.6.&lt;br /&gt;
 libtool: You should recreate aclocal.m4 with macros from libtool 2.2.6b&lt;br /&gt;
 libtool: and run autoconf again.&lt;br /&gt;
 make[5]: *** [libdotconf_la-dotconf.lo] Error 63&lt;br /&gt;
 make[5]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6/src'&lt;br /&gt;
 make[4]: *** [install-recursive] Error 1&lt;br /&gt;
 make[4]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf/build/armv6'&lt;br /&gt;
 make[3]: *** [build/armv6.built] Error 2&lt;br /&gt;
 make[3]: Leaving directory `/srv/preware/cross-compile/packages/common/libdotconf'&lt;br /&gt;
 make[2]: *** [build_common/libdotconf] Error 2&lt;br /&gt;
 make[2]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make[1]: *** [staging-armv6] Error 2&lt;br /&gt;
 make[1]: Leaving directory `/srv/preware/cross-compile'&lt;br /&gt;
 make: *** [stage] Error 2&lt;br /&gt;
&lt;br /&gt;
Confirmed by 3 people. Fix this by either (your choice)&lt;br /&gt;
*upgrading to Ubuntu 10.04 or newer (the WIDK now relies on a slightly newer version of libtool that's not in 9.10 or earlier)&lt;br /&gt;
*updating libtool to 2.2.6b-2 (backported to 9.10, see available downloads on http://linuxappfinder.com/package/libtool#ubuntu_karmicpartner)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you're getting an error where sb2-init gives you the following output:&lt;br /&gt;
&lt;br /&gt;
 checking for gcc... gcc&lt;br /&gt;
 checking for C compiler default output file name... a.out&lt;br /&gt;
 checking whether the C compiler works... configure: error: cannot run C compiled programs.&lt;br /&gt;
 If you meant to cross compile, use `--host'.&lt;br /&gt;
 See `config.log' for more details.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 Running /usr/bin/sb2-build-libtool failed&lt;br /&gt;
 You can run this manually later, otherwise your&lt;br /&gt;
 sb2 environment is correctly setup and ready to use&lt;br /&gt;
&lt;br /&gt;
You need to upgrade qemu. Alternatively, if your sb2-init output fails with a different output, like this:&lt;br /&gt;
&lt;br /&gt;
 checking for gcc... gcc&lt;br /&gt;
 checking for C compiler default output file name... a.out&lt;br /&gt;
 checking whether the C compiler works... configure: error: cannot run C compiled programs.&lt;br /&gt;
 If you meant to cross compile, use `--host'.&lt;br /&gt;
 See `config.log' for more details.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 sb2-init completed successfully, have fun!&lt;br /&gt;
&lt;br /&gt;
Then you need to upgrade scratchbox, too (install 2.0 instead of 1.99).&lt;br /&gt;
&lt;br /&gt;
=== ecore ===&lt;br /&gt;
*TRUE and FALSE are not defined:&lt;br /&gt;
Manually add the definition:&lt;br /&gt;
&lt;br /&gt;
 #ifndef TRUE&lt;br /&gt;
 # define TRUE 1&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
 #ifndef FALSE&lt;br /&gt;
 # define FALSE 0&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;$po_makefile_in&amp;lt;/code&amp;gt; could not be found:&lt;br /&gt;
**Open the file &amp;lt;code&amp;gt;/srv/preware/cross-compile/packages/dev-e/ecore/build/src/configure.ac&amp;lt;/code&amp;gt; and search for the line with: &amp;lt;code&amp;gt;$po_makefile_in&amp;lt;/code&amp;gt; (in my case line 1437) and replace it with &amp;lt;code&amp;gt;po/Makefile.in&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== /bin/sh errors ===&lt;br /&gt;
If you are getting a &amp;quot;bad fd number&amp;quot; or other /bin/sh error, make sure your /bin/sh points to bash, not another shell (such as dash.)&lt;br /&gt;
&lt;br /&gt;
Go back through the Verify sh shell section above to correct.&lt;br /&gt;
&lt;br /&gt;
=== further download errors ===&lt;br /&gt;
&lt;br /&gt;
rwhitby's suggestion:&lt;br /&gt;
&lt;br /&gt;
If you don't need that package which is failing for you, just move it to the nonworking directory and try again.&lt;br /&gt;
&lt;br /&gt;
14 July 2011=Using Rod's approach: So far I had to move fuse, unionfs-fuse, dev-gl, voip and x (pango and pixman failed). Using Ubuntu 11.04.&lt;br /&gt;
&lt;br /&gt;
=== X--tag=CC: command not found ===&lt;br /&gt;
&lt;br /&gt;
While running '''make stage''' on Ubuntu 10.10, I got the following error during compilation of sdl-gfx:&lt;br /&gt;
&lt;br /&gt;
 /bin/sh ./libtool --tag=CC   --mode=compile gcc -DPACKAGE_NAME=\&amp;quot;\&amp;quot; -DPACKAGE_TARNAME=\&amp;quot;\&amp;quot; -DPACKAGE_VERSION=\&amp;quot;\&amp;quot; -DPACKAGE_STRING=\&amp;quot;\&amp;quot; -DPACKAGE_BUGREPORT=\&amp;quot;\&amp;quot; -DPACKAGE_URL=\&amp;quot;\&amp;quot; -DPACKAGE=\&amp;quot;SDL_gfx\&amp;quot; -DVERSION=\&amp;quot;2.0.20\&amp;quot; -DSTDC_HEADERS=1  -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1  -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\&amp;quot;.libs/\&amp;quot; -DX_DISPLAY_MISSING=1 -DBUILD_DLL -I.     -g -O2 -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -MT SDL_gfxPrimitives.lo -MD -MP -MF .deps/SDL_gfxPrimitives.Tpo -c -o  SDL_gfxPrimitives.lo SDL_gfxPrimitives.c&lt;br /&gt;
 ./libtool: line 847: X--tag=CC: command not found&lt;br /&gt;
 ./libtool: line 880: libtool: ignoring unknown tag : command not found&lt;br /&gt;
 ./libtool: line 847: X--mode=compile: command not found&lt;br /&gt;
 ./libtool: line 1014: *** Warning: inferring the mode of operation is deprecated.: command not found&lt;br /&gt;
 ./libtool: line 1015: *** Future versions of Libtool will require --mode=MODE be specified.: command not found&lt;br /&gt;
 ./libtool: line 1158: Xgcc: command not found&lt;br /&gt;
 ./libtool: line 1158: X-DPACKAGE_NAME=&amp;quot;&amp;quot;: command not found&lt;br /&gt;
 ./libtool: line 1158: X-DPACKAGE_TARNAME=&amp;quot;&amp;quot;: command not found&lt;br /&gt;
&lt;br /&gt;
In order to fix this problem, I had to run this command to set &amp;lt;code&amp;gt;$echo&amp;lt;/code&amp;gt; (which gets used in line 847 of the libtool script):&lt;br /&gt;
&lt;br /&gt;
 export echo=echo&lt;br /&gt;
&lt;br /&gt;
and re-run &amp;lt;code&amp;gt;make stage&amp;lt;/code&amp;gt; in the same shell session.&lt;br /&gt;
&lt;br /&gt;
=== missing macro AM_PATH_SDL in making libsdl-gfx ===&lt;br /&gt;
In Ubuntu Server 11.04 amd64 I had to install the package libsdl1.2-dev to get past this.  I also needed the X--tag=CC fix above.&lt;br /&gt;
Also for Ubuntu 11.04 i386 install the package libsdl1.2-dev.&lt;br /&gt;
&lt;br /&gt;
==Sample build of [[Application:Doom]]==&lt;br /&gt;
&lt;br /&gt;
Now, go to [[Building DOOM with scratchbox2]] and follow the simple directions.&lt;br /&gt;
&lt;br /&gt;
==In Process Enhancements==&lt;br /&gt;
[[Extracting the PDK on Linux]]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17405</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17405"/>
		<updated>2011-07-19T08:42:22Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
*It must support storage and query of every key within the ipkg packages file (including the ones jammed into the source line&lt;br /&gt;
*(Optional)Support for predefined queries&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well.&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A query with multiple options for a filter can also be performed. The first example would return packages from all feeds&lt;br /&gt;
but if you wanted results from only the webos-internals and webos-patches feeds that is accomplished by supplying an array&lt;br /&gt;
as the feed filter as in the following example&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;feed&amp;quot;:[&amp;quot;webos-internals&amp;quot;,&amp;quot;webos-patches&amp;quot;]},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Predefined Queries=&lt;br /&gt;
&lt;br /&gt;
These would be accomplished by sending a query similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;preset&amp;quot;:&amp;quot;preware-feed-pull&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API server would be pre-programmed for certain predefined queries, it would know what data should be returned as part of that preset.  We could make as many of these as needed, but I suspect that only a small handfull would be needed.  This would aid code simplicity when it comes time to implement this API on the client side as well as making the client side code easier to maintain.&lt;br /&gt;
&lt;br /&gt;
Should we need some new field sent along for some new feature in a package that uses the API, we could adjust the response in one place, on the server, and that newly required data would be sent along.&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
having the API servers update their information can be accomplished in several ways:&lt;br /&gt;
&lt;br /&gt;
#We can either have the API servers run a database update on a schedule&lt;br /&gt;
#A GET request to a URL by the autobuilder whenever a build pass completes with a new/updated package&lt;br /&gt;
#Autobuilder conencts via SSH and does a touch on a file, API server has a cron to check for that file and run an update.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkgrest&amp;diff=17397</id>
		<title>Ipkgrest</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkgrest&amp;diff=17397"/>
		<updated>2011-07-19T07:25:34Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: moved Ipkgrest to Ipkg API: it isn't fully restful, so I don't want to cause confusion with the name of the page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Ipkg API]]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17395</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17395"/>
		<updated>2011-07-19T07:25:34Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: moved Ipkgrest to Ipkg API: it isn't fully restful, so I don't want to cause confusion with the name of the page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
*It must support storage and query of every key within the ipkg packages file (including the ones jammed into the source line&lt;br /&gt;
*(Optional)Support for predefined queries&lt;br /&gt;
*(Optional)Support for dynamic storage of arbitrary new keys if a new one should crop up&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well.&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A query with multiple options for a filter can also be performed. The first example would return packages from all feeds&lt;br /&gt;
but if you wanted results from only the webos-internals and webos-patches feeds that is accomplished by supplying an array&lt;br /&gt;
as the feed filter as in the following example&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;feed&amp;quot;:[&amp;quot;webos-internals&amp;quot;,&amp;quot;webos-patches&amp;quot;]},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Predefined Queries=&lt;br /&gt;
&lt;br /&gt;
These would be accomplished by sending a query similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;preset&amp;quot;:&amp;quot;preware-feed-pull&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API server would be pre-programmed for certain predefined queries, it would know what data should be returned as part of that preset.  We could make as many of these as needed, but I suspect that only a small handfull would be needed.  This would aid code simplicity when it comes time to implement this API on the client side as well as making the client side code easier to maintain.&lt;br /&gt;
&lt;br /&gt;
Should we need some new field sent along for some new feature in a package that uses the API, we could adjust the response in one place, on the server, and that newly required data would be sent along.&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
having the API servers update their information can be accomplished in several ways:&lt;br /&gt;
&lt;br /&gt;
#We can either have the API servers run a database update on a schedule&lt;br /&gt;
#A GET request to a URL by the autobuilder whenever a build pass completes with a new/updated package&lt;br /&gt;
#Autobuilder conencts via SSH and does a touch on a file, API server has a cron to check for that file and run an update.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17301</id>
		<title>WebOS Doctor Versions</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17301"/>
		<updated>2011-07-15T11:50:58Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* MD5 sums */  correcting date&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to get webOS ROM ==&lt;br /&gt;
&lt;br /&gt;
You can download webOS ROM for your specific Palm device at http://ws.palm.com/webosdoctor/serialnumberinitial.htm &lt;br /&gt;
by using your Palm device serial number.&lt;br /&gt;
&lt;br /&gt;
== Serial Numbers ==&lt;br /&gt;
&lt;br /&gt;
Please add the first five characters of your serial number in the appropriate download link section below if it is not there already. Then put your serial number in http://palm.com/rom to get the text inside the brackets describing your device configuration.&lt;br /&gt;
&lt;br /&gt;
== Download links ==&lt;br /&gt;
It seems the webOS Doctor jar files provided by Palm keep changing:&lt;br /&gt;
&lt;br /&gt;
'''''NOTE: Since March 18th 2010, the Palm servers are no longer hosting old WebOSDoctor versions via the links below. The current versions are still available.'''''&lt;br /&gt;
=== Tablet ===&lt;br /&gt;
==== Wifi Only ====&lt;br /&gt;
* HSTNH-129C: 5CL1XXXXXX: FB359UAXXXX (HP TouchPad 10&amp;quot; 32GB Wifi Only)&lt;br /&gt;
* HSTNH-129C: 5CL1XXXXXX: FB355UAXXXX (HP TouchPad 10&amp;quot; 16GB Wifi Only)&lt;br /&gt;
* version 3.0.0 http://palm.cdnetworks.net/rom/touchpad/wd300wifi/webosdoctorp300hstnhwifi.jar&lt;br /&gt;
&lt;br /&gt;
=== Phone ===&lt;br /&gt;
==== Sprint ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5PE0XXXXXXX (Pre on the Sprint network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/sr1ntp121rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/sr1ntp131rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pre/p135r0d12302009/sr1ntp135rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/sr1ntp1351rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/sr1ntp140rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pre/p1411r0d03312010/sr1ntp1411rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d08102010/spr1ntp145rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi =====&lt;br /&gt;
*P120EWW: P6P20XXXXXXX (Pixi on the Sprint network)&lt;br /&gt;
* version 1.3.1  http://palm.cdnetworks.net/rom/pixi/px131r0d11172009/sr1ntp131rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.2 http://palm.cdnetworks.net/rom/pixi/px132r0d12032009/sr1ntp132rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pixi/px135r0d12302009/sr1ntp135rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/sr1ntp1351rod/webosdoctorp120ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/sr1ntp140rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixi/px1411r0d03312010/sr1ntp1411rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixi/px145r0d08102010/spr1ntp145rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
''(Palm changed p200eww to p120eww in version 1.3.5.1)''&lt;br /&gt;
''(Palm changed p120eww back to p200eww in version 1.4.0)''&lt;br /&gt;
&lt;br /&gt;
==== Bell Mobility ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5BE0XXXXXXX (Pre on the Bell network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/b11ep121rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/b11ep131rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/b11ep1351rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/b11ep140rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/b11ep141rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d07142010/b11ep145rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
&lt;br /&gt;
==== O2 Germany, UK and Ireland / Movistar Spain ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UEU: P5FU0XXXXXXX (Pre on the Movistar network)&lt;br /&gt;
* P100UEU: P5HUGXXXXXXX (Pre on the o2 network)&lt;br /&gt;
* version 1.1.3 http://palm.cdnetworks.net/rom/p113r0d10122009/wr640xdfgy12z/webosdoctorp100eww-wr.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/wrep131rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.3.5.2 http://palm.cdnetworks.net/rom/pre/p1352r0d01182010/wrep1352rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/wrep140rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/eudep141rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d06302010/eudep145rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04282010/wrep141rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Veer =====&lt;br /&gt;
* P160UEU: W3UE1XXXXXXX (Veer on the o2 network)&lt;br /&gt;
* version 2.1.1 (Doctor not found yet)&lt;br /&gt;
&lt;br /&gt;
==== Vodafone Europe ====&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1.2 http://palm.cdnetworks.net/rom/pixiplus/px1412r0d04282010/wrep1412rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7NUGXXXXXXX (Pre Plus on the Vodafone network)&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== SFR France ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7JUAXXXXXXX (Pre Plus on the SFR network)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04272010/wrep141rod/webosdoctorp121ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Telcel GSM, Mexico ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UNA: P5XU0XXXXXXX (Pre on the Telcel network)&lt;br /&gt;
* version 1.2.5 http://palm.cdnetworks.net/rom/pre/p125r0d11252009/tce11p125rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/tce11p1351rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/tce11p140rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
&lt;br /&gt;
==== Verizon Wireless ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101EWW: P7VE0XXXXXXX (Pre Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/ver1z0np1351rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/ver1z0np140rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/preplus/p1411r0d04282010/ver1z0np1411rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/ver1z0np145rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/preplus/p1451r0d05182011/ver1z0np1451rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121EWW: P8V20XXXXXXX (Pixi Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/ver1z0np1351rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/ver1z0np140rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixiplus/px1411r0d04282010/ver1z0np1411rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d08302010/ver1z0np145rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/pixiplus/px1451r0d05182011/ver1z0np1451rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102EWW: PGVE0XXXXXXX (Pre 2 on the Verizon network)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d02172011/ver1z0np201rod/webosdoctorp102verizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
==== AT&amp;amp;T ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UNA : P7CG0XXXXXXX (Pre Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.2 http://palm.cdnetworks.net/rom/preplus/p142r0d05162010/attp142rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/attp145rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UNA: P8WU0XXXXXXX (Pixi Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.3 http://palm.cdnetworks.net/rom/pixiplus/px143r0d06062010/attp143rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d10112010/attp145rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Veer =====&lt;br /&gt;
* P160UNA: W1BD6XXXXXXX (Veer on the AT&amp;amp;T network)&lt;br /&gt;
* version 2.1.2 http://palm.cdnetworks.net/rom/veer/p212r0d05132011/attp212rod/webosdoctorp160unaatt.jar&lt;br /&gt;
&lt;br /&gt;
==== Rogers ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210r0d03082011/wrep210rod/webosdoctorp104ueu-wr.jar&lt;br /&gt;
''(Palm changed p102ueuna to p104ueu in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
==== Unlocked ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102UEU: PG4U0XXXXXXX (Pre 2 on the Unlocked - Europe network)&lt;br /&gt;
* P102UNA: PG9U0XXXXXXX (Pre 2 on the Unlocked - North America network)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU only)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11182010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
''(Palm changed p103ueu to p102ueuna in 2.0.1)''&lt;br /&gt;
''(Palm changed p102ueuna to p103ueuna in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
== License ==&lt;br /&gt;
&lt;br /&gt;
Note that the webOS Doctor package comes with the following license:&lt;br /&gt;
&lt;br /&gt;
RESTRICTIONS: The Software is licensed for use only with the single Palm device you originally purchased, and you may not distribute or make the Software available over a network or for use with multiple devices. The Software and supporting documentation may be copied only as necessary for backup or archive purposes in support of your use of the Software.&lt;br /&gt;
&lt;br /&gt;
So we can't host different versions of it anywhere - the best we can do is record the md5sums of the versions we know about so that individuals can match this to the files they have for use with their Palm device.&lt;br /&gt;
&lt;br /&gt;
== MD5 sums ==&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the versions that we know about (with md5sums for each, and the build date and build number as displayed in the title bar of the webOS Doctor):&lt;br /&gt;
&lt;br /&gt;
 Date      #  MD5SUM                           Filename&lt;br /&gt;
 20090522  118 4b3e396f8b1f1c5d3388e3c298af0484 webosdoctorp100ewwsprint-1.0.2.jar&lt;br /&gt;
 20090616  124 0c8027b5a707eb0d02b1997d48021bd5 webosdoctorp100ewwsprint-1.0.3.jar&lt;br /&gt;
 20090623  129 32852c4b57d938e85f0fc819e57eacb7 webosdoctorp100ewwsprint-1.0.4.jar&lt;br /&gt;
 20090717  143 fc602490fdd7b3be8c5f727349c6195f webosdoctorp100ewwsprint-1.1.0.jar&lt;br /&gt;
 20090717   83 ffd1bc50066d8f54d134b7aac194e3ec webosdoctorp100ewwbellmo-1.1.0.jar&lt;br /&gt;
 20090913  111 c8f80b3cdbb9b96fd73bbb6062950a83 webosdoctorp100ewwbellmo-1.2.0.jar&lt;br /&gt;
 20090913  171 93c3f106b7a7e5ef572465dcb4488e1c webosdoctorp100ewwsprint-1.2.0.jar&lt;br /&gt;
 20090924  100 bc29e1144823afc05a50dcdc2c84475d webosdoctorp100eww-wr-1.1.3.jar&lt;br /&gt;
 20090929  112 52f4a4cd9b182004a7060cfaa5be2c6f webosdoctorp100ewwbellmo-1.2.1.jar&lt;br /&gt;
 20090929  172 e7600251e12e5b96f3143138ba61b9eb webosdoctorp100ewwsprint-1.2.1.jar&lt;br /&gt;
 20091008    7 477f6c3d2ff1673aa9a9d1670aa5e88f webosdoctorp100ewwtelcel-1.2.5.jar&lt;br /&gt;
 20091015   98 1957476e6d9d221413285c6d5ab697d6 webosdoctorp200ewwsprint-1.2.9.1.jar&lt;br /&gt;
 20091101  112 063c2f66682dd246fa3bf518adae0f53 webosdoctorp200ewwsprint-1.3.1.jar&lt;br /&gt;
 20091101  122 9bb8e7547996b5b62ce8742198a9d8bb webosdoctorp100ueu-wr-1.3.1.jar&lt;br /&gt;
 20091101  122 b93f2f6af2c8eefc89f6ccc03b72eeb6 webosdoctorp100eww-wr-1.3.1.jar&lt;br /&gt;
 20091101  131 c4202a32ca49a1c843f30b77515cac46 webosdoctorp100ewwbellmo-1.3.1.jar&lt;br /&gt;
 20091101  194 8261682a25ac21bb2f3107ec5c50dc84 webosdoctorp100ewwsprint-1.3.1.jar&lt;br /&gt;
 20091113  119 eb33e68b07ccad81847d96f546303880 webosdoctorp200ewwsprint-1.3.2.jar&lt;br /&gt;
 20091125  140 e9a00b0a24a08f4cca4683bc5ec62227 webosdoctorp100ewwbellmo-1.3.5.jar&lt;br /&gt;
 20091130  134 4af3d5c4a6d0461b95e75b3fadf93435 webosdoctorp100ueu-wr-1.3.5.jar&lt;br /&gt;
 20091212  147 00b2575415c5645e9840cce4b8d075e6 webosdoctorp200ewwsprint-1.3.5.jar&lt;br /&gt;
 20091212  219 4daef882c96461dc1c60cc907c4dfbf0 webosdoctorp100ewwsprint-1.3.5.jar&lt;br /&gt;
 20100103  148 b78ad564fd8dcdfd469ca43285a5cd90 webosdoctorp120ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103  154 ff9784382ef53e491cb4d81015a34135 webosdoctorp100ewwbellmo-1.3.5.1.jar&lt;br /&gt;
 20100103  220 14e3c4168030498b42370115b33ee278 webosdoctorp100ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103   27 173dea06595c3c2080b0a8522a160d1c webosdoctorp100ewwtelcel-1.3.5.1.jar&lt;br /&gt;
 20100103   98 257ee7c9751a0ff909d3f81792a9b874 webosdoctorp101ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100106  148 a3c7ae6d93409dea9f0461636f5c79c0 webosdoctorp100ueu-wr-1.3.5.2.jar&lt;br /&gt;
 20100108  140 89cc6fbaff0d0ce4a05ed5bae53793f8 webosdoctorp121ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100214  179 0593f3b94ec4050febacea14c8af7b10 webosdoctorp100ueu-wr-1.4.0.jar&lt;br /&gt;
 20100214  187 646dd275690fcd7b3819ddddc488c2de webosdoctorp100ewwbellmo-1.4.0.jar&lt;br /&gt;
 20100214  195 46025f5f59c98721dee4ef4214e5f90b webosdoctorp200ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214  254 7aee384f4fdcc6189a027617efaac983 webosdoctorp100ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214   52 e9a1d644a447d460e340725869f3ad46 webosdoctorp100ewwtelcel-1.4.0.jar&lt;br /&gt;
 20100220  136 4bb776010b0b88da25630887d72faa18 webosdoctorp101ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100220  169 f7f3296db9ef0682d98f92354f696ba2 webosdoctorp121ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100313  198 7f7d258ba662dcd3085d76cb67dee906 webosdoctorp101ueu-wr-1.4.1.jar   &lt;br /&gt;
 20100317  208 edf4fa9cbac537f4b734339820b85030 webosdoctorp100ewwbellmo-1.4.1.jar&lt;br /&gt;
 20100318  121 f9b8aaa955255e9645f833b57010b60a webosdoctorp101ewwatt-1.4.2.jar&lt;br /&gt;
 20100319  190 bd9d4aca9f1b9657956e29a09648e4b0 webosdoctorp121ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  202 63ea69769b8b066f7525cba3d3c2d1bc webosdoctorp100ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  278 5f736a8baf27a3ea4d525c30f871f2d2 webosdoctorp100ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100325  225 a6779bbdbb34a52cde1104a29dab64ca webosdoctorp200ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100401  158 edb45ceebb21de02aecf4ae457e785de webosdoctorp101ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100401  199 48912881581fb240e2a27e688b80ac79 webosdoctorp121ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100419  222 eba97405cc882687567aa0988a206fb4 webosdoctorp121ewwatt-1.4.3.jar&lt;br /&gt;
 20100614  299 a55a377dd38fd7a8e94ba9514e1d9e18 webosdoctorp100ewwsprint-1.4.5.jar&lt;br /&gt;
 20100614  222 ca6a2e3a976b593859b11dee9941a80e webosdoctorp100ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  222 dddc78516c6770b475d08bdcf20f22d0 webosdoctorp101ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  231 1b0c63976ef3bc783770e35cfad55e5f webosdoctorp121ewweu-wr-1.4.5.jar&lt;br /&gt;
 20100614  232 e11d44f00d7d9b44e7dcddb3f5b45bee webosdoctorp100ewwbellmo-1.4.5.jar&lt;br /&gt;
 20100614  171 2e1cbe14267c61941d62d2d7fd82a544 webosdoctorp101ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100615  226 7d25cd1a8dbda76d297a9d4998d8e32a webosdoctorp121ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100722  142 6c0c12ae2585e8f8e1adf3965603ba78 webosdoctorp101ewwatt-1.4.5.jar&lt;br /&gt;
 20100818  233 957acf91ecc1d126c7062477bd10093c webosdoctorp121ewwatt-1.4.5.jar&lt;br /&gt;
 20101009   70 5152f9f3f9fd24f5491ac809d1138735 webosdoctorp103ueu-wr-2.0.0.jar (P102UEU)&lt;br /&gt;
 20101009   70 1aa510de51394e490428cc053d3cdfd0 webosdoctorp103ueu-wr-2.0.0.jar (P102UNA)&lt;br /&gt;
 20101117   79 e9f7c688266718a319b9fdfd6ef6c599 webosdoctorp102ueuna-wr-2.0.1.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20101222  100 643824a4c103e266fd8e2760b098815c webosdoctorp102verizonwireless-2.0.1.jar (P102EWW)&lt;br /&gt;
 20110201  284 ed2c394171d19a4af9d9d42c670e9791 webosdoctorp101ueude-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110202  100 1b9d7d63e0f765647705bac6a867da02 webosdoctorp104ueu-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110225  108 477f12cc73f5d8a3a00761dcb3751e6b webosdoctorp103ueuna-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110302  285 03566ac546d72c59d1cdc1af5a4da920 webosdoctorp101ueu-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110318  231 fdc62b2d6e717dc90b208d52fd6336c0 webosdoctorp101ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
 20110415 2296 bb2743f0a30abdb62c03b071d149c5a6 webosdoctorp160unaatt-2.1.2.jar&lt;br /&gt;
 20110421  276 0cd21b1f65b021787c8c83d7529adfaa webosdoctorp121ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
 20110609   41 e3931dbc9109a87928fe4e559cdae29f webosdoctorp300hstnhwifi-3.0.0.jar&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
1.0.3 is the last version to contain PmModemFactory&lt;br /&gt;
&lt;br /&gt;
Using a 2.0 doctor will wipe your usb partition, unless you already have 2.0 on your device.  For example, 1.4.5 &amp;gt; 2.0.1 will wipe usb, but 2.0.0 &amp;gt; 2.0.1 will not.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=UbuntuChroot&amp;diff=17209</id>
		<title>UbuntuChroot</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=UbuntuChroot&amp;diff=17209"/>
		<updated>2011-07-10T03:53:16Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You need a Ubuntu 11.04 host system.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install rootstock&lt;br /&gt;
&lt;br /&gt;
 sudo rootstock --fqdn touchpad&lt;br /&gt;
&lt;br /&gt;
 novacom put file://media/ext3fs/armel-rootfs-201107071349.tgz &amp;lt; armel-rootfs-201107071349.tgz&lt;br /&gt;
&lt;br /&gt;
You need a large-enough ext3fs partition created with Meta-Doctor mounted at /media/ext3fs.  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.  Instructions can be found on the [[Application:MetaDoctor#How_to_get_the_optional_ext3fs_partition_mounted_at_device_boot|Meta Doctor]] page.&lt;br /&gt;
&lt;br /&gt;
 cd /media/ext3fs&lt;br /&gt;
 mkdir ubuntu&lt;br /&gt;
 cd ubuntu&lt;br /&gt;
 tar zxvf ../armel-rootfs-201107071349.tgz&lt;br /&gt;
&lt;br /&gt;
 cp /etc/resolv.conf ./etc/resolv.conf&lt;br /&gt;
&lt;br /&gt;
 mount --bind /dev /media/ext3fs/ubuntu/dev&lt;br /&gt;
 mount -t devpts none /media/ext3fs/ubuntu/dev/pts&lt;br /&gt;
 mount -t proc none /media/ext3fs/ubuntu/proc&lt;br /&gt;
 mount --bind /sys /media/ext3fs/ubuntu/sys&lt;br /&gt;
 mount --bind /tmp /media/ext3fs/ubuntu/tmp&lt;br /&gt;
&lt;br /&gt;
 chroot /media/ext3fs/ubuntu&lt;br /&gt;
&lt;br /&gt;
You need Xecutah from git, and xserver-package from WIDK x_restructure branch.  Install both, run Xecutah, and start the X Server.&lt;br /&gt;
&lt;br /&gt;
Back on the device, inside the Ubuntu chroot.&lt;br /&gt;
&lt;br /&gt;
 export DISPLAY=:0.0&lt;br /&gt;
 apt-get install x11-apps matchbox-window-manager matchbox-keyboard&lt;br /&gt;
 apt-get install emacs-nox&lt;br /&gt;
&lt;br /&gt;
 matchbox-window-manager -use_titlebar no &amp;amp;&lt;br /&gt;
 matchbox-keyboard &amp;amp;&lt;br /&gt;
 emacs &amp;amp;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=UbuntuChroot&amp;diff=17207</id>
		<title>UbuntuChroot</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=UbuntuChroot&amp;diff=17207"/>
		<updated>2011-07-10T03:53:02Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You need a Ubuntu 11.04 host system.&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install rootstock&lt;br /&gt;
&lt;br /&gt;
 sudo rootstock --fqdn touchpad&lt;br /&gt;
&lt;br /&gt;
 novacom put file://media/ext3fs/armel-rootfs-201107071349.tgz &amp;lt; armel-rootfs-201107071349.tgz&lt;br /&gt;
&lt;br /&gt;
You need a large-enough ext3fs partition created with Meta-Doctor mounted at /media/ext3fs.  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.  Instructions can be found on the [[Application:MetaDoctor#How_to_get_the_optional_ext3fs_partition_mounted_at_device_boot|Meta Doctor]] page&lt;br /&gt;
&lt;br /&gt;
 cd /media/ext3fs&lt;br /&gt;
 mkdir ubuntu&lt;br /&gt;
 cd ubuntu&lt;br /&gt;
 tar zxvf ../armel-rootfs-201107071349.tgz&lt;br /&gt;
&lt;br /&gt;
 cp /etc/resolv.conf ./etc/resolv.conf&lt;br /&gt;
&lt;br /&gt;
 mount --bind /dev /media/ext3fs/ubuntu/dev&lt;br /&gt;
 mount -t devpts none /media/ext3fs/ubuntu/dev/pts&lt;br /&gt;
 mount -t proc none /media/ext3fs/ubuntu/proc&lt;br /&gt;
 mount --bind /sys /media/ext3fs/ubuntu/sys&lt;br /&gt;
 mount --bind /tmp /media/ext3fs/ubuntu/tmp&lt;br /&gt;
&lt;br /&gt;
 chroot /media/ext3fs/ubuntu&lt;br /&gt;
&lt;br /&gt;
You need Xecutah from git, and xserver-package from WIDK x_restructure branch.  Install both, run Xecutah, and start the X Server.&lt;br /&gt;
&lt;br /&gt;
Back on the device, inside the Ubuntu chroot.&lt;br /&gt;
&lt;br /&gt;
 export DISPLAY=:0.0&lt;br /&gt;
 apt-get install x11-apps matchbox-window-manager matchbox-keyboard&lt;br /&gt;
 apt-get install emacs-nox&lt;br /&gt;
&lt;br /&gt;
 matchbox-window-manager -use_titlebar no &amp;amp;&lt;br /&gt;
 matchbox-keyboard &amp;amp;&lt;br /&gt;
 emacs &amp;amp;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Application:MetaDoctor&amp;diff=17205</id>
		<title>Application:MetaDoctor</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Application:MetaDoctor&amp;diff=17205"/>
		<updated>2011-07-10T03:45:28Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Miscellaneous */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Application]]&lt;br /&gt;
This page is currently available in four languages:&lt;br /&gt;
:[[Image:Australia.png]] [[Image:USA.png]] [[Application:MetaDoctor]]&lt;br /&gt;
:[[Image:France.png]] [[Application:MetaDoctor-FR]]&lt;br /&gt;
:[[Image:Germany.png]] [[Application:MetaDoctor-DE]]&lt;br /&gt;
:[[Image:Mexico.png]] [[Image:Spain.png]] [[Application:MetaDoctor-ES]]&lt;br /&gt;
&lt;br /&gt;
= What is the Meta Doctor? =&lt;br /&gt;
&lt;br /&gt;
The Webos Internals Meta Doctor is a Makefile which can modify a copy of the Palm webOS Doctor to bypass the &amp;quot;First Use&amp;quot; application and allow the phone to run without having been activated on a cell network. It accomplishes this by reaching into Palm's distributed Doctor JAR file and making changes to it. It can prevent the first use app from running, as well as applying other tweaks to the OS.&lt;br /&gt;
&lt;br /&gt;
'''Documentation for the features that the MetaDoctor offers is at the top of the Makefile (you find out where that is later).'''&lt;br /&gt;
&lt;br /&gt;
= Step 1: Setting up Meta-Doctor=&lt;br /&gt;
&lt;br /&gt;
== Windows ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE THAT USING CYGWIN ON WINDOWS IS NO LONGER SUPPORTED AND WILL MAKE YOUR PHONE FAIL TO BOOT'''&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
# Download [http://www.ubuntu.com/getubuntu/download Ubuntu 11.04], look for the Ubuntu Desktop Edition, '''not the Windows Installer'''&lt;br /&gt;
# Burn that file to a cd or mount to virtual drive&lt;br /&gt;
# 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.'''&lt;br /&gt;
# Click on '''Install Inside windows'''.&lt;br /&gt;
#: 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. &lt;br /&gt;
# Restart your computer and you can dual boot to Windows or Ubuntu &lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If you are still wondering what Wubi is the fallowing link should explain it to you better.&lt;br /&gt;
[https://wiki.ubuntu.com/WubiGuide Wubi Guide]&lt;br /&gt;
&lt;br /&gt;
Once you have installed WUBI, you should follow the instructions in the Linux section below.&lt;br /&gt;
&lt;br /&gt;
== Linux == &lt;br /&gt;
&lt;br /&gt;
# Open terminal from the ( Applications &amp;gt; Accessories ) menu.&lt;br /&gt;
# 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: &amp;lt;pre&amp;gt;sudo add-apt-repository &amp;quot;deb http://archive.canonical.com/ lucid partner&amp;quot;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;sudo apt-get update&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;sudo apt-get install git&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;sudo apt-get install sun-java6-jre&amp;lt;/pre&amp;gt; (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.&lt;br /&gt;
# 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].&lt;br /&gt;
# Download the meta-doctor scripts using git.  Type: &amp;lt;pre&amp;gt;git clone git://git.webos-internals.org/tools/meta-doctor.git&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Navigate to the meta-doctor directory. &amp;lt;pre&amp;gt;cd meta-doctor&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Create a downloads directory.  Type: &amp;lt;pre&amp;gt;mkdir downloads&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mac OS X 10.6 ==&lt;br /&gt;
&lt;br /&gt;
#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] or on your Mac OS X installation CDs/DVD.&lt;br /&gt;
#Install md5sum: &amp;lt;pre&amp;gt;sudo port install md5sha1sum&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Install gnutar: &amp;lt;pre&amp;gt;sudo port install gnutar&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Install git: &amp;lt;pre&amp;gt;sudo port install git-core&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Install wget: &amp;lt;pre&amp;gt;sudo port install wget&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now type: &amp;lt;pre&amp;gt;git clone git://git.webos-internals.org/tools/meta-doctor.git&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Install patch: &amp;lt;pre&amp;gt;sudo port install gpatch&amp;lt;/pre&amp;gt;&lt;br /&gt;
#If you do not have Java installed, do so. To install Java, click on the &amp;quot;Apple&amp;quot; icon and select &amp;quot;Software Update.&amp;quot; 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].&lt;br /&gt;
#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].&lt;br /&gt;
#Open a terminal and navigate to the meta-doctor directory where the meta-doctor was copied to in step 6 above.&amp;lt;pre&amp;gt;cd meta-doctor&amp;lt;/pre&amp;gt;&lt;br /&gt;
#Ensure that there is a downloads directory.  If there is not one, create one using &amp;lt;pre&amp;gt;mkdir downloads&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Step 2: Running the webOS Doctor=&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
'''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.'''&lt;br /&gt;
&lt;br /&gt;
# Navigate to the meta-doctor directory in the terminal&lt;br /&gt;
# 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 (i.e. will not work, you need to look for the latest URL) download command would be: &amp;lt;pre&amp;gt;cd downloads&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;wget http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/sr1ntp1351rod/webosdoctorp100ewwsprint.jar&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Rename the file that you download to include the version number for future reference (examples: webosdoctorp100ewwsprint-1.3.5.1.jar, webosdoctorp100eww-wr-1.1.3.jar, or webosdoctorp100ewwbellmo-1.2.1.jar).   An example (i.e. will not work, you need to work out the filename based on the URL you used to download it) command to do that would be:&amp;lt;pre&amp;gt;mv webosdoctorp100ewwbellmo.jar webosdoctorp100ewwbellmo-1.3.5.1.jar&amp;lt;/pre&amp;gt;&lt;br /&gt;
# 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. &lt;br /&gt;
# 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.&lt;br /&gt;
# Type one of the following: &lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pre CARRIER=wr all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=preplus CARRIER=wr all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pixiplus CARRIER=wr all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pre CARRIER=sprint all&amp;lt;/pre&amp;gt; &lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pixi CARRIER=sprint all&amp;lt;/pre&amp;gt; &lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pre CARRIER=bellmo all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pre CARRIER=telcel all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=preplus CARRIER=verizonwireless all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pixiplus CARRIER=verizonwireless all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=preplus CARRIER=att all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=pixiplus CARRIER=att all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: &amp;lt;pre&amp;gt;make DEVICE=touchpad CARRIER=wifi all&amp;lt;/pre&amp;gt;&lt;br /&gt;
#: depending on the carrier in question.&lt;br /&gt;
'''Note ''': use make DEVICE=palm_smartphone_type CARRIER=wr  all  for O2 Germany, UK and Ireland / Movistar Spain / SFR France&lt;br /&gt;
&lt;br /&gt;
This should begin a process within the terminal that should take 10 minutes max.&lt;br /&gt;
&lt;br /&gt;
=== Error conditions ===&lt;br /&gt;
&lt;br /&gt;
If an error message appears with unknown in a file name, check the file rename in step 8 above.&lt;br /&gt;
&lt;br /&gt;
=== If the build fails ===&lt;br /&gt;
&lt;br /&gt;
If the make command fails, you can use &amp;lt;pre&amp;gt;make clobber&amp;lt;/pre&amp;gt; to clean up the build directory. After this you can re-run the command.&lt;br /&gt;
&lt;br /&gt;
The updated doctor version has the same name as the original, but is in a new folder: ''meta-doctor/build/pre-p100eww-sprint-1.3.5.1/webosdoctorp100ewwsprint-1.3.5.1.jar''.&lt;br /&gt;
&lt;br /&gt;
If you are running in Ubuntu or Cygwin, you can just run the new jar file now.  &lt;br /&gt;
&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
CD to the folder where your new jar file is, and type something like: &lt;br /&gt;
&lt;br /&gt;
java -jar webosdoctorp100ewwsprint-1.3.5.1.jar&lt;br /&gt;
&lt;br /&gt;
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.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Windows host:''&lt;br /&gt;
&lt;br /&gt;
[http://ubuntuexperiment.wordpress.com/2008/11/12/sharing-folders-between-host-and-guest-os-in-virtualbox/ VirtualBox folder Sharing]&lt;br /&gt;
&lt;br /&gt;
[http://www.howtogeek.com/howto/ubuntu/how-to-share-folders-with-your-ubuntu-virtual-machine-guest/ VMWare folder Sharing]&lt;br /&gt;
&lt;br /&gt;
''Mac OSX host:''&lt;br /&gt;
&lt;br /&gt;
[http://davidherron.com/blog/topics/628-virtualbox-running-ubuntu-accessing-host-file-system-mac-os-x VirtualBox folder Sharing]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: ''NOTE: this only applies to WUBI Users''  &lt;br /&gt;
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  &lt;br /&gt;
&lt;br /&gt;
Using terminal the following command in a Wubi installation of Ubuntu will copy the JAR file to the host Windows OS :&amp;lt;pre&amp;gt;cp /meta-doctor/build/pre-p100eww-sprint-1.2.1/webosdoctorp100ewwsprint-1.2.1.jar /host/webosdoctorp100ewwsprint-1.2.1.jar&amp;lt;/pre&amp;gt;&lt;br /&gt;
This will place the Jar either in your Windows C:\ drive or whatever drive you installed Wubi to.&lt;br /&gt;
&lt;br /&gt;
== Once the Doctor is running ==&lt;br /&gt;
&lt;br /&gt;
# Select your language&lt;br /&gt;
# Accept the license agreement&lt;br /&gt;
# Connect your Pre to your PC via USB and select &amp;quot;Next&amp;quot; when it becomes available&lt;br /&gt;
&lt;br /&gt;
After completion the device will reboot and present you with the activation set-up.&lt;br /&gt;
&lt;br /&gt;
If your PC does not recognize your Pre and you cannot go past step 3 above, try the following steps:&lt;br /&gt;
&lt;br /&gt;
# With the USB cable connected, completely power off the Pre (hold down the power button until the option to power off appears)&lt;br /&gt;
# Hold down the Up button on the volume rocker&lt;br /&gt;
# While holding the Up button, power on the Pre&lt;br /&gt;
# &amp;quot;Next&amp;quot; should now be enabled - proceed with the recovery&lt;br /&gt;
{{tux|Tux_with_Pre.png|float:right;}}&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
When the process finishes, the Pre will reboot and your new modified image will have been installed.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
After the doctor completes, you will need to run the &amp;quot;First Run&amp;quot; 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:&lt;br /&gt;
&lt;br /&gt;
'''Note:''' This has only been confirmed to resolve Sprint CDMA issues, YMMV.&lt;br /&gt;
&lt;br /&gt;
'''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.&lt;br /&gt;
*'''1.''' Open the Phone App.&lt;br /&gt;
*'''2.''' Enter ''##MSL#'' (MSL= 6 digit lock code. Get this from Sprint.)&lt;br /&gt;
*'''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.&lt;br /&gt;
*'''4.''' Select ''Edit''.&lt;br /&gt;
*'''5.''' Select the first box (MDN) and enter your 10-digit cellular number.&lt;br /&gt;
*'''6.''' Select the second box (MSID) and enter your 10-digit MSID (Get this from Sprint).&lt;br /&gt;
*'''7.''' Select ''Save''.&lt;br /&gt;
*'''8.''' Backswipe out of the the view.&lt;br /&gt;
*'''9.''' You should now be able to open complete '''Note 2''' above without any errors.&lt;br /&gt;
&lt;br /&gt;
You should now be able to run the ''First Use'' application without any problems.&lt;br /&gt;
&lt;br /&gt;
=If the Doctor will not run=&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=Miscellaneous=&lt;br /&gt;
Clarification for Linux beginners on where to place the prefsDB.sl file, per instructions in the makefile.&lt;br /&gt;
Steps:&lt;br /&gt;
1. 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).&lt;br /&gt;
2. Navigate to the meta-doctor directory and create the config directory: mkdir -p config&lt;br /&gt;
3. Rename your prefsDB.sl file to com.palm.wifi.prefsDB.sl&lt;br /&gt;
4. Put com.palm.wifi.prefsDB.sl in the config directory.&lt;br /&gt;
5. Continue following instructions in the makefile.&lt;br /&gt;
&lt;br /&gt;
==How to enable WIFI profiles==&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
# Move to the meta-doctor directory (cd meta-doctor)&lt;br /&gt;
# Create a &amp;quot;config&amp;quot; folder in the meta-doctor directory (mkdir config)&lt;br /&gt;
# Copy the prefsDB.sl file off of your phone from the var/preferences/com.palm.wifi/ and into the &amp;quot;config&amp;quot; directory that you just created.&lt;br /&gt;
# Rename this file &amp;quot;com.palm.wifi.prefsDB.sl&amp;quot; without the quotes&lt;br /&gt;
# Open the makefile (which is in the meta-doctor directory) and remove the &amp;quot;#&amp;quot; from the line &amp;quot;# INSTALL_WIFI_PROFILES = 1&amp;quot;. Save the makefile.&lt;br /&gt;
# Build the custom doctor by running the script, or otherwise building it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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].&lt;br /&gt;
&lt;br /&gt;
==How to get the optional ext3fs partition mounted at device boot==&lt;br /&gt;
&lt;br /&gt;
All of this is done on device either via novaterm or an SSH login.&lt;br /&gt;
If your device does NOT have a folder at /media/ext3fs then you will need to create it first.  Use the following two commands:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;mount -o remount,rw /&lt;br /&gt;
mkdir -p /media/ext3fs&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
it is important that you use /media/ext3fs as the location, otherwise some homebrew applications (such as optware) will not be able to find it and use it properly.&lt;br /&gt;
&lt;br /&gt;
After you have created the mountpoint, we are going to edit the fstab file to set it up to mount at bootup.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;mount -o remount,rw /      *****Not necessary if you performed the previous steps, but doesn't hurt if you do it twice&lt;br /&gt;
echo &amp;quot;/dev/mapper/store-ext3fs /media/ext3fs/ext3   noatime,data=writeback   0   0&amp;quot; &amp;gt;&amp;gt; /etc/fstab&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;mount -a&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you do not want it mounted at bootup, but you do need it mounted, you can use this command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;mount /dev/mapper/store-ext3fs /media/ext3fs&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==How to change a provider's DB-entry so 3G data can be used on the Pre==&lt;br /&gt;
&lt;br /&gt;
[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&lt;br /&gt;
&lt;br /&gt;
== Problems with Novacom ==&lt;br /&gt;
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 [http://developer.palm.com/distribution/viewtopic.php?f=11&amp;amp;t=4233&amp;amp;start=0 this thread].&lt;br /&gt;
&lt;br /&gt;
== How to Install webOS 2.x on &amp;quot;unoffical&amp;quot; Devices==&lt;br /&gt;
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]]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17119</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17119"/>
		<updated>2011-07-07T00:56:05Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
*It must support storage and query of every key within the ipkg packages file (including the ones jammed into the source line&lt;br /&gt;
*(Optional)Support for predefined queries&lt;br /&gt;
*(Optional)Support for dynamic storage of arbitrary new keys if a new one should crop up&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well.&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A query with multiple options for a filter can also be performed. The first example would return packages from all feeds&lt;br /&gt;
but if you wanted results from only the webos-internals and webos-patches feeds that is accomplished by supplying an array&lt;br /&gt;
as the feed filter as in the following example&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;feed&amp;quot;:[&amp;quot;webos-internals&amp;quot;,&amp;quot;webos-patches&amp;quot;]},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Predefined Queries=&lt;br /&gt;
&lt;br /&gt;
These would be accomplished by sending a query similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;preset&amp;quot;:&amp;quot;preware-feed-pull&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API server would be pre-programmed for certain predefined queries, it would know what data should be returned as part of that preset.  We could make as many of these as needed, but I suspect that only a small handfull would be needed.  This would aid code simplicity when it comes time to implement this API on the client side as well as making the client side code easier to maintain.&lt;br /&gt;
&lt;br /&gt;
Should we need some new field sent along for some new feature in a package that uses the API, we could adjust the response in one place, on the server, and that newly required data would be sent along.&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
having the API servers update their information can be accomplished in several ways:&lt;br /&gt;
&lt;br /&gt;
#We can either have the API servers run a database update on a schedule&lt;br /&gt;
#A GET request to a URL by the autobuilder whenever a build pass completes with a new/updated package&lt;br /&gt;
#Autobuilder conencts via SSH and does a touch on a file, API server has a cron to check for that file and run an update.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17071</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17071"/>
		<updated>2011-07-02T21:26:49Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Prototype demo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
*It must support storage and query of every key within the ipkg packages file (including the ones jammed into the source line&lt;br /&gt;
*(Optional)Support for predefined queries&lt;br /&gt;
*(Optional)Support for dynamic storage of arbitrary new keys if a new one should crop up&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well.&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A query with multiple options for a filter can also be performed. The first example would return packages from all feeds&lt;br /&gt;
but if you wanted results from only the webos-internals and webos-patches feeds that is accomplished by supplying an array&lt;br /&gt;
as the feed filter as in the following example&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;feed&amp;quot;:[&amp;quot;webos-internals&amp;quot;,&amp;quot;webos-patches&amp;quot;]},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Predefined Queries=&lt;br /&gt;
&lt;br /&gt;
These would be accomplished by sending a query similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;preset&amp;quot;:&amp;quot;preware-feed-pull&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API server would be pre-programmed for certain predefined queries, it would know what data should be returned as part of that preset.  We could make as many of these as needed, but I suspect that only a small handfull would be needed.  This would aid code simplicity when it comes time to implement this API on the client side as well as making the client side code easier to maintain.&lt;br /&gt;
&lt;br /&gt;
Should we need some new field sent along for some new feature in a package that uses the API, we could adjust the response in one place, on the server, and that newly required data would be sent along.&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
We can either have the API servers run a database update on a schedule, or (and I like this option better), it would be pretty easy to have the autobuilder capable of notifying the API server (possibly servers) of when it runs a pass where a new package was built.  The flow would be about like this.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17063</id>
		<title>WebOS Doctor Versions</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17063"/>
		<updated>2011-07-01T15:58:10Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Wifi Only */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to get webOS ROM ==&lt;br /&gt;
&lt;br /&gt;
You can download webOS ROM for your specific Palm device at http://ws.palm.com/webosdoctor/serialnumberinitial.htm &lt;br /&gt;
by using your Palm device serial number.&lt;br /&gt;
&lt;br /&gt;
== Serial Numbers ==&lt;br /&gt;
&lt;br /&gt;
Please add the first five characters of your serial number in the appropriate download link section below if it is not there already. Then put your serial number in http://palm.com/rom to get the text inside the brackets describing your device configuration.&lt;br /&gt;
&lt;br /&gt;
== Download links ==&lt;br /&gt;
It seems the webOS Doctor jar files provided by Palm keep changing:&lt;br /&gt;
&lt;br /&gt;
'''''NOTE: Since March 18th 2010, the Palm servers are no longer hosting old WebOSDoctor versions via the links below. The current versions are still available.'''''&lt;br /&gt;
=== Tablet ===&lt;br /&gt;
==== Wifi Only ====&lt;br /&gt;
* HSTNH-129C: 5CL1XXXXXX: FB359UAXXXX (HP TouchPad 10&amp;quot; 32GB Wifi Only)&lt;br /&gt;
* HSTNH-129C: 5CL1XXXXXX: FB355UAXXXX (HP TouchPad 10&amp;quot; 16GB Wifi Only)&lt;br /&gt;
* version 3.0.0 http://palm.cdnetworks.net/rom/touchpad/wd300wifi/webosdoctorp300hstnhwifi.jar&lt;br /&gt;
&lt;br /&gt;
=== Phone ===&lt;br /&gt;
==== Sprint ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5PE0XXXXXXX (Pre on the Sprint network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/sr1ntp121rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/sr1ntp131rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pre/p135r0d12302009/sr1ntp135rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/sr1ntp1351rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/sr1ntp140rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pre/p1411r0d03312010/sr1ntp1411rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d08102010/spr1ntp145rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi =====&lt;br /&gt;
*P120EWW: P6P20XXXXXXX (Pixi on the Sprint network)&lt;br /&gt;
* version 1.3.1  http://palm.cdnetworks.net/rom/pixi/px131r0d11172009/sr1ntp131rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.2 http://palm.cdnetworks.net/rom/pixi/px132r0d12032009/sr1ntp132rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pixi/px135r0d12302009/sr1ntp135rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/sr1ntp1351rod/webosdoctorp120ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/sr1ntp140rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixi/px1411r0d03312010/sr1ntp1411rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixi/px145r0d08102010/spr1ntp145rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
''(Palm changed p200eww to p120eww in version 1.3.5.1)''&lt;br /&gt;
''(Palm changed p120eww back to p200eww in version 1.4.0)''&lt;br /&gt;
&lt;br /&gt;
==== Bell Mobility ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5BE0XXXXXXX (Pre on the Bell network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/b11ep121rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/b11ep131rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/b11ep1351rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/b11ep140rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/b11ep141rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d07142010/b11ep145rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
&lt;br /&gt;
==== O2 Germany, UK and Ireland / Movistar Spain ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UEU: P5FU0XXXXXXX (Pre on the Movistar network)&lt;br /&gt;
* P100UEU: P5HUGXXXXXXX (Pre on the o2 network)&lt;br /&gt;
* version 1.1.3 http://palm.cdnetworks.net/rom/p113r0d10122009/wr640xdfgy12z/webosdoctorp100eww-wr.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/wrep131rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.3.5.2 http://palm.cdnetworks.net/rom/pre/p1352r0d01182010/wrep1352rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/wrep140rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/eudep141rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d06302010/eudep145rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04282010/wrep141rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Vodafone Europe ====&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1.2 http://palm.cdnetworks.net/rom/pixiplus/px1412r0d04282010/wrep1412rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7NUGXXXXXXX (Pre Plus on the Vodafone network)&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== SFR France ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7JUAXXXXXXX (Pre Plus on the SFR network)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04272010/wrep141rod/webosdoctorp121ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Telcel GSM, Mexico ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UNA: P5XU0XXXXXXX (Pre on the Telcel network)&lt;br /&gt;
* version 1.2.5 http://palm.cdnetworks.net/rom/pre/p125r0d11252009/tce11p125rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/tce11p1351rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/tce11p140rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
&lt;br /&gt;
==== Verizon Wireless ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101EWW: P7VE0XXXXXXX (Pre Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/ver1z0np1351rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/ver1z0np140rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/preplus/p1411r0d04282010/ver1z0np1411rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/ver1z0np145rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/preplus/p1451r0d05182011/ver1z0np1451rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121EWW: P8V20XXXXXXX (Pixi Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/ver1z0np1351rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/ver1z0np140rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixiplus/px1411r0d04282010/ver1z0np1411rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d08302010/ver1z0np145rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/pixiplus/px1451r0d05182011/ver1z0np1451rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102EWW: PGVE0XXXXXXX (Pre 2 on the Verizon network)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d02172011/ver1z0np201rod/webosdoctorp102verizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
==== AT&amp;amp;T ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UNA : P7CG0XXXXXXX (Pre Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.2 http://palm.cdnetworks.net/rom/preplus/p142r0d05162010/attp142rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/attp145rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UNA: P8WU0XXXXXXX (Pixi Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.3 http://palm.cdnetworks.net/rom/pixiplus/px143r0d06062010/attp143rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d10112010/attp145rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Veer =====&lt;br /&gt;
* P160UNA: W1BD6XXXXXXX (Veer on the AT&amp;amp;T network)&lt;br /&gt;
* version 2.1.2 http://palm.cdnetworks.net/rom/veer/p212r0d05132011/attp212rod/webosdoctorp160unaatt.jar&lt;br /&gt;
&lt;br /&gt;
==== Rogers ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210r0d03082011/wrep210rod/webosdoctorp104ueu-wr.jar&lt;br /&gt;
''(Palm changed p102ueuna to p104ueu in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
==== Unlocked ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102UEU: PG4U0XXXXXXX (Pre 2 on the Unlocked - Europe network)&lt;br /&gt;
* P102UNA: PG9U0XXXXXXX (Pre 2 on the Unlocked - North America network)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU only)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11182010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
''(Palm changed p103ueu to p102ueuna in 2.0.1)''&lt;br /&gt;
''(Palm changed p102ueuna to p103ueuna in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
== License ==&lt;br /&gt;
&lt;br /&gt;
Note that the webOS Doctor package comes with the following license:&lt;br /&gt;
&lt;br /&gt;
RESTRICTIONS: The Software is licensed for use only with the single Palm device you originally purchased, and you may not distribute or make the Software available over a network or for use with multiple devices. The Software and supporting documentation may be copied only as necessary for backup or archive purposes in support of your use of the Software.&lt;br /&gt;
&lt;br /&gt;
So we can't host different versions of it anywhere - the best we can do is record the md5sums of the versions we know about so that individuals can match this to the files they have for use with their Palm device.&lt;br /&gt;
&lt;br /&gt;
== MD5 sums ==&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the versions that we know about (with md5sums for each, and the build date and build number as displayed in the title bar of the webOS Doctor):&lt;br /&gt;
&lt;br /&gt;
 Date      #  MD5SUM                           Filename&lt;br /&gt;
 20090522  118 4b3e396f8b1f1c5d3388e3c298af0484 webosdoctorp100ewwsprint-1.0.2.jar&lt;br /&gt;
 20090616  124 0c8027b5a707eb0d02b1997d48021bd5 webosdoctorp100ewwsprint-1.0.3.jar&lt;br /&gt;
 20090623  129 32852c4b57d938e85f0fc819e57eacb7 webosdoctorp100ewwsprint-1.0.4.jar&lt;br /&gt;
 20090717  143 fc602490fdd7b3be8c5f727349c6195f webosdoctorp100ewwsprint-1.1.0.jar&lt;br /&gt;
 20090717   83 ffd1bc50066d8f54d134b7aac194e3ec webosdoctorp100ewwbellmo-1.1.0.jar&lt;br /&gt;
 20090913  111 c8f80b3cdbb9b96fd73bbb6062950a83 webosdoctorp100ewwbellmo-1.2.0.jar&lt;br /&gt;
 20090913  171 93c3f106b7a7e5ef572465dcb4488e1c webosdoctorp100ewwsprint-1.2.0.jar&lt;br /&gt;
 20090924  100 bc29e1144823afc05a50dcdc2c84475d webosdoctorp100eww-wr-1.1.3.jar&lt;br /&gt;
 20090929  112 52f4a4cd9b182004a7060cfaa5be2c6f webosdoctorp100ewwbellmo-1.2.1.jar&lt;br /&gt;
 20090929  172 e7600251e12e5b96f3143138ba61b9eb webosdoctorp100ewwsprint-1.2.1.jar&lt;br /&gt;
 20091008    7 477f6c3d2ff1673aa9a9d1670aa5e88f webosdoctorp100ewwtelcel-1.2.5.jar&lt;br /&gt;
 20091015   98 1957476e6d9d221413285c6d5ab697d6 webosdoctorp200ewwsprint-1.2.9.1.jar&lt;br /&gt;
 20091101  112 063c2f66682dd246fa3bf518adae0f53 webosdoctorp200ewwsprint-1.3.1.jar&lt;br /&gt;
 20091101  122 9bb8e7547996b5b62ce8742198a9d8bb webosdoctorp100ueu-wr-1.3.1.jar&lt;br /&gt;
 20091101  122 b93f2f6af2c8eefc89f6ccc03b72eeb6 webosdoctorp100eww-wr-1.3.1.jar&lt;br /&gt;
 20091101  131 c4202a32ca49a1c843f30b77515cac46 webosdoctorp100ewwbellmo-1.3.1.jar&lt;br /&gt;
 20091101  194 8261682a25ac21bb2f3107ec5c50dc84 webosdoctorp100ewwsprint-1.3.1.jar&lt;br /&gt;
 20091113  119 eb33e68b07ccad81847d96f546303880 webosdoctorp200ewwsprint-1.3.2.jar&lt;br /&gt;
 20091125  140 e9a00b0a24a08f4cca4683bc5ec62227 webosdoctorp100ewwbellmo-1.3.5.jar&lt;br /&gt;
 20091130  134 4af3d5c4a6d0461b95e75b3fadf93435 webosdoctorp100ueu-wr-1.3.5.jar&lt;br /&gt;
 20091212  147 00b2575415c5645e9840cce4b8d075e6 webosdoctorp200ewwsprint-1.3.5.jar&lt;br /&gt;
 20091212  219 4daef882c96461dc1c60cc907c4dfbf0 webosdoctorp100ewwsprint-1.3.5.jar&lt;br /&gt;
 20100103  148 b78ad564fd8dcdfd469ca43285a5cd90 webosdoctorp120ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103  154 ff9784382ef53e491cb4d81015a34135 webosdoctorp100ewwbellmo-1.3.5.1.jar&lt;br /&gt;
 20100103  220 14e3c4168030498b42370115b33ee278 webosdoctorp100ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103   27 173dea06595c3c2080b0a8522a160d1c webosdoctorp100ewwtelcel-1.3.5.1.jar&lt;br /&gt;
 20100103   98 257ee7c9751a0ff909d3f81792a9b874 webosdoctorp101ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100106  148 a3c7ae6d93409dea9f0461636f5c79c0 webosdoctorp100ueu-wr-1.3.5.2.jar&lt;br /&gt;
 20100108  140 89cc6fbaff0d0ce4a05ed5bae53793f8 webosdoctorp121ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100214  179 0593f3b94ec4050febacea14c8af7b10 webosdoctorp100ueu-wr-1.4.0.jar&lt;br /&gt;
 20100214  187 646dd275690fcd7b3819ddddc488c2de webosdoctorp100ewwbellmo-1.4.0.jar&lt;br /&gt;
 20100214  195 46025f5f59c98721dee4ef4214e5f90b webosdoctorp200ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214  254 7aee384f4fdcc6189a027617efaac983 webosdoctorp100ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214   52 e9a1d644a447d460e340725869f3ad46 webosdoctorp100ewwtelcel-1.4.0.jar&lt;br /&gt;
 20100220  136 4bb776010b0b88da25630887d72faa18 webosdoctorp101ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100220  169 f7f3296db9ef0682d98f92354f696ba2 webosdoctorp121ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100313  198 7f7d258ba662dcd3085d76cb67dee906 webosdoctorp101ueu-wr-1.4.1.jar   &lt;br /&gt;
 20100317  208 edf4fa9cbac537f4b734339820b85030 webosdoctorp100ewwbellmo-1.4.1.jar&lt;br /&gt;
 20100318  121 f9b8aaa955255e9645f833b57010b60a webosdoctorp101ewwatt-1.4.2.jar&lt;br /&gt;
 20100319  190 bd9d4aca9f1b9657956e29a09648e4b0 webosdoctorp121ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  202 63ea69769b8b066f7525cba3d3c2d1bc webosdoctorp100ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  278 5f736a8baf27a3ea4d525c30f871f2d2 webosdoctorp100ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100325  225 a6779bbdbb34a52cde1104a29dab64ca webosdoctorp200ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100401  158 edb45ceebb21de02aecf4ae457e785de webosdoctorp101ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100401  199 48912881581fb240e2a27e688b80ac79 webosdoctorp121ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100419  222 eba97405cc882687567aa0988a206fb4 webosdoctorp121ewwatt-1.4.3.jar&lt;br /&gt;
 20100614  299 a55a377dd38fd7a8e94ba9514e1d9e18 webosdoctorp100ewwsprint-1.4.5.jar&lt;br /&gt;
 20100614  222 ca6a2e3a976b593859b11dee9941a80e webosdoctorp100ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  222 dddc78516c6770b475d08bdcf20f22d0 webosdoctorp101ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  231 1b0c63976ef3bc783770e35cfad55e5f webosdoctorp121ewweu-wr-1.4.5.jar&lt;br /&gt;
 20100614  232 e11d44f00d7d9b44e7dcddb3f5b45bee webosdoctorp100ewwbellmo-1.4.5.jar&lt;br /&gt;
 20100614  171 2e1cbe14267c61941d62d2d7fd82a544 webosdoctorp101ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100615  226 7d25cd1a8dbda76d297a9d4998d8e32a webosdoctorp121ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100722  142 6c0c12ae2585e8f8e1adf3965603ba78 webosdoctorp101ewwatt-1.4.5.jar&lt;br /&gt;
 20100818  233 957acf91ecc1d126c7062477bd10093c webosdoctorp121ewwatt-1.4.5.jar&lt;br /&gt;
 20101009   70 5152f9f3f9fd24f5491ac809d1138735 webosdoctorp103ueu-wr-2.0.0.jar (P102UEU)&lt;br /&gt;
 20101009   70 1aa510de51394e490428cc053d3cdfd0 webosdoctorp103ueu-wr-2.0.0.jar (P102UNA)&lt;br /&gt;
 20101117   79 e9f7c688266718a319b9fdfd6ef6c599 webosdoctorp102ueuna-wr-2.0.1.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20101222  100 643824a4c103e266fd8e2760b098815c webosdoctorp102verizonwireless-2.0.1.jar (P102EWW)&lt;br /&gt;
 20110201  284 ed2c394171d19a4af9d9d42c670e9791 webosdoctorp101ueude-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110202  100 1b9d7d63e0f765647705bac6a867da02 webosdoctorp104ueu-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110225  108 477f12cc73f5d8a3a00761dcb3751e6b webosdoctorp103ueuna-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110302  285 03566ac546d72c59d1cdc1af5a4da920 webosdoctorp101ueu-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110318  231 fdc62b2d6e717dc90b208d52fd6336c0 webosdoctorp101ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
 20110415 2296 bb2743f0a30abdb62c03b071d149c5a6 webosdoctorp160unaatt-2.1.2.jar&lt;br /&gt;
 20110421  276 0cd21b1f65b021787c8c83d7529adfaa webosdoctorp121ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
1.0.3 is the last version to contain PmModemFactory&lt;br /&gt;
&lt;br /&gt;
Using a 2.0 doctor will wipe your usb partition, unless you already have 2.0 on your device.  For example, 1.4.5 &amp;gt; 2.0.1 will wipe usb, but 2.0.0 &amp;gt; 2.0.1 will not.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17061</id>
		<title>WebOS Doctor Versions</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17061"/>
		<updated>2011-07-01T15:57:19Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Wifi Only */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to get webOS ROM ==&lt;br /&gt;
&lt;br /&gt;
You can download webOS ROM for your specific Palm device at http://ws.palm.com/webosdoctor/serialnumberinitial.htm &lt;br /&gt;
by using your Palm device serial number.&lt;br /&gt;
&lt;br /&gt;
== Serial Numbers ==&lt;br /&gt;
&lt;br /&gt;
Please add the first five characters of your serial number in the appropriate download link section below if it is not there already. Then put your serial number in http://palm.com/rom to get the text inside the brackets describing your device configuration.&lt;br /&gt;
&lt;br /&gt;
== Download links ==&lt;br /&gt;
It seems the webOS Doctor jar files provided by Palm keep changing:&lt;br /&gt;
&lt;br /&gt;
'''''NOTE: Since March 18th 2010, the Palm servers are no longer hosting old WebOSDoctor versions via the links below. The current versions are still available.'''''&lt;br /&gt;
=== Tablet ===&lt;br /&gt;
==== Wifi Only ====&lt;br /&gt;
* HSTNH-129C: 5CL1XXXXXX: FB359UAXXXX (HP TouchPad 32GB Wifi Only)&lt;br /&gt;
* HSTNH-129C: 5CL1XXXXXX: FB355UAXXXX (HP TouchPad 16GB Wifi Only)&lt;br /&gt;
* version 3.0.0 http://palm.cdnetworks.net/rom/touchpad/wd300wifi/webosdoctorp300hstnhwifi.jar&lt;br /&gt;
&lt;br /&gt;
=== Phone ===&lt;br /&gt;
==== Sprint ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5PE0XXXXXXX (Pre on the Sprint network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/sr1ntp121rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/sr1ntp131rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pre/p135r0d12302009/sr1ntp135rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/sr1ntp1351rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/sr1ntp140rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pre/p1411r0d03312010/sr1ntp1411rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d08102010/spr1ntp145rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi =====&lt;br /&gt;
*P120EWW: P6P20XXXXXXX (Pixi on the Sprint network)&lt;br /&gt;
* version 1.3.1  http://palm.cdnetworks.net/rom/pixi/px131r0d11172009/sr1ntp131rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.2 http://palm.cdnetworks.net/rom/pixi/px132r0d12032009/sr1ntp132rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pixi/px135r0d12302009/sr1ntp135rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/sr1ntp1351rod/webosdoctorp120ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/sr1ntp140rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixi/px1411r0d03312010/sr1ntp1411rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixi/px145r0d08102010/spr1ntp145rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
''(Palm changed p200eww to p120eww in version 1.3.5.1)''&lt;br /&gt;
''(Palm changed p120eww back to p200eww in version 1.4.0)''&lt;br /&gt;
&lt;br /&gt;
==== Bell Mobility ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5BE0XXXXXXX (Pre on the Bell network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/b11ep121rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/b11ep131rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/b11ep1351rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/b11ep140rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/b11ep141rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d07142010/b11ep145rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
&lt;br /&gt;
==== O2 Germany, UK and Ireland / Movistar Spain ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UEU: P5FU0XXXXXXX (Pre on the Movistar network)&lt;br /&gt;
* P100UEU: P5HUGXXXXXXX (Pre on the o2 network)&lt;br /&gt;
* version 1.1.3 http://palm.cdnetworks.net/rom/p113r0d10122009/wr640xdfgy12z/webosdoctorp100eww-wr.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/wrep131rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.3.5.2 http://palm.cdnetworks.net/rom/pre/p1352r0d01182010/wrep1352rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/wrep140rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/eudep141rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d06302010/eudep145rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04282010/wrep141rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Vodafone Europe ====&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1.2 http://palm.cdnetworks.net/rom/pixiplus/px1412r0d04282010/wrep1412rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7NUGXXXXXXX (Pre Plus on the Vodafone network)&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== SFR France ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7JUAXXXXXXX (Pre Plus on the SFR network)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04272010/wrep141rod/webosdoctorp121ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Telcel GSM, Mexico ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UNA: P5XU0XXXXXXX (Pre on the Telcel network)&lt;br /&gt;
* version 1.2.5 http://palm.cdnetworks.net/rom/pre/p125r0d11252009/tce11p125rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/tce11p1351rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/tce11p140rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
&lt;br /&gt;
==== Verizon Wireless ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101EWW: P7VE0XXXXXXX (Pre Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/ver1z0np1351rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/ver1z0np140rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/preplus/p1411r0d04282010/ver1z0np1411rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/ver1z0np145rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/preplus/p1451r0d05182011/ver1z0np1451rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121EWW: P8V20XXXXXXX (Pixi Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/ver1z0np1351rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/ver1z0np140rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixiplus/px1411r0d04282010/ver1z0np1411rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d08302010/ver1z0np145rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/pixiplus/px1451r0d05182011/ver1z0np1451rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102EWW: PGVE0XXXXXXX (Pre 2 on the Verizon network)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d02172011/ver1z0np201rod/webosdoctorp102verizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
==== AT&amp;amp;T ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UNA : P7CG0XXXXXXX (Pre Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.2 http://palm.cdnetworks.net/rom/preplus/p142r0d05162010/attp142rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/attp145rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UNA: P8WU0XXXXXXX (Pixi Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.3 http://palm.cdnetworks.net/rom/pixiplus/px143r0d06062010/attp143rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d10112010/attp145rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Veer =====&lt;br /&gt;
* P160UNA: W1BD6XXXXXXX (Veer on the AT&amp;amp;T network)&lt;br /&gt;
* version 2.1.2 http://palm.cdnetworks.net/rom/veer/p212r0d05132011/attp212rod/webosdoctorp160unaatt.jar&lt;br /&gt;
&lt;br /&gt;
==== Rogers ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210r0d03082011/wrep210rod/webosdoctorp104ueu-wr.jar&lt;br /&gt;
''(Palm changed p102ueuna to p104ueu in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
==== Unlocked ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102UEU: PG4U0XXXXXXX (Pre 2 on the Unlocked - Europe network)&lt;br /&gt;
* P102UNA: PG9U0XXXXXXX (Pre 2 on the Unlocked - North America network)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU only)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11182010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
''(Palm changed p103ueu to p102ueuna in 2.0.1)''&lt;br /&gt;
''(Palm changed p102ueuna to p103ueuna in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
== License ==&lt;br /&gt;
&lt;br /&gt;
Note that the webOS Doctor package comes with the following license:&lt;br /&gt;
&lt;br /&gt;
RESTRICTIONS: The Software is licensed for use only with the single Palm device you originally purchased, and you may not distribute or make the Software available over a network or for use with multiple devices. The Software and supporting documentation may be copied only as necessary for backup or archive purposes in support of your use of the Software.&lt;br /&gt;
&lt;br /&gt;
So we can't host different versions of it anywhere - the best we can do is record the md5sums of the versions we know about so that individuals can match this to the files they have for use with their Palm device.&lt;br /&gt;
&lt;br /&gt;
== MD5 sums ==&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the versions that we know about (with md5sums for each, and the build date and build number as displayed in the title bar of the webOS Doctor):&lt;br /&gt;
&lt;br /&gt;
 Date      #  MD5SUM                           Filename&lt;br /&gt;
 20090522  118 4b3e396f8b1f1c5d3388e3c298af0484 webosdoctorp100ewwsprint-1.0.2.jar&lt;br /&gt;
 20090616  124 0c8027b5a707eb0d02b1997d48021bd5 webosdoctorp100ewwsprint-1.0.3.jar&lt;br /&gt;
 20090623  129 32852c4b57d938e85f0fc819e57eacb7 webosdoctorp100ewwsprint-1.0.4.jar&lt;br /&gt;
 20090717  143 fc602490fdd7b3be8c5f727349c6195f webosdoctorp100ewwsprint-1.1.0.jar&lt;br /&gt;
 20090717   83 ffd1bc50066d8f54d134b7aac194e3ec webosdoctorp100ewwbellmo-1.1.0.jar&lt;br /&gt;
 20090913  111 c8f80b3cdbb9b96fd73bbb6062950a83 webosdoctorp100ewwbellmo-1.2.0.jar&lt;br /&gt;
 20090913  171 93c3f106b7a7e5ef572465dcb4488e1c webosdoctorp100ewwsprint-1.2.0.jar&lt;br /&gt;
 20090924  100 bc29e1144823afc05a50dcdc2c84475d webosdoctorp100eww-wr-1.1.3.jar&lt;br /&gt;
 20090929  112 52f4a4cd9b182004a7060cfaa5be2c6f webosdoctorp100ewwbellmo-1.2.1.jar&lt;br /&gt;
 20090929  172 e7600251e12e5b96f3143138ba61b9eb webosdoctorp100ewwsprint-1.2.1.jar&lt;br /&gt;
 20091008    7 477f6c3d2ff1673aa9a9d1670aa5e88f webosdoctorp100ewwtelcel-1.2.5.jar&lt;br /&gt;
 20091015   98 1957476e6d9d221413285c6d5ab697d6 webosdoctorp200ewwsprint-1.2.9.1.jar&lt;br /&gt;
 20091101  112 063c2f66682dd246fa3bf518adae0f53 webosdoctorp200ewwsprint-1.3.1.jar&lt;br /&gt;
 20091101  122 9bb8e7547996b5b62ce8742198a9d8bb webosdoctorp100ueu-wr-1.3.1.jar&lt;br /&gt;
 20091101  122 b93f2f6af2c8eefc89f6ccc03b72eeb6 webosdoctorp100eww-wr-1.3.1.jar&lt;br /&gt;
 20091101  131 c4202a32ca49a1c843f30b77515cac46 webosdoctorp100ewwbellmo-1.3.1.jar&lt;br /&gt;
 20091101  194 8261682a25ac21bb2f3107ec5c50dc84 webosdoctorp100ewwsprint-1.3.1.jar&lt;br /&gt;
 20091113  119 eb33e68b07ccad81847d96f546303880 webosdoctorp200ewwsprint-1.3.2.jar&lt;br /&gt;
 20091125  140 e9a00b0a24a08f4cca4683bc5ec62227 webosdoctorp100ewwbellmo-1.3.5.jar&lt;br /&gt;
 20091130  134 4af3d5c4a6d0461b95e75b3fadf93435 webosdoctorp100ueu-wr-1.3.5.jar&lt;br /&gt;
 20091212  147 00b2575415c5645e9840cce4b8d075e6 webosdoctorp200ewwsprint-1.3.5.jar&lt;br /&gt;
 20091212  219 4daef882c96461dc1c60cc907c4dfbf0 webosdoctorp100ewwsprint-1.3.5.jar&lt;br /&gt;
 20100103  148 b78ad564fd8dcdfd469ca43285a5cd90 webosdoctorp120ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103  154 ff9784382ef53e491cb4d81015a34135 webosdoctorp100ewwbellmo-1.3.5.1.jar&lt;br /&gt;
 20100103  220 14e3c4168030498b42370115b33ee278 webosdoctorp100ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103   27 173dea06595c3c2080b0a8522a160d1c webosdoctorp100ewwtelcel-1.3.5.1.jar&lt;br /&gt;
 20100103   98 257ee7c9751a0ff909d3f81792a9b874 webosdoctorp101ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100106  148 a3c7ae6d93409dea9f0461636f5c79c0 webosdoctorp100ueu-wr-1.3.5.2.jar&lt;br /&gt;
 20100108  140 89cc6fbaff0d0ce4a05ed5bae53793f8 webosdoctorp121ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100214  179 0593f3b94ec4050febacea14c8af7b10 webosdoctorp100ueu-wr-1.4.0.jar&lt;br /&gt;
 20100214  187 646dd275690fcd7b3819ddddc488c2de webosdoctorp100ewwbellmo-1.4.0.jar&lt;br /&gt;
 20100214  195 46025f5f59c98721dee4ef4214e5f90b webosdoctorp200ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214  254 7aee384f4fdcc6189a027617efaac983 webosdoctorp100ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214   52 e9a1d644a447d460e340725869f3ad46 webosdoctorp100ewwtelcel-1.4.0.jar&lt;br /&gt;
 20100220  136 4bb776010b0b88da25630887d72faa18 webosdoctorp101ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100220  169 f7f3296db9ef0682d98f92354f696ba2 webosdoctorp121ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100313  198 7f7d258ba662dcd3085d76cb67dee906 webosdoctorp101ueu-wr-1.4.1.jar   &lt;br /&gt;
 20100317  208 edf4fa9cbac537f4b734339820b85030 webosdoctorp100ewwbellmo-1.4.1.jar&lt;br /&gt;
 20100318  121 f9b8aaa955255e9645f833b57010b60a webosdoctorp101ewwatt-1.4.2.jar&lt;br /&gt;
 20100319  190 bd9d4aca9f1b9657956e29a09648e4b0 webosdoctorp121ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  202 63ea69769b8b066f7525cba3d3c2d1bc webosdoctorp100ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  278 5f736a8baf27a3ea4d525c30f871f2d2 webosdoctorp100ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100325  225 a6779bbdbb34a52cde1104a29dab64ca webosdoctorp200ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100401  158 edb45ceebb21de02aecf4ae457e785de webosdoctorp101ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100401  199 48912881581fb240e2a27e688b80ac79 webosdoctorp121ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100419  222 eba97405cc882687567aa0988a206fb4 webosdoctorp121ewwatt-1.4.3.jar&lt;br /&gt;
 20100614  299 a55a377dd38fd7a8e94ba9514e1d9e18 webosdoctorp100ewwsprint-1.4.5.jar&lt;br /&gt;
 20100614  222 ca6a2e3a976b593859b11dee9941a80e webosdoctorp100ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  222 dddc78516c6770b475d08bdcf20f22d0 webosdoctorp101ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  231 1b0c63976ef3bc783770e35cfad55e5f webosdoctorp121ewweu-wr-1.4.5.jar&lt;br /&gt;
 20100614  232 e11d44f00d7d9b44e7dcddb3f5b45bee webosdoctorp100ewwbellmo-1.4.5.jar&lt;br /&gt;
 20100614  171 2e1cbe14267c61941d62d2d7fd82a544 webosdoctorp101ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100615  226 7d25cd1a8dbda76d297a9d4998d8e32a webosdoctorp121ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100722  142 6c0c12ae2585e8f8e1adf3965603ba78 webosdoctorp101ewwatt-1.4.5.jar&lt;br /&gt;
 20100818  233 957acf91ecc1d126c7062477bd10093c webosdoctorp121ewwatt-1.4.5.jar&lt;br /&gt;
 20101009   70 5152f9f3f9fd24f5491ac809d1138735 webosdoctorp103ueu-wr-2.0.0.jar (P102UEU)&lt;br /&gt;
 20101009   70 1aa510de51394e490428cc053d3cdfd0 webosdoctorp103ueu-wr-2.0.0.jar (P102UNA)&lt;br /&gt;
 20101117   79 e9f7c688266718a319b9fdfd6ef6c599 webosdoctorp102ueuna-wr-2.0.1.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20101222  100 643824a4c103e266fd8e2760b098815c webosdoctorp102verizonwireless-2.0.1.jar (P102EWW)&lt;br /&gt;
 20110201  284 ed2c394171d19a4af9d9d42c670e9791 webosdoctorp101ueude-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110202  100 1b9d7d63e0f765647705bac6a867da02 webosdoctorp104ueu-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110225  108 477f12cc73f5d8a3a00761dcb3751e6b webosdoctorp103ueuna-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110302  285 03566ac546d72c59d1cdc1af5a4da920 webosdoctorp101ueu-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110318  231 fdc62b2d6e717dc90b208d52fd6336c0 webosdoctorp101ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
 20110415 2296 bb2743f0a30abdb62c03b071d149c5a6 webosdoctorp160unaatt-2.1.2.jar&lt;br /&gt;
 20110421  276 0cd21b1f65b021787c8c83d7529adfaa webosdoctorp121ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
1.0.3 is the last version to contain PmModemFactory&lt;br /&gt;
&lt;br /&gt;
Using a 2.0 doctor will wipe your usb partition, unless you already have 2.0 on your device.  For example, 1.4.5 &amp;gt; 2.0.1 will wipe usb, but 2.0.0 &amp;gt; 2.0.1 will not.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17059</id>
		<title>WebOS Doctor Versions</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17059"/>
		<updated>2011-07-01T15:46:46Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Bell Mobility = */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to get webOS ROM ==&lt;br /&gt;
&lt;br /&gt;
You can download webOS ROM for your specific Palm device at http://ws.palm.com/webosdoctor/serialnumberinitial.htm &lt;br /&gt;
by using your Palm device serial number.&lt;br /&gt;
&lt;br /&gt;
== Serial Numbers ==&lt;br /&gt;
&lt;br /&gt;
Please add the first five characters of your serial number in the appropriate download link section below if it is not there already. Then put your serial number in http://palm.com/rom to get the text inside the brackets describing your device configuration.&lt;br /&gt;
&lt;br /&gt;
== Download links ==&lt;br /&gt;
It seems the webOS Doctor jar files provided by Palm keep changing:&lt;br /&gt;
&lt;br /&gt;
'''''NOTE: Since March 18th 2010, the Palm servers are no longer hosting old WebOSDoctor versions via the links below. The current versions are still available.'''''&lt;br /&gt;
=== Tablet ===&lt;br /&gt;
==== Wifi Only ====&lt;br /&gt;
* HSTNH-129C: 5CL11XXXXX (HP TouchPad Wifi Only)&lt;br /&gt;
* version 3.0.0 http://palm.cdnetworks.net/rom/touchpad/wd300wifi/webosdoctorp300hstnhwifi.jar&lt;br /&gt;
&lt;br /&gt;
=== Phone ===&lt;br /&gt;
==== Sprint ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5PE0XXXXXXX (Pre on the Sprint network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/sr1ntp121rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/sr1ntp131rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pre/p135r0d12302009/sr1ntp135rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/sr1ntp1351rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/sr1ntp140rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pre/p1411r0d03312010/sr1ntp1411rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d08102010/spr1ntp145rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi =====&lt;br /&gt;
*P120EWW: P6P20XXXXXXX (Pixi on the Sprint network)&lt;br /&gt;
* version 1.3.1  http://palm.cdnetworks.net/rom/pixi/px131r0d11172009/sr1ntp131rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.2 http://palm.cdnetworks.net/rom/pixi/px132r0d12032009/sr1ntp132rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pixi/px135r0d12302009/sr1ntp135rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/sr1ntp1351rod/webosdoctorp120ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/sr1ntp140rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixi/px1411r0d03312010/sr1ntp1411rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixi/px145r0d08102010/spr1ntp145rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
''(Palm changed p200eww to p120eww in version 1.3.5.1)''&lt;br /&gt;
''(Palm changed p120eww back to p200eww in version 1.4.0)''&lt;br /&gt;
&lt;br /&gt;
==== Bell Mobility ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5BE0XXXXXXX (Pre on the Bell network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/b11ep121rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/b11ep131rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/b11ep1351rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/b11ep140rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/b11ep141rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d07142010/b11ep145rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
&lt;br /&gt;
==== O2 Germany, UK and Ireland / Movistar Spain ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UEU: P5FU0XXXXXXX (Pre on the Movistar network)&lt;br /&gt;
* P100UEU: P5HUGXXXXXXX (Pre on the o2 network)&lt;br /&gt;
* version 1.1.3 http://palm.cdnetworks.net/rom/p113r0d10122009/wr640xdfgy12z/webosdoctorp100eww-wr.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/wrep131rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.3.5.2 http://palm.cdnetworks.net/rom/pre/p1352r0d01182010/wrep1352rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/wrep140rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/eudep141rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d06302010/eudep145rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04282010/wrep141rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Vodafone Europe ====&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1.2 http://palm.cdnetworks.net/rom/pixiplus/px1412r0d04282010/wrep1412rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7NUGXXXXXXX (Pre Plus on the Vodafone network)&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== SFR France ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7JUAXXXXXXX (Pre Plus on the SFR network)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04272010/wrep141rod/webosdoctorp121ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Telcel GSM, Mexico ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UNA: P5XU0XXXXXXX (Pre on the Telcel network)&lt;br /&gt;
* version 1.2.5 http://palm.cdnetworks.net/rom/pre/p125r0d11252009/tce11p125rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/tce11p1351rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/tce11p140rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
&lt;br /&gt;
==== Verizon Wireless ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101EWW: P7VE0XXXXXXX (Pre Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/ver1z0np1351rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/ver1z0np140rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/preplus/p1411r0d04282010/ver1z0np1411rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/ver1z0np145rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/preplus/p1451r0d05182011/ver1z0np1451rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121EWW: P8V20XXXXXXX (Pixi Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/ver1z0np1351rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/ver1z0np140rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixiplus/px1411r0d04282010/ver1z0np1411rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d08302010/ver1z0np145rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/pixiplus/px1451r0d05182011/ver1z0np1451rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102EWW: PGVE0XXXXXXX (Pre 2 on the Verizon network)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d02172011/ver1z0np201rod/webosdoctorp102verizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
==== AT&amp;amp;T ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UNA : P7CG0XXXXXXX (Pre Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.2 http://palm.cdnetworks.net/rom/preplus/p142r0d05162010/attp142rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/attp145rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UNA: P8WU0XXXXXXX (Pixi Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.3 http://palm.cdnetworks.net/rom/pixiplus/px143r0d06062010/attp143rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d10112010/attp145rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Veer =====&lt;br /&gt;
* P160UNA: W1BD6XXXXXXX (Veer on the AT&amp;amp;T network)&lt;br /&gt;
* version 2.1.2 http://palm.cdnetworks.net/rom/veer/p212r0d05132011/attp212rod/webosdoctorp160unaatt.jar&lt;br /&gt;
&lt;br /&gt;
==== Rogers ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210r0d03082011/wrep210rod/webosdoctorp104ueu-wr.jar&lt;br /&gt;
''(Palm changed p102ueuna to p104ueu in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
==== Unlocked ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102UEU: PG4U0XXXXXXX (Pre 2 on the Unlocked - Europe network)&lt;br /&gt;
* P102UNA: PG9U0XXXXXXX (Pre 2 on the Unlocked - North America network)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU only)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11182010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
''(Palm changed p103ueu to p102ueuna in 2.0.1)''&lt;br /&gt;
''(Palm changed p102ueuna to p103ueuna in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
== License ==&lt;br /&gt;
&lt;br /&gt;
Note that the webOS Doctor package comes with the following license:&lt;br /&gt;
&lt;br /&gt;
RESTRICTIONS: The Software is licensed for use only with the single Palm device you originally purchased, and you may not distribute or make the Software available over a network or for use with multiple devices. The Software and supporting documentation may be copied only as necessary for backup or archive purposes in support of your use of the Software.&lt;br /&gt;
&lt;br /&gt;
So we can't host different versions of it anywhere - the best we can do is record the md5sums of the versions we know about so that individuals can match this to the files they have for use with their Palm device.&lt;br /&gt;
&lt;br /&gt;
== MD5 sums ==&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the versions that we know about (with md5sums for each, and the build date and build number as displayed in the title bar of the webOS Doctor):&lt;br /&gt;
&lt;br /&gt;
 Date      #  MD5SUM                           Filename&lt;br /&gt;
 20090522  118 4b3e396f8b1f1c5d3388e3c298af0484 webosdoctorp100ewwsprint-1.0.2.jar&lt;br /&gt;
 20090616  124 0c8027b5a707eb0d02b1997d48021bd5 webosdoctorp100ewwsprint-1.0.3.jar&lt;br /&gt;
 20090623  129 32852c4b57d938e85f0fc819e57eacb7 webosdoctorp100ewwsprint-1.0.4.jar&lt;br /&gt;
 20090717  143 fc602490fdd7b3be8c5f727349c6195f webosdoctorp100ewwsprint-1.1.0.jar&lt;br /&gt;
 20090717   83 ffd1bc50066d8f54d134b7aac194e3ec webosdoctorp100ewwbellmo-1.1.0.jar&lt;br /&gt;
 20090913  111 c8f80b3cdbb9b96fd73bbb6062950a83 webosdoctorp100ewwbellmo-1.2.0.jar&lt;br /&gt;
 20090913  171 93c3f106b7a7e5ef572465dcb4488e1c webosdoctorp100ewwsprint-1.2.0.jar&lt;br /&gt;
 20090924  100 bc29e1144823afc05a50dcdc2c84475d webosdoctorp100eww-wr-1.1.3.jar&lt;br /&gt;
 20090929  112 52f4a4cd9b182004a7060cfaa5be2c6f webosdoctorp100ewwbellmo-1.2.1.jar&lt;br /&gt;
 20090929  172 e7600251e12e5b96f3143138ba61b9eb webosdoctorp100ewwsprint-1.2.1.jar&lt;br /&gt;
 20091008    7 477f6c3d2ff1673aa9a9d1670aa5e88f webosdoctorp100ewwtelcel-1.2.5.jar&lt;br /&gt;
 20091015   98 1957476e6d9d221413285c6d5ab697d6 webosdoctorp200ewwsprint-1.2.9.1.jar&lt;br /&gt;
 20091101  112 063c2f66682dd246fa3bf518adae0f53 webosdoctorp200ewwsprint-1.3.1.jar&lt;br /&gt;
 20091101  122 9bb8e7547996b5b62ce8742198a9d8bb webosdoctorp100ueu-wr-1.3.1.jar&lt;br /&gt;
 20091101  122 b93f2f6af2c8eefc89f6ccc03b72eeb6 webosdoctorp100eww-wr-1.3.1.jar&lt;br /&gt;
 20091101  131 c4202a32ca49a1c843f30b77515cac46 webosdoctorp100ewwbellmo-1.3.1.jar&lt;br /&gt;
 20091101  194 8261682a25ac21bb2f3107ec5c50dc84 webosdoctorp100ewwsprint-1.3.1.jar&lt;br /&gt;
 20091113  119 eb33e68b07ccad81847d96f546303880 webosdoctorp200ewwsprint-1.3.2.jar&lt;br /&gt;
 20091125  140 e9a00b0a24a08f4cca4683bc5ec62227 webosdoctorp100ewwbellmo-1.3.5.jar&lt;br /&gt;
 20091130  134 4af3d5c4a6d0461b95e75b3fadf93435 webosdoctorp100ueu-wr-1.3.5.jar&lt;br /&gt;
 20091212  147 00b2575415c5645e9840cce4b8d075e6 webosdoctorp200ewwsprint-1.3.5.jar&lt;br /&gt;
 20091212  219 4daef882c96461dc1c60cc907c4dfbf0 webosdoctorp100ewwsprint-1.3.5.jar&lt;br /&gt;
 20100103  148 b78ad564fd8dcdfd469ca43285a5cd90 webosdoctorp120ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103  154 ff9784382ef53e491cb4d81015a34135 webosdoctorp100ewwbellmo-1.3.5.1.jar&lt;br /&gt;
 20100103  220 14e3c4168030498b42370115b33ee278 webosdoctorp100ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103   27 173dea06595c3c2080b0a8522a160d1c webosdoctorp100ewwtelcel-1.3.5.1.jar&lt;br /&gt;
 20100103   98 257ee7c9751a0ff909d3f81792a9b874 webosdoctorp101ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100106  148 a3c7ae6d93409dea9f0461636f5c79c0 webosdoctorp100ueu-wr-1.3.5.2.jar&lt;br /&gt;
 20100108  140 89cc6fbaff0d0ce4a05ed5bae53793f8 webosdoctorp121ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100214  179 0593f3b94ec4050febacea14c8af7b10 webosdoctorp100ueu-wr-1.4.0.jar&lt;br /&gt;
 20100214  187 646dd275690fcd7b3819ddddc488c2de webosdoctorp100ewwbellmo-1.4.0.jar&lt;br /&gt;
 20100214  195 46025f5f59c98721dee4ef4214e5f90b webosdoctorp200ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214  254 7aee384f4fdcc6189a027617efaac983 webosdoctorp100ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214   52 e9a1d644a447d460e340725869f3ad46 webosdoctorp100ewwtelcel-1.4.0.jar&lt;br /&gt;
 20100220  136 4bb776010b0b88da25630887d72faa18 webosdoctorp101ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100220  169 f7f3296db9ef0682d98f92354f696ba2 webosdoctorp121ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100313  198 7f7d258ba662dcd3085d76cb67dee906 webosdoctorp101ueu-wr-1.4.1.jar   &lt;br /&gt;
 20100317  208 edf4fa9cbac537f4b734339820b85030 webosdoctorp100ewwbellmo-1.4.1.jar&lt;br /&gt;
 20100318  121 f9b8aaa955255e9645f833b57010b60a webosdoctorp101ewwatt-1.4.2.jar&lt;br /&gt;
 20100319  190 bd9d4aca9f1b9657956e29a09648e4b0 webosdoctorp121ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  202 63ea69769b8b066f7525cba3d3c2d1bc webosdoctorp100ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  278 5f736a8baf27a3ea4d525c30f871f2d2 webosdoctorp100ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100325  225 a6779bbdbb34a52cde1104a29dab64ca webosdoctorp200ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100401  158 edb45ceebb21de02aecf4ae457e785de webosdoctorp101ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100401  199 48912881581fb240e2a27e688b80ac79 webosdoctorp121ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100419  222 eba97405cc882687567aa0988a206fb4 webosdoctorp121ewwatt-1.4.3.jar&lt;br /&gt;
 20100614  299 a55a377dd38fd7a8e94ba9514e1d9e18 webosdoctorp100ewwsprint-1.4.5.jar&lt;br /&gt;
 20100614  222 ca6a2e3a976b593859b11dee9941a80e webosdoctorp100ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  222 dddc78516c6770b475d08bdcf20f22d0 webosdoctorp101ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  231 1b0c63976ef3bc783770e35cfad55e5f webosdoctorp121ewweu-wr-1.4.5.jar&lt;br /&gt;
 20100614  232 e11d44f00d7d9b44e7dcddb3f5b45bee webosdoctorp100ewwbellmo-1.4.5.jar&lt;br /&gt;
 20100614  171 2e1cbe14267c61941d62d2d7fd82a544 webosdoctorp101ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100615  226 7d25cd1a8dbda76d297a9d4998d8e32a webosdoctorp121ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100722  142 6c0c12ae2585e8f8e1adf3965603ba78 webosdoctorp101ewwatt-1.4.5.jar&lt;br /&gt;
 20100818  233 957acf91ecc1d126c7062477bd10093c webosdoctorp121ewwatt-1.4.5.jar&lt;br /&gt;
 20101009   70 5152f9f3f9fd24f5491ac809d1138735 webosdoctorp103ueu-wr-2.0.0.jar (P102UEU)&lt;br /&gt;
 20101009   70 1aa510de51394e490428cc053d3cdfd0 webosdoctorp103ueu-wr-2.0.0.jar (P102UNA)&lt;br /&gt;
 20101117   79 e9f7c688266718a319b9fdfd6ef6c599 webosdoctorp102ueuna-wr-2.0.1.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20101222  100 643824a4c103e266fd8e2760b098815c webosdoctorp102verizonwireless-2.0.1.jar (P102EWW)&lt;br /&gt;
 20110201  284 ed2c394171d19a4af9d9d42c670e9791 webosdoctorp101ueude-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110202  100 1b9d7d63e0f765647705bac6a867da02 webosdoctorp104ueu-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110225  108 477f12cc73f5d8a3a00761dcb3751e6b webosdoctorp103ueuna-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110302  285 03566ac546d72c59d1cdc1af5a4da920 webosdoctorp101ueu-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110318  231 fdc62b2d6e717dc90b208d52fd6336c0 webosdoctorp101ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
 20110415 2296 bb2743f0a30abdb62c03b071d149c5a6 webosdoctorp160unaatt-2.1.2.jar&lt;br /&gt;
 20110421  276 0cd21b1f65b021787c8c83d7529adfaa webosdoctorp121ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
1.0.3 is the last version to contain PmModemFactory&lt;br /&gt;
&lt;br /&gt;
Using a 2.0 doctor will wipe your usb partition, unless you already have 2.0 on your device.  For example, 1.4.5 &amp;gt; 2.0.1 will wipe usb, but 2.0.0 &amp;gt; 2.0.1 will not.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17057</id>
		<title>WebOS Doctor Versions</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=WebOS_Doctor_Versions&amp;diff=17057"/>
		<updated>2011-07-01T15:46:21Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to get webOS ROM ==&lt;br /&gt;
&lt;br /&gt;
You can download webOS ROM for your specific Palm device at http://ws.palm.com/webosdoctor/serialnumberinitial.htm &lt;br /&gt;
by using your Palm device serial number.&lt;br /&gt;
&lt;br /&gt;
== Serial Numbers ==&lt;br /&gt;
&lt;br /&gt;
Please add the first five characters of your serial number in the appropriate download link section below if it is not there already. Then put your serial number in http://palm.com/rom to get the text inside the brackets describing your device configuration.&lt;br /&gt;
&lt;br /&gt;
== Download links ==&lt;br /&gt;
It seems the webOS Doctor jar files provided by Palm keep changing:&lt;br /&gt;
&lt;br /&gt;
'''''NOTE: Since March 18th 2010, the Palm servers are no longer hosting old WebOSDoctor versions via the links below. The current versions are still available.'''''&lt;br /&gt;
=== Tablet ===&lt;br /&gt;
==== Wifi Only ====&lt;br /&gt;
* HSTNH-129C: 5CL11XXXXX (HP TouchPad Wifi Only)&lt;br /&gt;
* version 3.0.0 http://palm.cdnetworks.net/rom/touchpad/wd300wifi/webosdoctorp300hstnhwifi.jar&lt;br /&gt;
&lt;br /&gt;
=== Phone ===&lt;br /&gt;
==== Sprint ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5PE0XXXXXXX (Pre on the Sprint network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/sr1ntp121rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/sr1ntp131rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pre/p135r0d12302009/sr1ntp135rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/sr1ntp1351rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/sr1ntp140rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pre/p1411r0d03312010/sr1ntp1411rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d08102010/spr1ntp145rod/webosdoctorp100ewwsprint.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi =====&lt;br /&gt;
*P120EWW: P6P20XXXXXXX (Pixi on the Sprint network)&lt;br /&gt;
* version 1.3.1  http://palm.cdnetworks.net/rom/pixi/px131r0d11172009/sr1ntp131rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.2 http://palm.cdnetworks.net/rom/pixi/px132r0d12032009/sr1ntp132rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5 http://palm.cdnetworks.net/rom/pixi/px135r0d12302009/sr1ntp135rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/sr1ntp1351rod/webosdoctorp120ewwsprint.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/sr1ntp140rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixi/px1411r0d03312010/sr1ntp1411rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixi/px145r0d08102010/spr1ntp145rod/webosdoctorp200ewwsprint.jar&lt;br /&gt;
''(Palm changed p200eww to p120eww in version 1.3.5.1)''&lt;br /&gt;
''(Palm changed p120eww back to p200eww in version 1.4.0)''&lt;br /&gt;
&lt;br /&gt;
==== Bell Mobility =====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100EWW: P5BE0XXXXXXX (Pre on the Bell network)&lt;br /&gt;
* version 1.2.1 http://palm.cdnetworks.net/rom/p121r0d10092009/b11ep121rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/b11ep131rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/b11ep1351rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/b11ep140rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/b11ep141rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d07142010/b11ep145rod/webosdoctorp100ewwbellmo.jar&lt;br /&gt;
&lt;br /&gt;
==== O2 Germany, UK and Ireland / Movistar Spain ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UEU: P5FU0XXXXXXX (Pre on the Movistar network)&lt;br /&gt;
* P100UEU: P5HUGXXXXXXX (Pre on the o2 network)&lt;br /&gt;
* version 1.1.3 http://palm.cdnetworks.net/rom/p113r0d10122009/wr640xdfgy12z/webosdoctorp100eww-wr.jar&lt;br /&gt;
* version 1.3.1 http://palm.cdnetworks.net/rom/pre/p131r0d11172009/wrep131rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.3.5.2 http://palm.cdnetworks.net/rom/pre/p1352r0d01182010/wrep1352rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/wrep140rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pre/p141r0d03312010/eudep141rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pre/p145r0d06302010/eudep145rod/webosdoctorp100ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04282010/wrep141rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Vodafone Europe ====&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UEU: P8GUGXXXXXXX (Pixi Plus)&lt;br /&gt;
* version 1.4.1.2 http://palm.cdnetworks.net/rom/pixiplus/px1412r0d04282010/wrep1412rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7NUGXXXXXXX (Pre Plus on the Vodafone network)&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d02212011/eudep210rod/webosdoctorp101ueude-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== SFR France ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UEU: P7JUAXXXXXXX (Pre Plus on the SFR network)&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/preplus/p141r0d04272010/wrep141rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d06302010/eudep145rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/preplus/p210r0d03142011/eudep210rod/webosdoctorp101ueu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* version 1.4.1 http://palm.cdnetworks.net/rom/pixiplus/px141r0d04272010/wrep141rod/webosdoctorp121ueu-wr.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d06302010/wrep145rod/webosdoctorp121ewweu-wr.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar&lt;br /&gt;
&lt;br /&gt;
==== Telcel GSM, Mexico ====&lt;br /&gt;
===== Pre =====&lt;br /&gt;
* P100UNA: P5XU0XXXXXXX (Pre on the Telcel network)&lt;br /&gt;
* version 1.2.5 http://palm.cdnetworks.net/rom/pre/p125r0d11252009/tce11p125rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/tce11p1351rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/tce11p140rod/webosdoctorp100ewwtelcel.jar&lt;br /&gt;
&lt;br /&gt;
==== Verizon Wireless ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101EWW: P7VE0XXXXXXX (Pre Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pre/p1351r0d01082010/ver1z0np1351rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pre/p14r0d02252010/ver1z0np140rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/preplus/p1411r0d04282010/ver1z0np1411rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/ver1z0np145rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/preplus/p1451r0d05182011/ver1z0np1451rod/webosdoctorp101ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121EWW: P8V20XXXXXXX (Pixi Plus on the Verizon network)&lt;br /&gt;
* version 1.3.5.1 http://palm.cdnetworks.net/rom/pixi/px1351r0d01082010/ver1z0np1351rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.0 http://palm.cdnetworks.net/rom/pixi/px14r0d02252010/ver1z0np140rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.1.1 http://palm.cdnetworks.net/rom/pixiplus/px1411r0d04282010/ver1z0np1411rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d08302010/ver1z0np145rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
* version 1.4.5.1 http://palm.cdnetworks.net/rom/pixiplus/px1451r0d05182011/ver1z0np1451rod/webosdoctorp121ewwverizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102EWW: PGVE0XXXXXXX (Pre 2 on the Verizon network)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d02172011/ver1z0np201rod/webosdoctorp102verizonwireless.jar&lt;br /&gt;
&lt;br /&gt;
==== AT&amp;amp;T ====&lt;br /&gt;
===== Pre Plus =====&lt;br /&gt;
* P101UNA : P7CG0XXXXXXX (Pre Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.2 http://palm.cdnetworks.net/rom/preplus/p142r0d05162010/attp142rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/preplus/p145r0d09132010/attp145rod/webosdoctorp101ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Pixi Plus =====&lt;br /&gt;
* P121UNA: P8WU0XXXXXXX (Pixi Plus on the AT&amp;amp;T network)&lt;br /&gt;
* version 1.4.3 http://palm.cdnetworks.net/rom/pixiplus/px143r0d06062010/attp143rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
* version 1.4.5 http://palm.cdnetworks.net/rom/pixiplus/px145r0d10112010/attp145rod/webosdoctorp121ewwatt.jar&lt;br /&gt;
&lt;br /&gt;
===== Veer =====&lt;br /&gt;
* P160UNA: W1BD6XXXXXXX (Veer on the AT&amp;amp;T network)&lt;br /&gt;
* version 2.1.2 http://palm.cdnetworks.net/rom/veer/p212r0d05132011/attp212rod/webosdoctorp160unaatt.jar&lt;br /&gt;
&lt;br /&gt;
==== Rogers ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210r0d03082011/wrep210rod/webosdoctorp104ueu-wr.jar&lt;br /&gt;
''(Palm changed p102ueuna to p104ueu in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
==== Unlocked ====&lt;br /&gt;
===== Pre 2 =====&lt;br /&gt;
* P102UEU: PG4U0XXXXXXX (Pre 2 on the Unlocked - Europe network)&lt;br /&gt;
* P102UNA: PG9U0XXXXXXX (Pre 2 on the Unlocked - North America network)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11012010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU only)&lt;br /&gt;
* version 2.0.0 http://palm.cdnetworks.net/rom/pre2/p20r0d11182010/wrep20rod/webosdoctorp103ueu-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.0.1 http://palm.cdnetworks.net/rom/pre2/p201r0d11242010/wrep201rod/webosdoctorp102ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
* version 2.1.0 http://palm.cdnetworks.net/rom/pre2/p210sfr03082011/wrep210rod/webosdoctorp103ueuna-wr.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
''(Palm changed p103ueu to p102ueuna in 2.0.1)''&lt;br /&gt;
''(Palm changed p102ueuna to p103ueuna in 2.1.0)''&lt;br /&gt;
&lt;br /&gt;
== License ==&lt;br /&gt;
&lt;br /&gt;
Note that the webOS Doctor package comes with the following license:&lt;br /&gt;
&lt;br /&gt;
RESTRICTIONS: The Software is licensed for use only with the single Palm device you originally purchased, and you may not distribute or make the Software available over a network or for use with multiple devices. The Software and supporting documentation may be copied only as necessary for backup or archive purposes in support of your use of the Software.&lt;br /&gt;
&lt;br /&gt;
So we can't host different versions of it anywhere - the best we can do is record the md5sums of the versions we know about so that individuals can match this to the files they have for use with their Palm device.&lt;br /&gt;
&lt;br /&gt;
== MD5 sums ==&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the versions that we know about (with md5sums for each, and the build date and build number as displayed in the title bar of the webOS Doctor):&lt;br /&gt;
&lt;br /&gt;
 Date      #  MD5SUM                           Filename&lt;br /&gt;
 20090522  118 4b3e396f8b1f1c5d3388e3c298af0484 webosdoctorp100ewwsprint-1.0.2.jar&lt;br /&gt;
 20090616  124 0c8027b5a707eb0d02b1997d48021bd5 webosdoctorp100ewwsprint-1.0.3.jar&lt;br /&gt;
 20090623  129 32852c4b57d938e85f0fc819e57eacb7 webosdoctorp100ewwsprint-1.0.4.jar&lt;br /&gt;
 20090717  143 fc602490fdd7b3be8c5f727349c6195f webosdoctorp100ewwsprint-1.1.0.jar&lt;br /&gt;
 20090717   83 ffd1bc50066d8f54d134b7aac194e3ec webosdoctorp100ewwbellmo-1.1.0.jar&lt;br /&gt;
 20090913  111 c8f80b3cdbb9b96fd73bbb6062950a83 webosdoctorp100ewwbellmo-1.2.0.jar&lt;br /&gt;
 20090913  171 93c3f106b7a7e5ef572465dcb4488e1c webosdoctorp100ewwsprint-1.2.0.jar&lt;br /&gt;
 20090924  100 bc29e1144823afc05a50dcdc2c84475d webosdoctorp100eww-wr-1.1.3.jar&lt;br /&gt;
 20090929  112 52f4a4cd9b182004a7060cfaa5be2c6f webosdoctorp100ewwbellmo-1.2.1.jar&lt;br /&gt;
 20090929  172 e7600251e12e5b96f3143138ba61b9eb webosdoctorp100ewwsprint-1.2.1.jar&lt;br /&gt;
 20091008    7 477f6c3d2ff1673aa9a9d1670aa5e88f webosdoctorp100ewwtelcel-1.2.5.jar&lt;br /&gt;
 20091015   98 1957476e6d9d221413285c6d5ab697d6 webosdoctorp200ewwsprint-1.2.9.1.jar&lt;br /&gt;
 20091101  112 063c2f66682dd246fa3bf518adae0f53 webosdoctorp200ewwsprint-1.3.1.jar&lt;br /&gt;
 20091101  122 9bb8e7547996b5b62ce8742198a9d8bb webosdoctorp100ueu-wr-1.3.1.jar&lt;br /&gt;
 20091101  122 b93f2f6af2c8eefc89f6ccc03b72eeb6 webosdoctorp100eww-wr-1.3.1.jar&lt;br /&gt;
 20091101  131 c4202a32ca49a1c843f30b77515cac46 webosdoctorp100ewwbellmo-1.3.1.jar&lt;br /&gt;
 20091101  194 8261682a25ac21bb2f3107ec5c50dc84 webosdoctorp100ewwsprint-1.3.1.jar&lt;br /&gt;
 20091113  119 eb33e68b07ccad81847d96f546303880 webosdoctorp200ewwsprint-1.3.2.jar&lt;br /&gt;
 20091125  140 e9a00b0a24a08f4cca4683bc5ec62227 webosdoctorp100ewwbellmo-1.3.5.jar&lt;br /&gt;
 20091130  134 4af3d5c4a6d0461b95e75b3fadf93435 webosdoctorp100ueu-wr-1.3.5.jar&lt;br /&gt;
 20091212  147 00b2575415c5645e9840cce4b8d075e6 webosdoctorp200ewwsprint-1.3.5.jar&lt;br /&gt;
 20091212  219 4daef882c96461dc1c60cc907c4dfbf0 webosdoctorp100ewwsprint-1.3.5.jar&lt;br /&gt;
 20100103  148 b78ad564fd8dcdfd469ca43285a5cd90 webosdoctorp120ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103  154 ff9784382ef53e491cb4d81015a34135 webosdoctorp100ewwbellmo-1.3.5.1.jar&lt;br /&gt;
 20100103  220 14e3c4168030498b42370115b33ee278 webosdoctorp100ewwsprint-1.3.5.1.jar&lt;br /&gt;
 20100103   27 173dea06595c3c2080b0a8522a160d1c webosdoctorp100ewwtelcel-1.3.5.1.jar&lt;br /&gt;
 20100103   98 257ee7c9751a0ff909d3f81792a9b874 webosdoctorp101ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100106  148 a3c7ae6d93409dea9f0461636f5c79c0 webosdoctorp100ueu-wr-1.3.5.2.jar&lt;br /&gt;
 20100108  140 89cc6fbaff0d0ce4a05ed5bae53793f8 webosdoctorp121ewwverizonwireless-1.3.5.1.jar&lt;br /&gt;
 20100214  179 0593f3b94ec4050febacea14c8af7b10 webosdoctorp100ueu-wr-1.4.0.jar&lt;br /&gt;
 20100214  187 646dd275690fcd7b3819ddddc488c2de webosdoctorp100ewwbellmo-1.4.0.jar&lt;br /&gt;
 20100214  195 46025f5f59c98721dee4ef4214e5f90b webosdoctorp200ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214  254 7aee384f4fdcc6189a027617efaac983 webosdoctorp100ewwsprint-1.4.0.jar&lt;br /&gt;
 20100214   52 e9a1d644a447d460e340725869f3ad46 webosdoctorp100ewwtelcel-1.4.0.jar&lt;br /&gt;
 20100220  136 4bb776010b0b88da25630887d72faa18 webosdoctorp101ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100220  169 f7f3296db9ef0682d98f92354f696ba2 webosdoctorp121ewwverizonwireless-1.4.0.jar&lt;br /&gt;
 20100313  198 7f7d258ba662dcd3085d76cb67dee906 webosdoctorp101ueu-wr-1.4.1.jar   &lt;br /&gt;
 20100317  208 edf4fa9cbac537f4b734339820b85030 webosdoctorp100ewwbellmo-1.4.1.jar&lt;br /&gt;
 20100318  121 f9b8aaa955255e9645f833b57010b60a webosdoctorp101ewwatt-1.4.2.jar&lt;br /&gt;
 20100319  190 bd9d4aca9f1b9657956e29a09648e4b0 webosdoctorp121ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  202 63ea69769b8b066f7525cba3d3c2d1bc webosdoctorp100ueu-wr-1.4.1.jar&lt;br /&gt;
 20100324  278 5f736a8baf27a3ea4d525c30f871f2d2 webosdoctorp100ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100325  225 a6779bbdbb34a52cde1104a29dab64ca webosdoctorp200ewwsprint-1.4.1.1.jar&lt;br /&gt;
 20100401  158 edb45ceebb21de02aecf4ae457e785de webosdoctorp101ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100401  199 48912881581fb240e2a27e688b80ac79 webosdoctorp121ewwverizonwireless-1.4.1.1.jar&lt;br /&gt;
 20100419  222 eba97405cc882687567aa0988a206fb4 webosdoctorp121ewwatt-1.4.3.jar&lt;br /&gt;
 20100614  299 a55a377dd38fd7a8e94ba9514e1d9e18 webosdoctorp100ewwsprint-1.4.5.jar&lt;br /&gt;
 20100614  222 ca6a2e3a976b593859b11dee9941a80e webosdoctorp100ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  222 dddc78516c6770b475d08bdcf20f22d0 webosdoctorp101ueu-wr-1.4.5.jar&lt;br /&gt;
 20100614  231 1b0c63976ef3bc783770e35cfad55e5f webosdoctorp121ewweu-wr-1.4.5.jar&lt;br /&gt;
 20100614  232 e11d44f00d7d9b44e7dcddb3f5b45bee webosdoctorp100ewwbellmo-1.4.5.jar&lt;br /&gt;
 20100614  171 2e1cbe14267c61941d62d2d7fd82a544 webosdoctorp101ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100615  226 7d25cd1a8dbda76d297a9d4998d8e32a webosdoctorp121ewwverizonwireless-1.4.5.jar&lt;br /&gt;
 20100722  142 6c0c12ae2585e8f8e1adf3965603ba78 webosdoctorp101ewwatt-1.4.5.jar&lt;br /&gt;
 20100818  233 957acf91ecc1d126c7062477bd10093c webosdoctorp121ewwatt-1.4.5.jar&lt;br /&gt;
 20101009   70 5152f9f3f9fd24f5491ac809d1138735 webosdoctorp103ueu-wr-2.0.0.jar (P102UEU)&lt;br /&gt;
 20101009   70 1aa510de51394e490428cc053d3cdfd0 webosdoctorp103ueu-wr-2.0.0.jar (P102UNA)&lt;br /&gt;
 20101117   79 e9f7c688266718a319b9fdfd6ef6c599 webosdoctorp102ueuna-wr-2.0.1.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20101222  100 643824a4c103e266fd8e2760b098815c webosdoctorp102verizonwireless-2.0.1.jar (P102EWW)&lt;br /&gt;
 20110201  284 ed2c394171d19a4af9d9d42c670e9791 webosdoctorp101ueude-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110202  100 1b9d7d63e0f765647705bac6a867da02 webosdoctorp104ueu-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110225  108 477f12cc73f5d8a3a00761dcb3751e6b webosdoctorp103ueuna-wr-2.1.0.jar (P102UEU &amp;amp; P102UNA)&lt;br /&gt;
 20110302  285 03566ac546d72c59d1cdc1af5a4da920 webosdoctorp101ueu-wr-2.1.0.jar (P101UEU &amp;amp; P101UNA)&lt;br /&gt;
 20110318  231 fdc62b2d6e717dc90b208d52fd6336c0 webosdoctorp101ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
 20110415 2296 bb2743f0a30abdb62c03b071d149c5a6 webosdoctorp160unaatt-2.1.2.jar&lt;br /&gt;
 20110421  276 0cd21b1f65b021787c8c83d7529adfaa webosdoctorp121ewwverizonwireless-1.4.5.1.jar&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
1.0.3 is the last version to contain PmModemFactory&lt;br /&gt;
&lt;br /&gt;
Using a 2.0 doctor will wipe your usb partition, unless you already have 2.0 on your device.  For example, 1.4.5 &amp;gt; 2.0.1 will wipe usb, but 2.0.0 &amp;gt; 2.0.1 will not.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17055</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17055"/>
		<updated>2011-07-01T10:28:48Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Prototype demo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
*It must support storage and query of every key within the ipkg packages file (including the ones jammed into the source line&lt;br /&gt;
*(Optional)Support for predefined queries&lt;br /&gt;
*(Optional)Support for dynamic storage of arbitrary new keys if a new one should crop up&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well.&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
=Predefined Queries=&lt;br /&gt;
&lt;br /&gt;
These would be accomplished by sending a query similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;preset&amp;quot;:&amp;quot;preware-feed-pull&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API server would be pre-programmed for certain predefined queries, it would know what data should be returned as part of that preset.  We could make as many of these as needed, but I suspect that only a small handfull would be needed.  This would aid code simplicity when it comes time to implement this API on the client side as well as making the client side code easier to maintain.&lt;br /&gt;
&lt;br /&gt;
Should we need some new field sent along for some new feature in a package that uses the API, we could adjust the response in one place, on the server, and that newly required data would be sent along.&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
We can either have the API servers run a database update on a schedule, or (and I like this option better), it would be pretty easy to have the autobuilder capable of notifying the API server (possibly servers) of when it runs a pass where a new package was built.  The flow would be about like this.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17053</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17053"/>
		<updated>2011-07-01T10:27:09Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
*It must support storage and query of every key within the ipkg packages file (including the ones jammed into the source line&lt;br /&gt;
*(Optional)Support for predefined queries&lt;br /&gt;
*(Optional)Support for dynamic storage of arbitrary new keys if a new one should crop up&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
=Predefined Queries=&lt;br /&gt;
&lt;br /&gt;
These would be accomplished by sending a query similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;preset&amp;quot;:&amp;quot;preware-feed-pull&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API server would be pre-programmed for certain predefined queries, it would know what data should be returned as part of that preset.  We could make as many of these as needed, but I suspect that only a small handfull would be needed.  This would aid code simplicity when it comes time to implement this API on the client side as well as making the client side code easier to maintain.&lt;br /&gt;
&lt;br /&gt;
Should we need some new field sent along for some new feature in a package that uses the API, we could adjust the response in one place, on the server, and that newly required data would be sent along.&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
We can either have the API servers run a database update on a schedule, or (and I like this option better), it would be pretty easy to have the autobuilder capable of notifying the API server (possibly servers) of when it runs a pass where a new package was built.  The flow would be about like this.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17047</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17047"/>
		<updated>2011-07-01T08:30:30Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
*(Optional)Support for predefined queries&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
=Predefined Queries=&lt;br /&gt;
&lt;br /&gt;
These would be accomplished by sending a query similar to the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;preset&amp;quot;:&amp;quot;preware-feed-pull&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API server would be pre-programmed for certain predefined queries, it would know what data should be returned as part of that preset.  We could make as many of these as needed, but I suspect that only a small handfull would be needed.  This would aid code simplicity when it comes time to implement this API on the client side as well as making the client side code easier to maintain.&lt;br /&gt;
&lt;br /&gt;
Should we need some new field sent along for some new feature in a package that uses the API, we could adjust the response in one place, on the server, and that newly required data would be sent along.&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
We can either have the API servers run a database update on a schedule, or (and I like this option better), it would be pretty easy to have the autobuilder capable of notifying the API server (possibly servers) of when it runs a pass where a new package was built.  The flow would be about like this.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17043</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17043"/>
		<updated>2011-07-01T08:12:23Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;br /&gt;
&lt;br /&gt;
=Extra Considerations=&lt;br /&gt;
&lt;br /&gt;
==Source Line Split==&lt;br /&gt;
Right now, we are jamming a lot of &amp;quot;extra&amp;quot; information into the Source: line in the Packages index as a JSON object.  With this API, it would be fairly trivial to split these out into separate references.  For example, here is the Packages index information for Preware v1.7.0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Package: org.webosinternals.preware&lt;br /&gt;
Version: 1.7.0&lt;br /&gt;
Section: System Utilities&lt;br /&gt;
Architecture: arm&lt;br /&gt;
Maintainer: WebOS Internals &amp;lt;support@webos-internals.org&amp;gt;&lt;br /&gt;
MD5Sum: 6e896b02fa512c0e811b352b4fa775e6&lt;br /&gt;
Size: 334828&lt;br /&gt;
Filename: org.webosinternals.preware_1.7.0_arm.ipk&lt;br /&gt;
Source: { &amp;quot;Source&amp;quot;:&amp;quot;git://git.webos-internals.org/applications/preware.git&amp;quot;, &amp;quot;Feed&amp;quot;:&amp;quot;WebOS Internals&amp;quot;, &amp;quot;Type&amp;quot;:&amp;quot;Application&amp;quot;, &amp;quot;Category&amp;quot;:&amp;quot;System Utilities&amp;quot;, &amp;quot;LastUpdated&amp;quot;:&amp;quot;1309401687&amp;quot;, &amp;quot;Title&amp;quot;:&amp;quot;Preware&amp;quot;, &amp;quot;FullDescription&amp;quot;:&amp;quot;The revolutionary webOS on-device installer capable of installing advanced homebrew applications, themes, patches, kernels, services and plugins. Preware is also able to access official Palm App Catalog, Web Distribution and Beta Distribution feeds.&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;Requires webOS 1.4.0 or later&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;Changelog:&amp;lt;br&amp;gt;1.7.0: Rolled up all the beta release features for a TouchPad-compatible public release.&amp;lt;br&amp;gt; 1.6.8: Enabled back tap on header for all devices.&amp;lt;br&amp;gt; 1.6.7: Fixed full-screen formatting of ipkg log screen.&amp;lt;br&amp;gt; 1.6.6: Preware is now fully compatible with the TouchPad, using the full screen area.&amp;lt;br&amp;gt; 1.6.5: Now useable on devices without a back gesture. Set the wget user-agent to Preware when retrieving indexes and packages.&amp;lt;br&amp;gt; 1.6.4: Fixed a problem when loading the saved packages list.&amp;lt;br&amp;gt; 1.6.3: WebOS Internals has been formally notified by Richard Kerris (HP Vice President of Worldwide Developer Relations) that open access to the webOS app catalog feed (including the beta and web feeds) is no longer available to third party developers or applications. Please direct any questions about this decision (which is final and permanent) to HP, not to WebOS Internals. Removed all HP webOS app catalog feeds from new installations of Preware.&amp;lt;br&amp;gt; 1.6.2: Added the clock themes feed (disabled by default).&amp;lt;br&amp;gt; 1.6.0: webOS 2.x Just Type integration. Fixed package list ordering bug. Layout fixes for Pixi/Veer.&amp;lt;br&amp;gt; 1.5.9: Fixed parse errors resulting from packages with very large descriptions. Fixed problems with updates to app catalog apps.&amp;lt;br&amp;gt; 1.5.8: Moved blacklisting to feed load to speed up listing. Suggests a reload after changing the blacklist. Fixed homebrew feed/catalog feed same appid bug.&amp;lt;br&amp;gt; 1.5.7: Added check to make sure package has a title before trying to search it.&amp;lt;br&amp;gt; 1.5.6: Removed support for Visibility feed value - use a category filter to exclude Unavailable packages if desired.&amp;lt;br&amp;gt; 1.5.5: Added support for Visibility feed value. Fix display of screenshots from devices with a different resolution. Test fix for custom feed on network with no internet connection. Style updates for pre3 screen size.&amp;lt;br&amp;gt; 1.5.4: Updated French translations (courtesy of ClÃ©ment).&amp;lt;br&amp;gt; 1.5.3: Reinstated banner notification of manual saved package list update.&amp;lt;br&amp;gt; 1.5.2: Check if package dates are actually dates. Removed banner notification of saved package list being saved.&amp;lt;br&amp;gt; 1.5.1: Added support for optware testing feeds.&amp;lt;br&amp;gt; 1.5.0: You must upgrade to this version for full webOS 2.0 compatibility.&amp;lt;br&amp;gt; 1.4.9: Better compatibility with unknown future webOS versions.&amp;lt;br&amp;gt; 1.4.8: Now calls the correct software manager updates screen on webOS 2.0.&amp;lt;br&amp;gt; 1.4.7: Fixed update, install and remove status messages on webOS 2.0.&amp;lt;br&amp;gt; 1.4.6: New App Catalog theme preferences thanks to Garrett92C. Added support for MaxWebOSVersion in the feeds.&amp;lt;br&amp;gt; 1.4.5: Added support for identifying when running on a Pre 2 device.&amp;lt;br&amp;gt; 1.4.4: Updated the version check to support future webOS versions.&amp;lt;br&amp;gt; 1.4.2: Added Category as a blacklist option.&amp;lt;br&amp;gt; 1.4.1: Added a Changelog button to the Help scene.&amp;lt;br&amp;gt; 1.4.0: Added help to preferences scene. Fixed swipe-to-delete bug in blacklist. Updated Italian translations (courtesy of Darkmagister). Added Get Info button to package install scene. Added Send button to ipkg log scene. Fixed bug when loading large package descriptions.&amp;lt;br&amp;gt; 1.3.8: Updated French translations (courtesy of Yannick LE NY).&amp;lt;br&amp;gt; 1.3.6: Preware now supports installation of application package files (.ipk files) directly from URLs, email attachments, and local files. Also supported are Send to Preware links on homebrew application gallery and news websites (this requires the Neato! application to also be installed). If Preware continually asks you about file associations on every single launch, even after you have answered Yes to the questions it asks, then you may have a damaged file association table and will need to run the Emergency MimeTable Reset tool and then reboot to repair it.&amp;quot;, &amp;quot;Homepage&amp;quot;:&amp;quot;http://www.webos-internals.org/wiki/Application:Preware&amp;quot;, &amp;quot;Icon&amp;quot;:&amp;quot;http://www.webos-internals.org/images/e/e4/Icon_Preware.png&amp;quot;, &amp;quot;Screenshots&amp;quot;:[ &amp;quot;http://www.webos-internals.org/images/3/36/Preware_ss1.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/d/d5/Preware_ss1a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/97/Preware_ss2.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/6/6f/Preware_ss2a.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e6/Preware_ss2b.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/8/8a/Preware_ss3.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/a/a1/Preware_ss4.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/2/28/Preware_ss5.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/e1/Preware_ss6.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/5/55/Preware_ss7.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/9/94/Preware_ss8.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/e/ea/Preware_ss9.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/b/bc/Preware_ss10.png&amp;quot;, &amp;quot;http://www.webos-internals.org/images/7/75/Preware_ss11.png&amp;quot; ], &amp;quot;License&amp;quot;:&amp;quot;GPL v2 Open Source&amp;quot;, &amp;quot;MinWebOSVersion&amp;quot;:&amp;quot;1.4.0&amp;quot; }&lt;br /&gt;
Description: Preware&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
notice the long and nasty Source: line... we can't change this in the actual Packages index file because it would break the spec for an ipkg feed, but we can have the API server do a little processing to make all of these able to be requested individually.&lt;br /&gt;
&lt;br /&gt;
==API server updates==&lt;br /&gt;
&lt;br /&gt;
We can either have the API servers run a database update on a schedule, or (and I like this option better), it would be pretty easy to have the autobuilder capable of notifying the API server (possibly servers) of when it runs a pass where a new package was built.  The flow would be about like this.&lt;br /&gt;
&lt;br /&gt;
Cron triggers Autobuilder -&amp;gt; Autobuilder runs -&amp;gt; No Packages build -&amp;gt; Time passes -&amp;gt; Cron triggers Autobuilder -&amp;gt; At least 1 package built -&amp;gt; Autobuilder triggers API server -&amp;gt; API server updates -&amp;gt; Time passes...&lt;br /&gt;
&lt;br /&gt;
and so on.  This second option would be fairly trivial to implement since an update of the API server can be triggered through a simple GET request and we can limit the IP's allowed to make a GET to that resource so that only the autobuilders (and localhost) can trigger an update.&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17041</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17041"/>
		<updated>2011-07-01T05:53:00Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Prototype demo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17039</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17039"/>
		<updated>2011-07-01T05:43:03Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Prototype description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
*All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
*You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
*You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
*If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Farmv7%2Forg.webosinternals.preware_1.7.0_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Ftesting%2Farmv7%2Forg.webosinternals.preware_1.7.2_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17037</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17037"/>
		<updated>2011-07-01T05:42:47Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
All API requests will include a serial (seconds since epoch) and only results that were created or modified after that serial will be returned.&lt;br /&gt;
You will be able to specify a set of Filters as key/value pairs, only results matching these filters will be returned.&lt;br /&gt;
You will be able to specify what data you are requesting and only that data (plus anything else required to uniquely identify the package) will be returned.&lt;br /&gt;
If you omit the array of requested data, all data for the matching packages will be returned.&lt;br /&gt;
&lt;br /&gt;
=Prototype demo=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Farmv7%2Forg.webosinternals.preware_1.7.0_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Ftesting%2Farmv7%2Forg.webosinternals.preware_1.7.2_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17035</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17035"/>
		<updated>2011-07-01T05:38:53Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Overview */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.  This API spec will be in flux as it is discussed.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Farmv7%2Forg.webosinternals.preware_1.7.0_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Ftesting%2Farmv7%2Forg.webosinternals.preware_1.7.2_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17033</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17033"/>
		<updated>2011-07-01T05:35:10Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: /* Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
*It must return enough data that every package returned can be uniquely identified (appid, architecture, feed, version)&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Farmv7%2Forg.webosinternals.preware_1.7.0_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Ftesting%2Farmv7%2Forg.webosinternals.preware_1.7.2_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17031</id>
		<title>Ipkg API</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Ipkg_API&amp;diff=17031"/>
		<updated>2011-07-01T05:30:53Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: Created page with &amp;quot;=Overview=  Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
&lt;br /&gt;
Currently Preware populates it's data by pulling the entire packages index from each feed and doing a slow parsing of the text files.  This is, as mentioned, slow, as well as wasteful since the majority of the data in the Packages index is already known (anything that wasn't updated since the last feed update).  What is proposed is an API to help deal with these limitations.&lt;br /&gt;
&lt;br /&gt;
=Requirements=&lt;br /&gt;
&lt;br /&gt;
There are a few requirements that this API should be able to meet:&lt;br /&gt;
*It must accept and return properly formatted JSON&lt;br /&gt;
*It must be capable of giving only information after a provided time index&lt;br /&gt;
*It must return the time index of when the result set was queried&lt;br /&gt;
*It must allow for arbitrary queries based on any combination of data available&lt;br /&gt;
*It must allow for limiting the amount of data returned (only version numbers, only appid's etc)&lt;br /&gt;
&lt;br /&gt;
=Prototype description=&lt;br /&gt;
&lt;br /&gt;
Here is a demo query requesting the version number and description of armv7 preware newer than 1234567890 seconds since epoch&lt;br /&gt;
Please note that this would return results that match the appid and arch from any feed&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;1234567890&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.preware&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;},&amp;quot;Request&amp;quot;:[&amp;quot;version&amp;quot;,&amp;quot;description&amp;quot;]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is a demo response that would be returned, notice that the Filters are returned as well&lt;br /&gt;
At a minimum, all package responses will include the appid, feed, arch and download URL (URL encoded)&lt;br /&gt;
A new serial is returned that corresponds with the time since epoch that this data was pulled&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;2244668800&amp;quot;,&amp;quot;Response&amp;quot;:[{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Farmv7%2Forg.webosinternals.preware_1.7.0_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.0&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;},{&amp;quot;appid&amp;quot;:&amp;quot;org.webosinternals.org&amp;quot;,&amp;quot;feed&amp;quot;:&amp;quot;webos-internals-testing&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;,&amp;quot;ipkurl&amp;quot;:&amp;quot;http%3A%2F%2Fipkg.preware.org%2Ffeeds%2Fwebos-internals%2Ftesting%2Farmv7%2Forg.webosinternals.preware_1.7.2_arm.ipk&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;1.7.2&amp;quot;,&amp;quot;description&amp;quot;:&amp;quot;Prewares package description (URL encoded)&amp;quot;}]}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A serial will be required with ALL API requests, if you want a full data set, just use a serial of 0&lt;br /&gt;
Failure to include a serial will result in no response from the API server&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the serials, you can get partial responses for updates, if you already know that your package data for&lt;br /&gt;
the webos-internals armv7 feed is up-to-date as of serial 55667788 you can query for updates to it&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;{&amp;quot;Serial&amp;quot;:&amp;quot;55667788&amp;quot;,&amp;quot;Filter&amp;quot;:{&amp;quot;feed&amp;quot;:&amp;quot;webos-internals&amp;quot;,&amp;quot;arch&amp;quot;:&amp;quot;armv7&amp;quot;}}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The return would be very similar to the one shown above with the exception that it would have all packages updated&lt;br /&gt;
after the serial that is provided, limited to packages in the webos-internals armv7 feed... and most importantly...&lt;br /&gt;
Because you did not provide a Request stating what pieces of data you want, you get everything the API server has about&lt;br /&gt;
those packages, this is most likely the way that Preware would pull it's updates&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=User:Cryptk&amp;diff=13551</id>
		<title>User:Cryptk</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=User:Cryptk&amp;diff=13551"/>
		<updated>2011-03-04T11:41:51Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I use this page mainly to test various things... especially with the mobile site&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
testing an edit&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11996</id>
		<title>MediaWiki:CustomNavBlocks</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11996"/>
		<updated>2010-11-05T09:29:37Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SBNavigation|navigation&lt;br /&gt;
SBWOSannounce|webos announcements&lt;br /&gt;
SBPortals|Portals&lt;br /&gt;
&amp;lt;!--SBGoogleSearch|Google Search--&amp;gt;&lt;br /&gt;
SEARCH&lt;br /&gt;
TOOLBOX&lt;br /&gt;
SBGoogleAdSense|Google AdSense&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11995</id>
		<title>MediaWiki:SBWOSannounce</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11995"/>
		<updated>2010-11-05T09:28:06Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://groups.google.com/group/webos-internals-announce Subscribe Here]&lt;br /&gt;
* [irc://chat.freenode.net/webos-internals webOS Internals Chat]&lt;br /&gt;
* [irc://chat.freenode.net/webos General webOS Chat]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11994</id>
		<title>MediaWiki:SBWOSannounce</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11994"/>
		<updated>2010-11-05T09:27:48Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://groups.google.com/group/webos-internals-announce Subscribe Here]&lt;br /&gt;
* [irc://chat.freenode.net/webos-internals webOS Internals Chat]&lt;br /&gt;
* [irc://chat.freenode.net/webos General webOS chat]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11993</id>
		<title>MediaWiki:SBWOSannounce</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11993"/>
		<updated>2010-11-05T09:26:20Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://groups.google.com/group/webos-internals-announce Subscribe Here]&lt;br /&gt;
** [irc://chat.freenode.net/webos-internals webOS Internals Chat]&lt;br /&gt;
** [irc://chat.freenode.net/webos General webOS chat]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleSearch&amp;diff=11992</id>
		<title>MediaWiki:SBGoogleSearch</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleSearch&amp;diff=11992"/>
		<updated>2010-11-05T09:25:07Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;Googlecoop/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleSearch&amp;diff=11991</id>
		<title>MediaWiki:SBGoogleSearch</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleSearch&amp;diff=11991"/>
		<updated>2010-11-05T09:18:00Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;Googlecoop&amp;gt;&amp;lt;/Googlecoop&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleSearch&amp;diff=11990</id>
		<title>MediaWiki:SBGoogleSearch</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleSearch&amp;diff=11990"/>
		<updated>2010-11-05T09:17:41Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: Created page with '&amp;lt;googlecoop&amp;gt;&amp;lt;/googlecoop&amp;gt;'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;googlecoop&amp;gt;&amp;lt;/googlecoop&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11989</id>
		<title>MediaWiki:CustomNavBlocks</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11989"/>
		<updated>2010-11-05T09:16:41Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SBNavigation|navigation&lt;br /&gt;
SBWOSannounce|webos announcements&lt;br /&gt;
SBPortals|Portals&lt;br /&gt;
SBGoogleSearch|Google Search&lt;br /&gt;
SEARCH&lt;br /&gt;
TOOLBOX&lt;br /&gt;
SBGoogleAdSense|Google AdSense&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleAdSense&amp;diff=11988</id>
		<title>MediaWiki:SBGoogleAdSense</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBGoogleAdSense&amp;diff=11988"/>
		<updated>2010-11-05T09:12:48Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: Created page with '&amp;lt;google uid=&amp;quot;C01&amp;quot; position=&amp;quot;left&amp;quot;&amp;gt;&amp;lt;/google&amp;gt;'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;google uid=&amp;quot;C01&amp;quot; position=&amp;quot;left&amp;quot;&amp;gt;&amp;lt;/google&amp;gt;&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11987</id>
		<title>MediaWiki:CustomNavBlocks</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11987"/>
		<updated>2010-11-05T09:12:13Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SBNavigation|navigation&lt;br /&gt;
SBWOSannounce|webos announcements&lt;br /&gt;
SBPortals|Portals&lt;br /&gt;
SEARCH&lt;br /&gt;
TOOLBOX&lt;br /&gt;
SBGoogleAdSense|Google AdSense&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11986</id>
		<title>MediaWiki:CustomNavBlocks</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:CustomNavBlocks&amp;diff=11986"/>
		<updated>2010-11-05T09:11:39Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SBNavigation|navigation&lt;br /&gt;
SBWOSannounce|webos announcements&lt;br /&gt;
SBPortals|Portals&lt;br /&gt;
SEARCH&lt;br /&gt;
SBtest|Test&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11985</id>
		<title>MediaWiki:SBWOSannounce</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBWOSannounce&amp;diff=11985"/>
		<updated>2010-11-05T09:10:13Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [http://groups.google.com/group/webos-internals-announce Subscribe Here]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MediaWiki:SBPortals&amp;diff=11984</id>
		<title>MediaWiki:SBPortals</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MediaWiki:SBPortals&amp;diff=11984"/>
		<updated>2010-11-05T09:09:30Z</updated>

		<summary type="html">&lt;p&gt;Cryptk: Created page with '* Accessing Linux * webOS Applications * Linux Applications * [[Portal:Hardware|Hardware In…'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Portal:Accessing Linux|Accessing Linux]]&lt;br /&gt;
* [[Portal:webOS Applications|webOS Applications]]&lt;br /&gt;
* [[Portal:Linux Applications|Linux Applications]]&lt;br /&gt;
* [[Portal:Hardware|Hardware Information]]&lt;br /&gt;
* [[Portal:Research|Research &amp;amp; Reference]]&lt;br /&gt;
* [[Portal:Misc|Miscellaneous]]&lt;br /&gt;
* [[Portal:SDK|The Palm SDK &amp;amp; Docs]]&lt;br /&gt;
* [[Portal:Tools|Tools]]&lt;br /&gt;
* [[Portal:Community|Community]]&lt;/div&gt;</summary>
		<author><name>Cryptk</name></author>
	</entry>
</feed>