[TUT] [for NOOB] editing updater-script for noobs!

mihahn

Senior Member
May 26, 2012
3,257
2,215
0
Hello thanks for your guide
But wher can i found this scripts
Its dose say found it in your working rom
But how and wer exact??

Sent from my brain to help you using tapatalk.... :D
Hit THANKS its always free.... :D
Like mentioned in OP you can find it in META-INF -> com-> google -> android in your rom ;)

Sent from my Nexus 4 running Android 4.3
 

badagila

Senior Member
Apr 5, 2013
653
120
0
Iloilo City
www.facebook.com
status 7 error

hi.., i cooked a rom using the kitchen and i got error status 7 installation aborted this is my updater-script

Code:
show_progress(0.1, 0);
format("MTD", "system");
mount("MTD", "system", "/system");
mount("MTD", "userdata", "/data");
delete("/data/local");
package_extract_file("check_data_app", "/tmp/check_data_app");
set_perm(0, 0, 0777, "/tmp/check_data_app");
run_program("/tmp/check_data_app");
package_extract_dir("data", "/data");
set_perm(2000, 2000, 0771, "/data/local");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
package_extract_dir("system", "/system");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/chown");
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");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 0, 0777, 0777, "/system/etc/init.d");
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(0, 0, 0777, "/system/bin/a2sd");
set_perm(0, 0, 0777, "/system/etc/init.d/00banner");
set_perm(0, 0, 0777, "/system/etc/init.d/01sysctl");
set_perm(0, 0, 0777, "/system/etc/init.d/02firstboot");
set_perm(0, 0, 0777, "/system/etc/init.d/04apps2sd");
set_perm(0, 0, 0777, "/system/etc/init.d/99complete");
set_perm(0, 0, 0777, "/system/bin/launcha2sd");
set_perm(0, 0, 0777, "/system/bin/starta2sd");
set_perm(0, 0, 0777, "/system/bin/jita2sd");
set_perm(0, 0, 0777, "/system/bin/chka2sd");
set_perm(0, 0, 0777, "/system/bin/zipalign");
set_perm(0, 0, 0777, "/system/bin/sysinit");
set_perm(0, 0, 0777, "/system/bin/busybox.a2sd");
set_perm(0, 0, 0644, "/system/bin/apps2sd.hlp");
set_perm(0, 0, 0777, "/system/xbin/a2sd");
set_perm(0, 0, 0777, "/system/bin/dtinstall");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 04755, "/system/xbin/bash");
symlink("/system/xbin/bash", "/system/bin/sh");
set_perm(0, 0, 04755, "/system/xbin/nano");
set_perm(0, 0, 04755, "/system/xbin/sysrw");
set_perm(0, 0, 04755, "/system/xbin/sysro");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
symlink("/system/xbin/busybox", "/system/bin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/su");
symlink("/system/xbin/su", "/system/bin/su");
show_progress(0.1, 10);
show_progress(0.2, 0);
run_program("/data/dtinstall.launch");
delete("/system/bin/dtinstall");
delete("/data/dtinstall.launch");
package_extract_file("move_cache_sd", "/tmp/move_cache_sd");
set_perm(0, 0, 0777, "/tmp/move_cache_sd");
run_program("/tmp/move_cache_sd");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
       write_raw_image("/tmp/boot.img", "boot"),
       delete("/tmp/boot.img"));
show_progress(0.2, 10);
unmount("/system");
unmount("/data");
my device is samsung galaxy gio.., can someone help me to identify the error? thanks in advance
 

karandpr

Space too small for my titles. Check Signature
Staff member
Feb 20, 2011
9,688
13,151
263
Prolific Troll
@badagila
I dont think Samsung Galaxy Gio has mtd block partitions
It has rfs partitions or ext4 partition depending on kernel & recovery used ...
Code:
format("MTD", "system");
mount("MTD", "system", "/system");
mount("MTD", "userdata", "/data");
wont work ...
Try to check some other zips for options
AFAIK ,busybox is used to mount the partition using run_program
 

badagila

