GameTheory
Android Expert
For custom rom & updater-script troubleshooting only.
I started this thread so we can put our heads together to get a working updater-script so we can flash our roms.
I cooked a rom in the kitchen and others have also, but with no working updater-script, we cant flash correctly in cwm recovery.
I put together a different updater-script that flashes my rom with some permissions issues... Keyboard keeps crashing & root apps request perm every time they are opened.
I defined the Spirit in the edify_defs folder of kitchen, with the following...
Name this file: l1m
I used the recovery_mmc.fstab to retrieve the mounts above, which looks like so...
For sdcard_mnt I used the recovery.fstab
This is the updater-script I put together...
If anyone has some useful insight or wants to add to this, please do share.
Thanks
I started this thread so we can put our heads together to get a working updater-script so we can flash our roms.
I cooked a rom in the kitchen and others have also, but with no working updater-script, we cant flash correctly in cwm recovery.
I put together a different updater-script that flashes my rom with some permissions issues... Keyboard keeps crashing & root apps request perm every time they are opened.
I defined the Spirit in the edify_defs folder of kitchen, with the following...
Name this file: l1m
HTML:
# LG Spirit 4G MS870 Metro PCS
change_mnt=yes
param1=ext4
param2=EMMC
param1_sdcard=vfat
sys_mnt=\/dev\/block\/platform\/msm_sdcc.1\/by-name\/system
data_mnt=\/dev\/block\/platform\/msm_sdcc.1\/by-name\/userdata
cache_mnt=\/dev\/block\/platform\/msm_sdcc.1\/by-name\/cache
sdcard_mnt=\/dev\/block\/mmcblk0p1
boot_mnt=\/dev\/block\/platform\/msm_sdcc.1\/by-name\/boot
HTML:
# mount point fstype device [device2]
/boot emmc /dev/block/platform/msm_sdcc.1/by-name/boot
/cache ext4 /dev/block/platform/msm_sdcc.1/by-name/cache
/data ext4 /dev/block/platform/msm_sdcc.1/by-name/userdata
/misc emmc /dev/block/platform/msm_sdcc.1/by-name/misc
/recovery emmc /dev/block/platform/msm_sdcc.1/by-name/recovery
/sdcard vfat /dev/block/mmcblk1p1 /dev/block/mmcblk1
/system ext4 /dev/block/platform/msm_sdcc.1/by-name/system
This is the updater-script I put together...
HTML:
show_progress(0.1, 0);
ui_print("");
ui_print(" Beginning Installation");
ui_print("");
ui_print("Mounting");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/data", "/data");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/cache", "/cache");
show_progress(0.1, 10);
ui_print("Formatting System & Cache");
delete_recursive("/system");
delete_recursive("/system");
delete_recursive("/cache");
delete_recursive("/cache");
delete_recursive("/data/dalvik-cache");
delete_recursive("/data/dalvik-cache");
show_progress(0.2, 0);
ui_print("Installing System & Data");
package_extract_dir("system", "/system");
show_progress(0.2, 10);
package_extract_dir("data", "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
ui_print("Applying Symlinks");
symlink("toolbox", "/system/bin/ls");
symlink("toolbox", "/system/bin/mv");
symlink("toolbox", "/system/bin/sleep");
symlink("toolbox", "/system/bin/setprop");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/rmdir");
symlink("toolbox", "/system/bin/notify");
symlink("toolbox", "/system/bin/sendevent");
symlink("toolbox", "/system/bin/printenv");
symlink("toolbox", "/system/bin/ionice");
symlink("toolbox", "/system/bin/iftop");
symlink("toolbox", "/system/bin/schedtop");
symlink("toolbox", "/system/bin/uptime");
symlink("toolbox", "/system/bin/kill");
symlink("toolbox", "/system/bin/setconsole");
symlink("toolbox", "/system/bin/date");
symlink("toolbox", "/system/bin/renice");
symlink("toolbox", "/system/bin/ps");
symlink("toolbox", "/system/bin/smd");
symlink("toolbox", "/system/bin/touch");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/rmmod");
symlink("toolbox", "/system/bin/getprop");
symlink("toolbox", "/system/bin/dmesg");
symlink("toolbox", "/system/bin/getevent");
symlink("toolbox", "/system/bin/cmp");
symlink("toolbox", "/system/bin/umount");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/wipe");
symlink("toolbox", "/system/bin/route");
symlink("toolbox", "/system/bin/start");
symlink("toolbox", "/system/bin/rm");
symlink("toolbox", "/system/bin/stop");
symlink("toolbox", "/system/bin/nandread");
symlink("toolbox", "/system/bin/top");
symlink("toolbox", "/system/bin/lsmod");
symlink("toolbox", "/system/bin/dd");
symlink("toolbox", "/system/bin/watchprops");
symlink("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/df");
symlink("toolbox", "/system/bin/sync");
symlink("toolbox", "/system/bin/id");
symlink("toolbox", "/system/bin/newfs_msdos");
symlink("toolbox", "/system/bin/ioctl");
symlink("toolbox", "/system/bin/hd");
symlink("toolbox", "/system/bin/mount");
symlink("toolbox", "/system/bin/log");
symlink("toolbox", "/system/bin/reboot");
symlink("toolbox", "/system/bin/insmod");
symlink("toolbox", "/system/bin/vmstat");
symlink("toolbox", "/system/bin/lsof");
symlink("toolbox", "/system/bin/netstat");
symlink("toolbox", "/system/bin/ln");
symlink("toolbox", "/system/bin/mkdir");
symlink("toolbox", "/system/bin/ifconfig");
show_progress(0.3, 0);
ui_print("Writing Permissions");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm(0, 3003, 06755, "/system/bin/ip");
set_perm(0, 3003, 02750, "/system/bin/netcfg");
set_perm(0, 3004, 02755, "/system/bin/ping");
set_perm(0, 2000, 06750, "/system/bin/run-as");
set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");
set_perm(0, 0, 0755, "/system/etc/bluetooth");
set_perm(1000, 1000, 0640, "/system/etc/bluetooth/auto_pairing.conf");
set_perm(3002, 3002, 0444, "/system/etc/bluetooth/blacklist.conf");
set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm_recursive(0, 2000, 0755, 0755, "/system/vendor/bin");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor/etc");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/su");
symlink("/system/xbin/su", "/system/bin/su");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
symlink("/system/xbin/busybox", "/system/bin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
show_progress(0.3, 10);
ui_print("Unmounting System, Data, & Cache");
unmount("/cache");
unmount("/system");
unmount("/data");
show_progress(0.4, 0);
ui_print("============================");
ui_print("");
ui_print(" Your Rom Info Here");
ui_print("");
ui_print(" Installation Complete");
ui_print("");
ui_print(" Reboot System Now");
ui_print("");
ui_print("============================");
Thanks