[XPERIA X1 ROM Development] ianl8888:
Further to my posts on UC earlier, here are some results.

NOTES:

1) this UC is for Jack Leung's base Lite ROM v2.1. I don't use other versions, nor have any need to

2) this UC is meant for a ROM upgrade to an existing (and large) installation (eg. Lite ROM v2.1 > Lite ROM v3.1 when this occurs)

3) No questions, please, about why I choose one program over another or use some particular keyboard, why no Panels etc ... just a waste of space

4) I don't use Outlook sync, I use Qmail (installed on the SD card) for email and PIMbackup for restoring contacts, SMS. Much simpler and more direct, with no XML coding hassles. I use a 3rd party contact manager (linked to the RH slim button directly under the screen). To retrieve the contacts, I copy pim.vol (already backed up on the card) back to \Windows as part of SDConfig.txt - very simple ... in conjunction with PIMbackup: quick, simple, easy

5) see the attached SDConfig.txt - edited for publication here, since the list of installed apps is over 250 items long, and I'm not publishing for prurience

6) you will find no XML coding to generate shortcuts for programs already installed on the card. It is MUCH simpler to copy all of the existing shortcuts into zip files prior to ROM upgrade and use pocketRAR to unzip them into the appropriate folders after the upgrade (especially for over 200 of them)

7) I haven't attempted wifi settings provisioning yet, since I have only one security key to enter. I'll probably get around to it

8) importantly, we don't have to re-install the apps already on the SD card - all their files are already there. What we do need is their Registry settings and "hanger-on" files in Main Storage (these are wiped in a hard reset, of course)

This is the tedious bit (takes time), but having ground through it once, all that is needed then is to keep it up to date as new programs and upgrades are added.

I use Kilmist Registry to dump out a full copy of the Registry prior to ROM upgrade. The dumped file is a formatted text file XXX.reg. I comb this file in Notepad (to avoid hassles with hidden end-of-line symbols etc) and extract all the keys/values relating to a particular program (tedious care is needed, as developers drop bits every where, with different names and stuff). The extracted bits are saved as a yyy.reg file (eg. tcommander.reg) and turned into an XML file using rgu2xml_v2.exe. Dramatically quick and direct. This XML file can be exactly listed in SDConfig.txt and executed as part of the UC run. I use Cooktop (freeware) to check the validity of XML coding

9) the attached SDConfig.txt uses XML, CAB, CPY1/2, LOCK, HIDE, RST commands known to SDAutorun.exe. Syntax is critical - one wrong spelling or CPY of a non-existent file will bomb the process. The command sequence is important for some inputs - eg. if you reference a file in \Windows with an XML command before that file is copied to \Windows, the process will bomb

10) http://xdaforums.com/showthread.php?t=366337 is the thread for information - all 103 pages, which I've droned through, but very full of useful posts and comments etc

11) also attached is a simple XML file (light_tsk.xml), which I use to set power, light, theme

12) probably stuff I've forgotten, but it now works well enough for me (haven't sorted out some of the messier programs yet - those that throw files onto both the card and Main Storage on install are a pest). Once SDAutorun.exe started, re-loading all my stuff minus some messier programs took about 15 minutes from a hard reset

Just found I can't upload an XML file, so:

<wap-provisioningdoc>

<characteristic type="Registry">

<characteristic type="HKCU\ControlPanel\BackLight">

<parm name="BatteryTimeout" value="180" datatype="integer"/>

<parm name="ACTimeout" value="0" datatype="integer"/>

<parm name="ACBrightNess" value="10" datatype="integer"/>

<parm name="BrightNess" value="10" datatype="integer"/>

</characteristic>

<characteristic type="HKLM\System\CurrentControlSet\Control\Power\Timeouts">

<parm name="ACSuspendTimeout" value="0" datatype="integer"/>

<parm name="BattSuspendTimeout" value="240" datatype="integer"/>

</characteristic>

<characteristic type="HKCU\Software\Microsoft\Today\Htc.tsk">

<parm name="Color_CommandBarText" value="0004A650" datatype="string"/>

<parm name="Color_CommandBar" value="0049FF0" datatype="string" />

<parm name="Color_TitleFlat" value="0004AAE0" datatype="string" />

<parm name="Color_SoftkeyFlat" value="0004A430" datatype="string" />

<parm name="Color_HighlightText" value="00049D00" datatype="string" />

<parm name="Color_Highlight" value="0004A8C0" datatype="string" />

</characteristic>

<characteristic type="HKCU\Software\Microsoft\Today">

<parm name="Skin" value="\Windows\Windows Mobile 6.1.tsk" datatype="string"/>

</characteristic>

</characteristic>

</wap-provisioningdoc>

"light_tsk.xml", purpose as described above

Yes, I did forget to note the "owner" xml. To achieve this easily, I used SDConfigBuilder v0.875 (in the referenced thread), just async and run this program, it saves the data as a formatted XML file.