[G1 Themes and Wallpapers] Stericson:
Soooo, as many of you have found out, it has been fun watching you guys scratch your heads over this, there is a new file in JF update called framework.cramfs.

Also as many have found out, this complicates making themes for JF 1.51.

So whats the deal?

Well T-mobile has never been one to conserve space and have pushed the internal memory limits of system to the brink, so far that JF had to find a way to make room for all his goodies and T-mobiles goodies.

Jf did this by puttin the contents of framework into a Cramfs file, which is like a zip file of sorts.

Here is more info on them: http://en.wikipedia.org/wiki/Cramfs

This allowed him to keep the contents compressed but still accesible. To do this he has the system mount the image file before accessing it, which is why you can browse through it on Astro and find framework.apk with no problem.

This technique saved us about 10mb's of space in /system

Sooooo......How do you make themes for JF 1.51?

First you need to grab JF's build environment here is where you can get it: http://jf.andblogs.net/wp-content/plugins/download-monitor/download.php?id=17

Next you need to learn about it Check this out:

"In addition to the updates themselves, I am also releasing a build environment that can use to build each update from scratch. You can use these to easily make your own custom updates. It includes some utilities that were built from git source. The binaries are for 32bit x86 linux. If you want to run it on a different platform, you're on your own.

The general idea of the build environment is that it extracts the original files from the official update (or from my original ADP1 update), and then copies over anything from the various ModifiedFiles folders, then packages it all back up into a ready-to-be-applied update.zip. It does this for the boot image, recovery image and system folder. You can also specify files to delete in the various OriginalFilesToDelete.mk files.

Consider anything new that I created for the build environments (the makefiles, etc.) to be in the public domain. Everything else retains its original license of course.

Instructions:

* extract the build environment into a folder

* download the official update that the update is based on, and put it in the root of the build environment

* run make as root. yes, it has to be with root, because the binaries in the 2 cramfs images should be owned by root. (note: I plan on using fakeroot in the future, to workaround the need to be root)

* after make finishes, assuming there are no errors, the update should be in Workspace/update.zip."

Yep thats right! You need linux to do this! I mean come on, Android is not a Microsoft product, it's Linux based....Time to get your hands dirty.

You will need to copy your modified framework-res.apk, which you can pull from your phone while running JF 1.51, into Build/System/framework

Then you will build your update.zip. Not that this will be a full update meaning it will be large.

You can size it down after you build it, but it will create the cramfs image you need with all your changes.

I have not done this! I am not upgrading to 1.51. I will stick with the build I can create and change as I like.

What does this mean?

This means I don't know exactly how to do this, I haven't done this.

I researched this and have posted my findings, this is how you will build a theme template for JF 1.51.

Things are gonna change and get harder as things get more complicated. Be ready for this, be prepared for it.

Also, there is always more then one way to skin a cat.

Good luck guys,

Stericson