Senior Member
Apr 5, 2013
653
120
0
Iloilo City
www.facebook.com
@badagila
I dont think Samsung Galaxy Gio has mtd block partitions
It has rfs partitions or ext4 partition depending on kernel & recovery used ...
Code:
format("MTD", "system");
mount("MTD", "system", "/system");
mount("MTD", "userdata", "/data");
wont work ...
Try to check some other zips for options
AFAIK ,busybox is used to mount the partition using run_program
dude maybe because my device is not supported by the kitchen.., anyway have you try to use kitchen and mount point your device make the cooked rom works? anyway this my fstabs.., Recovery.fstab if it is ok to you can i ask somehelp to make me understand abuout it?
 

karandpr

Space too small for my titles. Check Signature
Staff member
Feb 20, 2011
9,688
13,151
263
Prolific Troll
Not really ...
I have used question but thats almost two years ago now ...
I uses to use my own updater-script so it didn't matter really ...

These is how you mount system ...
Code:
run_program("/sbin/busybox", "mount", "/system");
Code:
run_program("/sbin/busybox", "umount", "/system");
Like i said ,it matters on what ROM you are using ...
Stock Galaxy Gio uses rfs filesystem
Custom Roms usually use ext4 file system ...

You will have to specify the format option likewise....
Easiest way is to open an updater-script of a working script and study it ...
it should be something like

format("ext4", "emmc","/dev/block/stl12");

use at your own descretion ...
Note :kernel should support ext4 and recovery should support ext4 format or you will have to use mkfs.ext4 manually
 

badagila

Senior Member
Apr 5, 2013
653
120
0
Iloilo City
www.facebook.com
Not really ...
I have used question but thats almost two years ago now ...
I uses to use my own updater-script so it didn't matter really ...

These is how you mount system ...
Code:
run_program("/sbin/busybox", "mount", "/system");
Code:
run_program("/sbin/busybox", "umount", "/system");
Like i said ,it matters on what ROM you are using ...
Stock Galaxy Gio uses rfs filesystem
Custom Roms usually use ext4 file system ...

You will have to specify the format option likewise....
Easiest way is to open an updater-script of a working script and study it ...
it should be something like

format("ext4", "emmc","/dev/block/stl12");

use at your own descretion ...
Note :kernel should support ext4 and recovery should support ext4 format or you will have to use mkfs.ext4 manually

how long you study the updater-script before you master it?
 

karandpr

Space too small for my titles. Check Signature
Staff member
Feb 20, 2011
9,688
13,151
263
Prolific Troll
I was pretty much right ....

Format system
Code:
format("ext4", "EMMC", "/dev/block/stl12");
Mount system
Code:
mount("ext4", "EMMC", "/dev/block/stl12", "/system");
mount("ext4", "EMMC", "/dev/block/stl13", "/data");
Install Rom
Code:
package_extract_dir("recovery", "/system");
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
Symlink and Fix permissions /Misc actions
Code:
symlink("busybox", "/system/xbin/[", "/system/xbin/[[",
        "/system/xbin/adjtimex", "/system/xbin/arp", "/system/xbin/ash",
        "/system/xbin/awk", "/system/xbin/base64", "/system/xbin/basename",
        "/system/xbin/bbconfig", "/system/xbin/blkid", "/system/xbin/blockdev",
        "/system/xbin/brctl", "/system/xbin/bunzip2", "/system/xbin/bzcat",
        "/system/xbin/bzip2", "/system/xbin/cal", "/system/xbin/cat",
        "/system/xbin/catv", "/system/xbin/chattr", "/system/xbin/chgrp",
        "/system/xbin/chmod", "/system/xbin/chown", "/system/xbin/chroot",
        "/system/xbin/clear", "/system/xbin/cmp", "/system/xbin/comm",
        "/system/xbin/cp", "/system/xbin/cpio", "/system/xbin/crond",
        "/system/xbin/crontab", "/system/xbin/cut", "/system/xbin/date",
        "/system/xbin/dc", "/system/xbin/dd", "/system/xbin/depmod",
        "/system/xbin/devmem", "/system/xbin/df", "/system/xbin/diff",
        "/system/xbin/dirname", "/system/xbin/dmesg", "/system/xbin/dnsd",
        "/system/xbin/dos2unix", "/system/xbin/du", "/system/xbin/echo",
        "/system/xbin/ed", "/system/xbin/egrep", "/system/xbin/env",
        "/system/xbin/expand", "/system/xbin/expr", "/system/xbin/false",
        "/system/xbin/fbsplash", "/system/xbin/fdisk", "/system/xbin/fgrep",
        "/system/xbin/find", "/system/xbin/flash_lock",
        "/system/xbin/flash_unlock", "/system/xbin/flashcp",
        "/system/xbin/flock", "/system/xbin/fold", "/system/xbin/free",
        "/system/xbin/freeramdisk", "/system/xbin/fsync", "/system/xbin/ftpget",
        "/system/xbin/ftpput", "/system/xbin/fuser", "/system/xbin/getopt",
        "/system/xbin/grep", "/system/xbin/groups", "/system/xbin/gunzip",
        "/system/xbin/gzip", "/system/xbin/halt", "/system/xbin/head",
        "/system/xbin/hexdump", "/system/xbin/id", "/system/xbin/ifconfig",
        "/system/xbin/inetd", "/system/xbin/insmod", "/system/xbin/install",
        "/system/xbin/ionice", "/system/xbin/iostat", "/system/xbin/ip",
        "/system/xbin/kill", "/system/xbin/killall", "/system/xbin/killall5",
        "/system/xbin/less", "/system/xbin/ln", "/system/xbin/losetup",
        "/system/xbin/ls", "/system/xbin/lsattr", "/system/xbin/lsmod",
        "/system/xbin/lsusb", "/system/xbin/lzcat", "/system/xbin/lzma",
        "/system/xbin/lzop", "/system/xbin/lzopcat", "/system/xbin/man",
        "/system/xbin/md5sum", "/system/xbin/mesg", "/system/xbin/mkdir",
        "/system/xbin/mke2fs", "/system/xbin/mkfifo", "/system/xbin/mkfs.ext2",
        "/system/xbin/mkfs.vfat", "/system/xbin/mknod", "/system/xbin/mkswap",
        "/system/xbin/mktemp", "/system/xbin/modinfo", "/system/xbin/modprobe",
        "/system/xbin/more", "/system/xbin/mount", "/system/xbin/mountpoint",
        "/system/xbin/mpstat", "/system/xbin/mv", "/system/xbin/nanddump",
        "/system/xbin/nandwrite", "/system/xbin/nbd-client",
        "/system/xbin/netstat", "/system/xbin/nice", "/system/xbin/nohup",
        "/system/xbin/nslookup", "/system/xbin/ntpd", "/system/xbin/od",
        "/system/xbin/patch", "/system/xbin/pgrep", "/system/xbin/pidof",
        "/system/xbin/ping", "/system/xbin/pipe_progress", "/system/xbin/pkill",
        "/system/xbin/pmap", "/system/xbin/poweroff", "/system/xbin/printenv",
        "/system/xbin/printf", "/system/xbin/ps", "/system/xbin/pstree",
        "/system/xbin/pwd", "/system/xbin/pwdx", "/system/xbin/rdev",
        "/system/xbin/readlink", "/system/xbin/realpath", "/system/xbin/renice",
        "/system/xbin/reset", "/system/xbin/resize", "/system/xbin/rev",
        "/system/xbin/rm", "/system/xbin/rmdir", "/system/xbin/rmmod",
        "/system/xbin/route", "/system/xbin/run-parts", "/system/xbin/rx",
        "/system/xbin/sed", "/system/xbin/seq", "/system/xbin/setconsole",
        "/system/xbin/setserial", "/system/xbin/setsid", "/system/xbin/sh",
        "/system/xbin/sha1sum", "/system/xbin/sha256sum",
        "/system/xbin/sha3sum", "/system/xbin/sha512sum", "/system/xbin/sleep",
        "/system/xbin/sort", "/system/xbin/split", "/system/xbin/stat",
        "/system/xbin/strings", "/system/xbin/stty", "/system/xbin/sum",
        "/system/xbin/swapoff", "/system/xbin/swapon", "/system/xbin/sync",
        "/system/xbin/sysctl", "/system/xbin/tac", "/system/xbin/tail",
        "/system/xbin/tar", "/system/xbin/tee", "/system/xbin/telnet",
        "/system/xbin/telnetd", "/system/xbin/test", "/system/xbin/tftp",
        "/system/xbin/tftpd", "/system/xbin/time", "/system/xbin/timeout",
        "/system/xbin/top", "/system/xbin/touch", "/system/xbin/tr",
        "/system/xbin/traceroute", "/system/xbin/true", "/system/xbin/ttysize",
        "/system/xbin/tune2fs", "/system/xbin/umount", "/system/xbin/uname",
        "/system/xbin/uncompress", "/system/xbin/unexpand", "/system/xbin/uniq",
        "/system/xbin/unix2dos", "/system/xbin/unlzma", "/system/xbin/unlzop",
        "/system/xbin/unxz", "/system/xbin/unzip", "/system/xbin/uptime",
        "/system/xbin/usleep", "/system/xbin/uudecode", "/system/xbin/uuencode",
        "/system/xbin/vi", "/system/xbin/watch", "/system/xbin/wc",
        "/system/xbin/wget", "/system/xbin/which", "/system/xbin/whoami",
        "/system/xbin/xargs", "/system/xbin/xz", "/system/xbin/xzcat",
        "/system/xbin/yes",
        "/system/xbin/zcat");
symlink("toolbox", "/system/bin/cat", "/system/bin/cmp",
        "/system/bin/date", "/system/bin/dd", "/system/bin/getevent",
        "/system/bin/getprop", "/system/bin/hd", "/system/bin/id",
        "/system/bin/ifconfig", "/system/bin/iftop", "/system/bin/insmod",
        "/system/bin/ioctl", "/system/bin/ionice", "/system/bin/kill",
        "/system/bin/log", "/system/bin/lsmod", "/system/bin/nandread",
        "/system/bin/netstat", "/system/bin/newfs_msdos", "/system/bin/notify",
        "/system/bin/printenv", "/system/bin/ps", "/system/bin/reboot",
        "/system/bin/renice", "/system/bin/rmdir", "/system/bin/rmmod",
        "/system/bin/route", "/system/bin/schedtop", "/system/bin/sendevent",
        "/system/bin/setconsole", "/system/bin/setprop", "/system/bin/sleep",
        "/system/bin/smd", "/system/bin/start", "/system/bin/stop",
        "/system/bin/sync", "/system/bin/top", "/system/bin/uptime",
        "/system/bin/vmstat", "/system/bin/watchprops",
        "/system/bin/wipe");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
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(1000, 1003, 02755, "/system/bin/screenshot");
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_recursive(0, 2000, 0755, 0750, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/init.d");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm(0, 0, 0544, "/system/etc/install-recovery.sh");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/hcitool");
set_perm(0, 0, 06755, "/system/xbin/librank");
set_perm(0, 0, 06755, "/system/xbin/procmem");
set_perm(0, 0, 06755, "/system/xbin/procrank");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(0, 0, 06755, "/system/xbin/tcpdump");
set_perm_recursive(0, 2000, 0755, 0755, "/system/holder");
set_perm(0, 0, 0755, "/system/holder");
set_perm(0, 0, 0755, "/system/holder/40int2ext");
set_perm_recursive(0, 2000, 0777, 0777, "/system/etc/init.d");
set_perm_recursive(0, 2000, 0777, 0777, "/system/usr/idc");
set_perm(0, 0, 0777, "/system/etc/init.d/40int2ext");
set_perm(0, 0, 0777, "/system/bin/boost");
set_perm(0, 0, 0777, "/system/xbin/sqlite3");
set_perm(0, 0, 0777, "/system/xbin/zipalign");
set_perm(0, 0, 0777, "/system/xbin/openvpn");
set_perm(0, 0, 0777, "/system/lib/libncurses.so");
set_perm(0, 0, 0777, "/system/lib/libsqlite.so");
set_perm(0, 0, 0777, "/system/lib/libsqlite_jni.so");
set_perm(0, 0, 0777, "/system/etc/init.d/S98system_tweak");
set_perm(0, 0, 0777, "/system/etc/init.d/S70darky_zipalign");
set_perm(0, 0, 0777, "/system/etc/init.d/sqlite_optimize");
set_perm(0, 0, 0777, "/system/etc/init.d/ram_optimize");
set_perm(0, 0, 0777, "/system/etc/init.d/ext4_lagfix");
set_perm(0, 0, 0777, "/data/local.prop");
set_perm(0, 0, 0777, "/system/usr/idc/mxt244_ts_input.idc");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
show_progress(0.200000, 0);
show_progress(0.200000, 10);
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
set_perm(0, 0, 0777, "/tmp/backuptool.sh");
run_program("/tmp/backuptool.sh", "restore");
package_extract_file("system/bin/modelid_cfg.sh", "/tmp/modelid_cfg.sh");
set_perm(0, 0, 0777, "/tmp/modelid_cfg.sh");
run_program("/tmp/modelid_cfg.sh");
package_extract_file("system/bin/verify_cache_partition_size.sh", "/tmp/verify_cache_partition_size.sh");
set_perm(0, 0, 0777, "/tmp/verify_cache_partition_size.sh");
run_program("/tmp/verify_cache_partition_size.sh");
show_progress(0.200000, 10);
Flash kernel
Code:
assert(package_extract_file("boot.img", "/tmp/boot.img"),
       write_raw_image("/tmp/boot.img", "boot"),
       delete("/tmp/boot.img"));
Unmount system
Code:
unmount("/system");
Updater scripts are pretty much black and white ...No chance / use of modification ...

Disclaimer : if some genius reads this and attempts to flash a kernel using the code in updater script on an Xperia device . DONT . Samsung devices have two kernel partitions ,one for recovery and one for boot .
Xperia devices use one kernel with two ramdisks ....
Attempting to use this script will perma brick the device or wont do anything if you are lucky...
 

Doctoror

Senior Member
Nov 11, 2012
69
15
0
Lviv
I created the image with the following commands

Code:
dd if=/dev/block/mmcblk0p1 of=/mnt/sdcard/modem.img
dd if=/dev/block/mmcblk0p5 of=/mnt/sdcard/aboot.img
Now I want to create a flashable zip to flash these images to another copy of device.

1) Do I need to format partition before I write raw image at first place?
2) Is this script okay if I assume no formatting needed?

Code:
ui_print("Updating modem.img ...");
write_raw_image("aboot.img", "/dev/block/mmcblk0p5");
write_raw_image("modem.img", "/dev/block/mmcblk0p1");
ui_print("Finished!");
ui_print();
If it needs formating, I use Parittion Table app to identify the partitions. It shows for /dev/block/mmcblk0p1 mount point and filesystem type ("vfat") but for /dev/block/mmcblk0p5 this info is absent.

3) How to I know the filesystem type "EMMC" or "MTD" or what?

Thanks.


EDIT:
the proper way would be to just

Code:
package_extract_file("aboot.img", "/dev/block/mmcblk0p5");
package_extract_file("modem.img", "/dev/block/mmcblk0p1");
 
Last edited:
  • Like
Reactions: rjglenn

dannyben

Senior Member
May 9, 2011
1,478
1,551
0
I've created a MOD and a flashable zip file to install it.

The issue, for which I cant seem to find any help on is:

On certain devices it is required to edit the /system/csc/feature.xml file.

I dont want to replace the file all together, but just add some lines (if the set isnt there) or edit the lines (if it already is there).

I figure its just some code i need to add into the updater-script, but dont know where to start?

Any help would be appreciated.

TIA.
 

badagila

Senior Member
Apr 5, 2013
653
120
0
Iloilo City
www.facebook.com
I was pretty much right ....

Format system
Code:
format("ext4", "EMMC", "/dev/block/stl12");
Mount system
Code:
mount("ext4", "EMMC", "/dev/block/stl12", "/system");
mount("ext4", "EMMC", "/dev/block/stl13", "/data");
Install Rom
Code:
package_extract_dir("recovery", "/system");
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
Symlink and Fix permissions /Misc actions
Code:
symlink("busybox", "/system/xbin/[", "/system/xbin/[[",
        "/system/xbin/adjtimex", "/system/xbin/arp", "/system/xbin/ash",
        "/system/xbin/awk", "/system/xbin/base64", "/system/xbin/basename",
        "/system/xbin/bbconfig", "/system/xbin/blkid", "/system/xbin/blockdev",
        "/system/xbin/brctl", "/system/xbin/bunzip2", "/system/xbin/bzcat",
        "/system/xbin/bzip2", "/system/xbin/cal", "/system/xbin/cat",
        "/system/xbin/catv", "/system/xbin/chattr", "/system/xbin/chgrp",
        "/system/xbin/chmod", "/system/xbin/chown", "/system/xbin/chroot",
        "/system/xbin/clear", "/system/xbin/cmp", "/system/xbin/comm",
        "/system/xbin/cp", "/system/xbin/cpio", "/system/xbin/crond",
        "/system/xbin/crontab", "/system/xbin/cut", "/system/xbin/date",
        "/system/xbin/dc", "/system/xbin/dd", "/system/xbin/depmod",
        "/system/xbin/devmem", "/system/xbin/df", "/system/xbin/diff",
        "/system/xbin/dirname", "/system/xbin/dmesg", "/system/xbin/dnsd",
        "/system/xbin/dos2unix", "/system/xbin/du", "/system/xbin/echo",
        "/system/xbin/ed", "/system/xbin/egrep", "/system/xbin/env",
        "/system/xbin/expand", "/system/xbin/expr", "/system/xbin/false",
        "/system/xbin/fbsplash", "/system/xbin/fdisk", "/system/xbin/fgrep",
        "/system/xbin/find", "/system/xbin/flash_lock",
        "/system/xbin/flash_unlock", "/system/xbin/flashcp",
        "/system/xbin/flock", "/system/xbin/fold", "/system/xbin/free",
        "/system/xbin/freeramdisk", "/system/xbin/fsync", "/system/xbin/ftpget",
        "/system/xbin/ftpput", "/system/xbin/fuser", "/system/xbin/getopt",
        "/system/xbin/grep", "/system/xbin/groups", "/system/xbin/gunzip",
        "/system/xbin/gzip", "/system/xbin/halt", "/system/xbin/head",
        "/system/xbin/hexdump", "/system/xbin/id", "/system/xbin/ifconfig",
        "/system/xbin/inetd", "/system/xbin/insmod", "/system/xbin/install",
        "/system/xbin/ionice", "/system/xbin/iostat", "/system/xbin/ip",
        "/system/xbin/kill", "/system/xbin/killall", "/system/xbin/killall5",
        "/system/xbin/less", "/system/xbin/ln", "/system/xbin/losetup",
        "/system/xbin/ls", "/system/xbin/lsattr", "/system/xbin/lsmod",
        "/system/xbin/lsusb", "/system/xbin/lzcat", "/system/xbin/lzma",
        "/system/xbin/lzop", "/system/xbin/lzopcat", "/system/xbin/man",
        "/system/xbin/md5sum", "/system/xbin/mesg", "/system/xbin/mkdir",
        "/system/xbin/mke2fs", "/system/xbin/mkfifo", "/system/xbin/mkfs.ext2",
        "/system/xbin/mkfs.vfat", "/system/xbin/mknod", "/system/xbin/mkswap",
        "/system/xbin/mktemp", "/system/xbin/modinfo", "/system/xbin/modprobe",
        "/system/xbin/more", "/system/xbin/mount", "/system/xbin/mountpoint",
        "/system/xbin/mpstat", "/system/xbin/mv", "/system/xbin/nanddump",
        "/system/xbin/nandwrite", "/system/xbin/nbd-client",
        "/system/xbin/netstat", "/system/xbin/nice", "/system/xbin/nohup",
        "/system/xbin/nslookup", "/system/xbin/ntpd", "/system/xbin/od",
        "/system/xbin/patch", "/system/xbin/pgrep", "/system/xbin/pidof",
        "/system/xbin/ping", "/system/xbin/pipe_progress", "/system/xbin/pkill",
        "/system/xbin/pmap", "/system/xbin/poweroff", "/system/xbin/printenv",
        "/system/xbin/printf", "/system/xbin/ps", "/system/xbin/pstree",
        "/system/xbin/pwd", "/system/xbin/pwdx", "/system/xbin/rdev",
        "/system/xbin/readlink", "/system/xbin/realpath", "/system/xbin/renice",
        "/system/xbin/reset", "/system/xbin/resize", "/system/xbin/rev",
        "/system/xbin/rm", "/system/xbin/rmdir", "/system/xbin/rmmod",
        "/system/xbin/route", "/system/xbin/run-parts", "/system/xbin/rx",
        "/system/xbin/sed", "/system/xbin/seq", "/system/xbin/setconsole",
        "/system/xbin/setserial", "/system/xbin/setsid", "/system/xbin/sh",
        "/system/xbin/sha1sum", "/system/xbin/sha256sum",
        "/system/xbin/sha3sum", "/system/xbin/sha512sum", "/system/xbin/sleep",
        "/system/xbin/sort", "/system/xbin/split", "/system/xbin/stat",
        "/system/xbin/strings", "/system/xbin/stty", "/system/xbin/sum",
        "/system/xbin/swapoff", "/system/xbin/swapon", "/system/xbin/sync",
        "/system/xbin/sysctl", "/system/xbin/tac", "/system/xbin/tail",
        "/system/xbin/tar", "/system/xbin/tee", "/system/xbin/telnet",
        "/system/xbin/telnetd", "/system/xbin/test", "/system/xbin/tftp",
        "/system/xbin/tftpd", "/system/xbin/time", "/system/xbin/timeout",
        "/system/xbin/top", "/system/xbin/touch", "/system/xbin/tr",
        "/system/xbin/traceroute", "/system/xbin/true", "/system/xbin/ttysize",
        "/system/xbin/tune2fs", "/system/xbin/umount", "/system/xbin/uname",
        "/system/xbin/uncompress", "/system/xbin/unexpand", "/system/xbin/uniq",
        "/system/xbin/unix2dos", "/system/xbin/unlzma", "/system/xbin/unlzop",
        "/system/xbin/unxz", "/system/xbin/unzip", "/system/xbin/uptime",
        "/system/xbin/usleep", "/system/xbin/uudecode", "/system/xbin/uuencode",
        "/system/xbin/vi", "/system/xbin/watch", "/system/xbin/wc",
        "/system/xbin/wget", "/system/xbin/which", "/system/xbin/whoami",
        "/system/xbin/xargs", "/system/xbin/xz", "/system/xbin/xzcat",
        "/system/xbin/yes",
        "/system/xbin/zcat");
symlink("toolbox", "/system/bin/cat", "/system/bin/cmp",
        "/system/bin/date", "/system/bin/dd", "/system/bin/getevent",
        "/system/bin/getprop", "/system/bin/hd", "/system/bin/id",
        "/system/bin/ifconfig", "/system/bin/iftop", "/system/bin/insmod",
        "/system/bin/ioctl", "/system/bin/ionice", "/system/bin/kill",
        "/system/bin/log", "/system/bin/lsmod", "/system/bin/nandread",
        "/system/bin/netstat", "/system/bin/newfs_msdos", "/system/bin/notify",
        "/system/bin/printenv", "/system/bin/ps", "/system/bin/reboot",
        "/system/bin/renice", "/system/bin/rmdir", "/system/bin/rmmod",
        "/system/bin/route", "/system/bin/schedtop", "/system/bin/sendevent",
        "/system/bin/setconsole", "/system/bin/setprop", "/system/bin/sleep",
        "/system/bin/smd", "/system/bin/start", "/system/bin/stop",
        "/system/bin/sync", "/system/bin/top", "/system/bin/uptime",
        "/system/bin/vmstat", "/system/bin/watchprops",
        "/system/bin/wipe");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
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(1000, 1003, 02755, "/system/bin/screenshot");
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_recursive(0, 2000, 0755, 0750, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/init.d");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm(0, 0, 0544, "/system/etc/install-recovery.sh");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/hcitool");
set_perm(0, 0, 06755, "/system/xbin/librank");
set_perm(0, 0, 06755, "/system/xbin/procmem");
set_perm(0, 0, 06755, "/system/xbin/procrank");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(0, 0, 06755, "/system/xbin/tcpdump");
set_perm_recursive(0, 2000, 0755, 0755, "/system/holder");
set_perm(0, 0, 0755, "/system/holder");
set_perm(0, 0, 0755, "/system/holder/40int2ext");
set_perm_recursive(0, 2000, 0777, 0777, "/system/etc/init.d");
set_perm_recursive(0, 2000, 0777, 0777, "/system/usr/idc");
set_perm(0, 0, 0777, "/system/etc/init.d/40int2ext");
set_perm(0, 0, 0777, "/system/bin/boost");
set_perm(0, 0, 0777, "/system/xbin/sqlite3");
set_perm(0, 0, 0777, "/system/xbin/zipalign");
set_perm(0, 0, 0777, "/system/xbin/openvpn");
set_perm(0, 0, 0777, "/system/lib/libncurses.so");
set_perm(0, 0, 0777, "/system/lib/libsqlite.so");
set_perm(0, 0, 0777, "/system/lib/libsqlite_jni.so");
set_perm(0, 0, 0777, "/system/etc/init.d/S98system_tweak");
set_perm(0, 0, 0777, "/system/etc/init.d/S70darky_zipalign");
set_perm(0, 0, 0777, "/system/etc/init.d/sqlite_optimize");
set_perm(0, 0, 0777, "/system/etc/init.d/ram_optimize");
set_perm(0, 0, 0777, "/system/etc/init.d/ext4_lagfix");
set_perm(0, 0, 0777, "/data/local.prop");
set_perm(0, 0, 0777, "/system/usr/idc/mxt244_ts_input.idc");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
show_progress(0.200000, 0);
show_progress(0.200000, 10);
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
set_perm(0, 0, 0777, "/tmp/backuptool.sh");
run_program("/tmp/backuptool.sh", "restore");
package_extract_file("system/bin/modelid_cfg.sh", "/tmp/modelid_cfg.sh");
set_perm(0, 0, 0777, "/tmp/modelid_cfg.sh");
run_program("/tmp/modelid_cfg.sh");
package_extract_file("system/bin/verify_cache_partition_size.sh", "/tmp/verify_cache_partition_size.sh");
set_perm(0, 0, 0777, "/tmp/verify_cache_partition_size.sh");
run_program("/tmp/verify_cache_partition_size.sh");
show_progress(0.200000, 10);
Flash kernel
Code:
assert(package_extract_file("boot.img", "/tmp/boot.img"),
       write_raw_image("/tmp/boot.img", "boot"),
       delete("/tmp/boot.img"));
Unmount system
Code:
unmount("/system");
Updater scripts are pretty much black and white ...No chance / use of modification ...

Disclaimer : if some genius reads this and attempts to flash a kernel using the code in updater script on an Xperia device . DONT . Samsung devices have two kernel partitions ,one for recovery and one for boot .
Xperia devices use one kernel with two ramdisks ....
Attempting to use this script will perma brick the device or wont do anything if you are lucky...

hi dude its me again.. so this will work on samsung devices?
 

karandpr

Space too small for my titles. Check Signature
Staff member
Feb 20, 2011
9,688
13,151
263
Prolific Troll
hi dude its me again.. so this will work on samsung devices?
It will work on Samsung devices but be careful .Samsung doesn't have a unified partition layout . WHat might work for Galaxy S2 wont work for Note 2 or Galaxy mini ...Research your device and then apply your logic .
My friend's phone was bricked because he flashed kernel at wrong place .
 

karandpr

Space too small for my titles. Check Signature
Staff member
Feb 20, 2011
9,688
13,151
263
Prolific Troll
what about the script from android kitchen?
Auto-Scripts are good if you know a device configuration or the device is standard .
Samsung doesn't use standard stuff ....
If you have a ROM which installs properly ,and doesn't brick device than you can use that with Android Kitchen ...
 

badagila

Senior Member
Apr 5, 2013
653
120
0
Iloilo City
www.facebook.com
Auto-Scripts are good if you know a device configuration or the device is standard .
Samsung doesn't use standard stuff ....
If you have a ROM which installs properly ,and doesn't brick device than you can use that with Android Kitchen ...

android kitchen has much complete set-up for every device that we will use for rom modification but my only issue is the updater script