Here is the full log of performing the meta-doctor operation:
First you clean out the directory from previous runs:
Code:
rwhitby@ubuntu:/srv/tools/meta-doctor$ make clobber
rm -rf build
Then you unpack and patch the doctor with the standard changes:
Code:
rwhitby@ubuntu:/srv/tools/meta-doctor$ make CARRIER=wr unpack patch
rm -rf build/pre-p100eww-wr-1.1.3
mkdir -p build/pre-p100eww-wr-1.1.3
cp downloads/webosdoctorp100eww-wr-1.1.3.jar build/pre-p100eww-wr-1.1.3/webosdoctorp100eww-wr-1.1.3.jar
( cd build/pre-p100eww-wr-1.1.3 ; \
unzip webosdoctorp100eww-wr-1.1.3.jar META-INF/MANIFEST.MF resources/webOS.tar )
Archive: webosdoctorp100eww-wr-1.1.3.jar
inflating: META-INF/MANIFEST.MF
inflating: resources/webOS.tar
mkdir -p build/pre-p100eww-wr-1.1.3/webOS
tar -C build/pre-p100eww-wr-1.1.3/webOS \
-f build/pre-p100eww-wr-1.1.3/resources/webOS.tar \
-x ./nova-cust-image-castle.rootfs.tar.gz \
./nova-installer-image-castle.uImage ./castle.xml ./installer.xml
gunzip -f build/pre-p100eww-wr-1.1.3/webOS/nova-cust-image-castle.rootfs.tar.gz
mkdir -p build/pre-p100eww-wr-1.1.3/rootfs
tar -C build/pre-p100eww-wr-1.1.3/rootfs \
-f build/pre-p100eww-wr-1.1.3/webOS/nova-cust-image-castle.rootfs.tar \
-x ./usr/palm/applications/com.palm.app.firstuse ./usr/lib/ipkg/info ./md5sums
touch build/pre-p100eww-wr-1.1.3/.unpacked
rm -f build/pre-p100eww-wr-1.1.3/.patched
mv build/pre-p100eww-wr-1.1.3/rootfs/md5sums build/pre-p100eww-wr-1.1.3/rootfs/md5sums.old
[ -d patches/pre-p100eww-wr-1.1.3 ]
( cd patches/pre-p100eww-wr-1.1.3 ; cat com.palm.app.firstuse.patch ) | \
( cd build/pre-p100eww-wr-1.1.3/rootfs ; patch -p0 )
patching file usr/palm/applications/com.palm.app.firstuse/app/controllers/app-assistant.js
patching file usr/palm/applications/com.palm.app.firstuse/appinfo.json
mkdir -p build/pre-p100eww-wr-1.1.3/rootfs/var/luna/preferences
touch build/pre-p100eww-wr-1.1.3/rootfs/var/luna/preferences/ran-first-use
mkdir -p build/pre-p100eww-wr-1.1.3/rootfs/var/gadget
touch build/pre-p100eww-wr-1.1.3/rootfs/var/gadget/novacom_enabled
for app in com.palm.app.firstuse ; do \
( cd build/pre-p100eww-wr-1.1.3/rootfs ; \
find ./usr/palm/applications/$app -type f | xargs md5sum ) \
> build/pre-p100eww-wr-1.1.3/rootfs/usr/lib/ipkg/info/$app.md5sums.new ; \
./scripts/replace-md5sums.py \
build/pre-p100eww-wr-1.1.3/rootfs/usr/lib/ipkg/info/$app.md5sums.old build/pre-p100eww-wr-1.1.3/rootfs/usr/lib/ipkg/info/$app.md5sums.new \
> build/pre-p100eww-wr-1.1.3/rootfs/usr/lib/ipkg/info/$app.md5sums ; \
rm -f build/pre-p100eww-wr-1.1.3/rootfs/usr/lib/ipkg/info/$app.md5sums.old build/pre-p100eww-wr-1.1.3/rootfs/usr/lib/ipkg/info/$app.md5sums.new ; \
done
Overwriting md5sum for ./usr/palm/applications/com.palm.app.firstuse/appinfo.json
Overwriting md5sum for ./usr/palm/applications/com.palm.app.firstuse/app/controllers/app-assistant.js
( cd build/pre-p100eww-wr-1.1.3/rootfs ; \
find ./usr/palm/applications/com.palm.app.firstuse ./usr/lib/ipkg/info -type f | xargs md5sum ) \
> build/pre-p100eww-wr-1.1.3/rootfs/md5sums.new
./scripts/replace-md5sums.py build/pre-p100eww-wr-1.1.3/rootfs/md5sums.old build/pre-p100eww-wr-1.1.3/rootfs/md5sums.new > \
build/pre-p100eww-wr-1.1.3/rootfs/md5sums
Overwriting md5sum for ./usr/lib/ipkg/info/com.palm.app.firstuse.md5sums
Overwriting md5sum for ./usr/palm/applications/com.palm.app.firstuse/appinfo.json
Overwriting md5sum for ./usr/palm/applications/com.palm.app.firstuse/app/controllers/app-assistant.js
rm -f build/pre-p100eww-wr-1.1.3/rootfs/md5sums.old build/pre-p100eww-wr-1.1.3/rootfs/md5sums.new
sed -i.orig -e '/<Volume id="var"/s|256MB|2048MB|' build/pre-p100eww-wr-1.1.3/webOS/castle.xml
rm -f build/pre-p100eww-wr-1.1.3/webOS/castle.xml.orig
touch build/pre-p100eww-wr-1.1.3/.patched
This is the point at which you edit the castle.xml file in build/pre-p00eww-we-1.1.3/webOS/castle.xml ...
Then you pack the modified doctor ready for use:
Code:
rwhitby@ubuntu:/srv/tools/meta-doctor$ make CARRIER=wr pack
rm -f build/pre-p100eww-wr-1.1.3/.packed
tar -C build/pre-p100eww-wr-1.1.3/rootfs \
-f build/pre-p100eww-wr-1.1.3/webOS/nova-cust-image-castle.rootfs.tar \
--delete ./usr/palm/applications/com.palm.app.firstuse ./usr/lib/ipkg/info ./md5sums
( cd build/pre-p100eww-wr-1.1.3/rootfs ; mkdir -p ./usr/palm/applications/com.palm.app.firstuse ./usr/lib/ipkg/info ./var/luna/preferences ./var/gadget )
tar -C build/pre-p100eww-wr-1.1.3/rootfs \
-f build/pre-p100eww-wr-1.1.3/webOS/nova-cust-image-castle.rootfs.tar \
-r ./usr/palm/applications/com.palm.app.firstuse ./usr/lib/ipkg/info ./var/luna/preferences ./var/gadget ./md5sums
gzip -f build/pre-p100eww-wr-1.1.3/webOS/nova-cust-image-castle.rootfs.tar
tar -C build/pre-p100eww-wr-1.1.3/webOS \
-f build/pre-p100eww-wr-1.1.3/resources/webOS.tar \
--delete ./nova-cust-image-castle.rootfs.tar.gz ./castle.xml ./installer.xml
tar -C build/pre-p100eww-wr-1.1.3/webOS \
-f build/pre-p100eww-wr-1.1.3/resources/webOS.tar \
-r ./nova-cust-image-castle.rootfs.tar.gz ./castle.xml ./installer.xml
( cd build/pre-p100eww-wr-1.1.3 ; \
zip -d webosdoctorp100eww-wr-1.1.3.jar META-INF/MANIFEST.MF META-INF/JARKEY.* resources/webOS.tar )
deleting: META-INF/MANIFEST.MF
deleting: META-INF/JARKEY.SF
deleting: META-INF/JARKEY.RSA
deleting: resources/webOS.tar
sed -i.orig -e '/^Name: /d' -e '/^SHA1-Digest: /d' -e '/^ /d' -e '/^\n$/d' \
build/pre-p100eww-wr-1.1.3/META-INF/MANIFEST.MF
( cd build/pre-p100eww-wr-1.1.3 ; \
zip webosdoctorp100eww-wr-1.1.3.jar META-INF/MANIFEST.MF resources/webOS.tar )
adding: META-INF/MANIFEST.MF (deflated 82%)
adding: resources/webOS.tar (deflated 5%)
touch build/pre-p100eww-wr-1.1.3/.packed
rwhitby@ubuntu:/srv/tools/meta-doctor$
At this point, your modified doctor .jar file is in the build/pre-p100eww-we-1.1.3 directory.
Note that this can be done for CARRIER=bellmo and CARRIER=sprint too (which will cause it to use the 1.2.1 doctor).
-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to
donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals