[HTC Sensation XL] DutchDanny:
Basic rom updater script

(without ui_print info in it)

ui_print("################################################");

ui_print("### ###");

ui_print("### ###");

ui_print("### ###");

ui_print("### ###");

ui_print("### ###");

ui_print("### ###");

ui_print("################################################");

# Unmounting Partitions

assert(unmount("/cache") || true);

assert(unmount("/system") || true);

assert(unmount("/data") || true);

# Format System

format("ext4", "EMMC", "/dev/block/mmcblk0p25");

# Format Cache

format("ext3", "EMMC", "/dev/block/mmcblk0p30");

# Mounting System Partition

mount("ext4", "EMMC", "/dev/block/mmcblk0p25", "/system");

# Mounting Data Partition

mount("ext4", "EMMC", "/dev/block/mmcblk0p29", "/data");

# Deleting Old Data

delete_recursive("/data/dalvik-cache");

delete_recursive("/sdcard/LOST.DIR");

delete_recursive("/sdcard/LazyList");

delete_recursive("/data/boot-cache");

delete_recursive("/data/data/com.htc.loggers");

delete_recursive("/data/data/com.htc.android.ramdump");

delete_recursive("/data/data/com.htc.android.netlogger");

delete_recursive("/data/data/com.htc.PowerLogCollector");

delete_recursive("/data/data/com.android.restartapp");

# Writing Data Partition

package_extract_dir("data", "/data");

# Writing System Partition

package_extract_dir("system", "/system");

# Setting Symlinks & Permissions

symlink("dumpstate", "/system/bin/dumpcrash");

symlink("toolbox", "/system/bin/cat");

symlink("toolbox", "/system/bin/chmod");

symlink("toolbox", "/system/bin/chown");

symlink("toolbox", "/system/bin/chownto");

symlink("toolbox", "/system/bin/cmp");

symlink("toolbox", "/system/bin/date");

symlink("toolbox", "/system/bin/dd");

symlink("toolbox", "/system/bin/df");

symlink("toolbox", "/system/bin/dmesg");

symlink("toolbox", "/system/bin/getevent");

symlink("toolbox", "/system/bin/getprop");

symlink("toolbox", "/system/bin/hd");

symlink("toolbox", "/system/bin/id");

symlink("toolbox", "/system/bin/ifconfig");

symlink("toolbox", "/system/bin/iftop");

symlink("toolbox", "/system/bin/insmod");

symlink("toolbox", "/system/bin/ioctl");

symlink("toolbox", "/system/bin/ionice");

symlink("toolbox", "/system/bin/kill");

symlink("toolbox", "/system/bin/ln");

symlink("toolbox", "/system/bin/log");

symlink("toolbox", "/system/bin/ls");

symlink("toolbox", "/system/bin/lsmod");

symlink("toolbox", "/system/bin/lsof");

symlink("toolbox", "/system/bin/mkdir");

symlink("toolbox", "/system/bin/mount");

symlink("toolbox", "/system/bin/mv");

symlink("toolbox", "/system/bin/nandread");

symlink("toolbox", "/system/bin/netstat");

symlink("toolbox", "/system/bin/newfs_msdos");

symlink("toolbox", "/system/bin/notify");

symlink("toolbox", "/system/bin/printenv");

symlink("toolbox", "/system/bin/ps");

symlink("toolbox", "/system/bin/reboot");

symlink("toolbox", "/system/bin/renice");

symlink("toolbox", "/system/bin/rm");

symlink("toolbox", "/system/bin/rmdir");

symlink("toolbox", "/system/bin/rmmod");

symlink("toolbox", "/system/bin/route");

symlink("toolbox", "/system/bin/schedtop");

symlink("toolbox", "/system/bin/sendevent");

symlink("toolbox", "/system/bin/setconsole");

symlink("toolbox", "/system/bin/setprop");

symlink("toolbox", "/system/bin/sleep");

symlink("toolbox", "/system/bin/smd");

symlink("toolbox", "/system/bin/start");

symlink("toolbox", "/system/bin/stop");

symlink("toolbox", "/system/bin/sync");

symlink("toolbox", "/system/bin/top");

symlink("toolbox", "/system/bin/umount");

symlink("toolbox", "/system/bin/uptime");

symlink("toolbox", "/system/bin/vmstat");

symlink("toolbox", "/system/bin/watchprops");

symlink("toolbox", "/system/bin/wipe");

symlink("/system/xbin/ifconfig","/system/xbin/bb/ifconfig");

symlink("/system/xbin/route","/system/xbin/bb/route");

set_perm(0, 1000, 0755, "/system/xbin/busybox");

run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");

set_perm_recursive(0, 0, 0755, 0644, "/system");

set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");

set_perm(0, 3003, 0755, "/system/bin/ip");

set_perm(0, 0, 0755, "/system/etc/bluetooth");

set_perm(1000, 1000, 0640, "/system/etc/bluetooth/auto_pairing.conf");

set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");

set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");

set_perm(3002, 3002, 0444, "/system/etc/bluetooth/blacklist.conf");

set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");

set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");

set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");

set_perm(0, 2000, 06755, "/system/bin/reboot");

set_perm(0, 2000, 06750, "/system/bin/run-as");

set_perm(1000, 1000, 0755, "/system/bin/sysro");

set_perm(1000, 1000, 0755, "/system/bin/sysrw");

set_perm_recursive(0, 2000, 0755, 0755, "/system/etc/init.d");

set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");

set_perm(0, 3003, 02750, "/system/bin/netcfg");

set_perm(0, 3004, 02755, "/system/bin/ping");

set_perm(0, 0, 04755, "/system/bin/sh");

set_perm(0, 3003, 0755, "/system/bin/ipd");

delete("/system/bin/su");

set_perm(0, 0, 06755, "/system/xbin/su");

symlink("/system/xbin/su", "/system/bin/su");

set_perm(1000, 1000, 0755, "/system/xbin/openvpn");

set_perm(1000, 1000, 0771, "/data");

set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");

set_perm_recursive(1000, 1000, 0771, 0664, "/data/data/com.android.providers.contacts/files");

# Flashing Device Kernels

package_extract_file("boot.img","/tmp/boot.img");

write_raw_image("/tmp/boot.img", "boot");

delete("/tmp/boot.img");

# Unmounting Partitions

unmount("/data");

unmount("/cache");

unmount("/system");

# Reboot Device

run_program("/sbin/reboot");