Add cool Omni ascii graphics to your updater-script, the easy way! - General Omni Discussion

Add cool Omni ascii graphics to your updater-script, the easy way!
NOTE: THE FONT CHOICES ON XDA DO NOT PRESENT THE ASCII TEXT PROPERLY. IF YOU COPY AND PASTE THE ASCII TEXT TO NOTEPAD, MOUSEPAD, OR GEDIT, THEY WILL SHOW UP PROPERLY. THESE ASCII GRAPHICS WILL LOOK RIGHT ON YOUR PHONE IF ADDED TO YOUR UPDATER-SCRIPT.
I've noticed that most rom updater scripts (the script that handles installation during TWRP install) usually don't have much by way of appeal. Actually, most of the time, the script is not even informative to what is truly happening on the phone at the moment, but that is a subject for another time.
One of the great things about the updater-script, is you can add notes for it to print on the screen. This would be a useful way to keep people up to date about what is going on. Another way to use this, however, is to add some class to your rom install script by adding some ascii text that resembles a picture.
Now before you get flustered at the thought of trying to draw your own ascii art, keep in mind that there are some really great programs to do that for you. A really simple program for Ubuntu/Debian computers is a program called jp2a.
To get it, use
$sudo apt-get install jp2a
After installing, then you can create your graphics by simple command line options. Find a picture that you want to use, and then ascii it!
$jp2a nameofyourpicture.jpg
The terminal window will convert your picture into ascii text. You may have to play with the window size of your terminal in order to get the correct size of your outputted image. There are a lot of options, which you can see with:
$jp2a --help
I used jp2a on several OmniRom logos to make these examples.
Here are some examples that I added the taglines to, so you can just drop them into your updater-script:
OmniRom
Code:
ui_print(" ':oddddddddddddddddddddddddo;. ");
ui_print(" ;dkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkd, ");
ui_print(" .dkkkkkd:;;;;;;;;;;;;;;;;;;;;:dkkkkko. ");
ui_print(" dkkkko. .dkkkko ");
ui_print(" .kkkkk. .kkkkk. ");
ui_print(" .kkkkk. .kkkkk. ");
ui_print(" .kkkkk. .kkkkk. ");
ui_print(" .kkkkk. . . .kkkkk. ");
ui_print(" .kkkkk. 'xl lx' .kkkkk. ");
ui_print(" .kkkkk. .do. ..';;;;'.. .od. .kkkkk. ");
ui_print(" .kkkkk. .:kxkkkkkkkkkkkkxk:. .kkkkk. ");
ui_print(" .kkkkk. .lkkkkkkkkkkkkkkkkkkkkl. .kkkkk. ");
ui_print(" .kkkkk,lkkkklokkkkkkkkkkkkolkkkkl,kkkkk. ");
ui_print(" .kkkkkkkkkkk[]kkkkkkkkkkkk[]kkkkkkkkkkk. ");
ui_print(" dkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkko ");
ui_print(" .okkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkl. ");
ui_print(" 'okkkkkkkkkkkkkkkkkkkkkkkkkkkkkko' ");
ui_print(" .;lllllllllllllllllllllllllll. ");
OmniRom Inverted
Code:
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMMKdc;,,,,,,,,,,,,,,,,,,,,,,;ldKMMMMMM");
ui_print("MMMM0c,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,l0MMMM");
ui_print("MMWd,,,,,cx0KKKKKKKKKKKKKKKKKK0xc,,,,;kMMM");
ui_print("MM0,,,,,kWMMMMMMMMMMMMMMMMMMMMMMWx,,,,;0MM");
ui_print("MMO,,,,cWMMMMMMMMMMMMMMMMMMMMMMMMMc,,,,OMM");
ui_print("MMO,,,,lMMMMMMMMMMMMMMMMMMMMMMMMMMl,,,,OMM");
ui_print("MMO,,,,lMMMMMMMMMMMMMMMMMMMMMMMMMMl,,,,OMM");
ui_print("MMO,,,,lMMWxkWMMMMMMMMMMMMMMWkxWMMl,,,,OMM");
ui_print("MMO,,,,lMMMk,dWMMMMNNNNMMMMWd,xMMMl,,,,OMM");
ui_print("MMO,,,,lMMMM0;cdoc:,,,,:codc;0MMMMl,,,,OMM");
ui_print("MMO,,,,lMMXd:,,,,,,,,,,,,,,,,:dXMMl,,,,OMM");
ui_print("MMO,,,,lKo,,,,;,,,,,,,,,,,,;,,,,oKl,,,,OMM");
ui_print("MMO,,,,;;,,,,o0:,,,,,,,,,,:0o,,,,;;,,,,OMM");
ui_print("MM0,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;0MM");
ui_print("MMMk;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;OMMM");
ui_print("MMMMKl,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,lKMMMM");
ui_print("MMMMMMXxc:::::::::::::::::::::::::dXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
OmniRom black and white and then inverted
Code:
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :0:. .0: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
So, as you can see in this example, here is an updater script that has the ascii art as an image that shows up at the start of loading the rom. You really could put it anywhere.
Code:
show_progress(1.34, 65);
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :0:. .0: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("Formatting /system");
format("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "0", "/system");
ui_print("Mounting /system");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system");
ui_print("Extracting /system");
package_extract_dir("system", "/system");
ui_print("Creating symbolic links");
symlink("../xbin/su", "/system/bin/su");
symlink("/firmware-mdm/image/acdb.mbn", "/system/etc/firmware/acdb.mbn");
symlink("/firmware-mdm/image/apps.mbn", "/system/etc/firmware/apps.mbn");
symlink("/firmware-mdm/image/dsp1.mbn", "/system/etc/firmware/dsp1.mbn");
********************etc*********************************************************
set_metadata("/system/xbin/su", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:su_exec:s0");
ui_print("Unmounting /system");
unmount("/system");
ui_print("Installation complete.");
I'd like to take it one step further: Rather than a progress bar, or along with a progress bar, you could create a line by line fill in picture. Here is an example of an updater-script with this concept:
Code:
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
show_progress(1.34, 65);
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
format("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "0", "/system");
ui_print("MMMMMM0l. 'lKMMMMMM");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system");
ui_print("MMMMO' ,OMMMM");
package_extract_dir("system", "/system");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
symlink("../xbin/su", "/system/bin/su");
symlink("/firmware-mdm/image/acdb.mbn", "/system/etc/firmware/acdb.mbn");
symlink("/firmware-mdm/image/apps.mbn", "/system/etc/firmware/apps.mbn");
symlink("/firmware-mdm/image/dsp1.mbn", "/system/etc/firmware/dsp1.mbn");
symlink("/firmware-mdm/image/dsp2.mbn", "/system/etc/firmware/dsp2.mbn");
symlink("/firmware-mdm/image/dsp3.mbn", "/system/etc/firmware/dsp3.mbn");
symlink("/firmware-mdm/image/efs1.mbn", "/system/etc/firmware/efs1.mbn");
symlink("/firmware-mdm/image/efs2.mbn", "/system/etc/firmware/efs2.mbn");
symlink("/firmware-mdm/image/efs3.mbn", "/system/etc/firmware/efs3.mbn");
symlink("/firmware-mdm/image/mdm_acdb.img", "/system/etc/firmware/mdm_acdb.img");
symlink("/firmware-mdm/image/rpm.mbn", "/system/etc/firmware/rpm.mbn");
symlink("/firmware-mdm/image/sbl1.mbn", "/system/etc/firmware/sbl1.mbn");
symlink("/firmware-mdm/image/sbl2.mbn", "/system/etc/firmware/sbl2.mbn");
symlink("/firmware/image/q6.b00", "/system/etc/firmware/q6.b00");
symlink("/firmware/image/q6.b01", "/system/etc/firmware/q6.b01");
symlink("/firmware/image/q6.b03", "/system/etc/firmware/q6.b03");
symlink("/firmware/image/q6.b04", "/system/etc/firmware/q6.b04");
symlink("/firmware/image/q6.b05", "/system/etc/firmware/q6.b05");
symlink("/firmware/image/q6.b06", "/system/etc/firmware/q6.b06");
symlink("/firmware/image/q6.mdt", "/system/etc/firmware/q6.mdt");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
symlink("/firmware/image/tzapps.b00", "/system/etc/firmware/tzapps.b00");
symlink("/firmware/image/tzapps.b01", "/system/etc/firmware/tzapps.b01");
symlink("/firmware/image/tzapps.b02", "/system/etc/firmware/tzapps.b02");
symlink("/firmware/image/tzapps.b03", "/system/etc/firmware/tzapps.b03");
symlink("/firmware/image/tzapps.mdt", "/system/etc/firmware/tzapps.mdt");
symlink("/firmware/image/vidc.b00", "/system/etc/firmware/vidc.b00");
symlink("/firmware/image/vidc.b01", "/system/etc/firmware/vidc.b01");
symlink("/firmware/image/vidc.b02", "/system/etc/firmware/vidc.b02");
symlink("/firmware/image/vidc.b03", "/system/etc/firmware/vidc.b03");
symlink("/firmware/image/vidc.mdt", "/system/etc/firmware/vidc.mdt");
symlink("Roboto-Bold.ttf", "/system/fonts/DroidSans-Bold.ttf");
symlink("Roboto-Regular.ttf", "/system/fonts/DroidSans.ttf");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
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/fstrim", "/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/taskset", "/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");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
symlink("libGLESv2.so", "/system/lib/libGLESv3.so");
symlink("logcat", "/system/bin/logdog", "/system/bin/lolcat",
"/system/bin/loldog");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
symlink("mksh", "/system/bin/sh");
symlink("mount.exfat", "/system/bin/fsck.exfat",
"/system/bin/mkfs.exfat");
symlink("pigz", "/system/xbin/unpigz");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
symlink("toolbox", "/system/bin/cat", "/system/bin/chcon",
"/system/bin/chmod", "/system/bin/chown", "/system/bin/clear",
"/system/bin/cmp", "/system/bin/cp", "/system/bin/date",
"/system/bin/dd", "/system/bin/df", "/system/bin/dmesg",
"/system/bin/du", "/system/bin/getenforce", "/system/bin/getevent",
"/system/bin/getprop", "/system/bin/getsebool", "/system/bin/grep",
"/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/ln",
"/system/bin/load_policy", "/system/bin/log", "/system/bin/ls",
"/system/bin/lsmod", "/system/bin/lsof", "/system/bin/md5",
"/system/bin/mkdir", "/system/bin/mkswap", "/system/bin/mount",
"/system/bin/mv", "/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/printenv",
"/system/bin/ps", "/system/bin/r", "/system/bin/readlink",
"/system/bin/renice", "/system/bin/restart", "/system/bin/restorecon",
"/system/bin/rm", "/system/bin/rmdir", "/system/bin/rmmod",
"/system/bin/route", "/system/bin/runcon", "/system/bin/schedtop",
"/system/bin/sendevent", "/system/bin/setconsole",
"/system/bin/setenforce", "/system/bin/setfattr", "/system/bin/setprop",
"/system/bin/setsebool", "/system/bin/sleep", "/system/bin/smd",
"/system/bin/start", "/system/bin/stop", "/system/bin/swapoff",
"/system/bin/swapon", "/system/bin/sync", "/system/bin/top",
"/system/bin/touch", "/system/bin/umount", "/system/bin/uptime",
"/system/bin/vmstat", "/system/bin/watchprops",
"/system/bin/wipe");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
set_metadata_recursive("/system", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/bin", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
set_metadata("/system/bin/app_process", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:zygote_exec:s0");
set_metadata("/system/bin/clatd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:clatd_exec:s0");
set_metadata("/system/bin/debuggerd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:debuggerd_exec:s0");
set_metadata("/system/bin/dhcpcd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:dhcp_exec:s0");
set_metadata("/system/bin/dnsmasq", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:dnsmasq_exec:s0");
set_metadata("/system/bin/drmserver", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:drmserver_exec:s0");
set_metadata("/system/bin/efsks", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:kickstart_exec:s0");
set_metadata("/system/bin/hostapd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:hostapd_exec:s0");
set_metadata("/system/bin/installd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:installd_exec:s0");
set_metadata("/system/bin/keystore", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:keystore_exec:s0");
set_metadata("/system/bin/ks", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:kickstart_exec:s0");
set_metadata("/system/bin/mediaserver", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:mediaserver_exec:s0");
ui_print("MMk ,MMKc. .cKMM, kMM");
set_metadata("/system/bin/mksh", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:shell_exec:s0");
set_metadata("/system/bin/mtpd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:mtp_exec:s0");
set_metadata("/system/bin/netcfg", "uid", 0, "gid", 3003, "mode", 02750, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/bin/netd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:netd_exec:s0");
set_metadata("/system/bin/ping", "uid", 0, "gid", 0, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:ping_exec:s0");
set_metadata("/system/bin/pppd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:ppp_exec:s0");
set_metadata("/system/bin/qcks", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:kickstart_exec:s0");
set_metadata("/system/bin/racoon", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:racoon_exec:s0");
set_metadata("/system/bin/rild", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:rild_exec:s0");
set_metadata("/system/bin/run-as", "uid", 0, "gid", 2000, "mode", 0750, "capabilities", 0xc0, "selabel", "u:object_r:runas_exec:s0");
set_metadata("/system/bin/sdcard", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:sdcardd_exec:s0");
set_metadata("/system/bin/servicemanager", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:servicemanager_exec:s0");
ui_print("MMk ,K: ;0, kMM");
set_metadata("/system/bin/surfaceflinger", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:surfaceflinger_exec:s0");
set_metadata("/system/bin/vold", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:vold_exec:s0");
set_metadata("/system/bin/wpa_supplicant", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:wpa_exec:s0");
set_metadata_recursive("/system/etc/dhcpcd", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:dhcp_system_file:s0");
set_metadata("/system/etc/dhcpcd/dhcpcd-run-hooks", "uid", 1014, "gid", 2000, "mode", 0550, "capabilities", 0x0, "selabel", "u:object_r:dhcp_system_file:s0");
ui_print("MMk :eek:. .O: kMM");
set_metadata_recursive("/system/etc/init.d", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/etc/init.d", "uid", 0, "gid", 0, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/etc/install-recovery.sh", "uid", 0, "gid", 0, "mode", 0544, "capabilities", 0x0);
set_metadata_recursive("/system/etc/ppp", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0555, "capabilities", 0x0, "selabel", "u:object_r:ppp_system_file:s0");
set_metadata("/system/recovery-from-boot.p", "uid", 0, "gid", 0, "mode", 0644, "capabilities", 0x0);
set_metadata("/system/vendor", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/firmware", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/lib", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/vendor/lib/drm", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
ui_print("MMO OMM");
set_metadata("/system/vendor/lib/drm/libdrmwvmplugin.so", "uid", 0, "gid", 0, "mode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/lib/egl", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/vendor/lib/hw", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/lib/hw/power.msm8960.so", "uid", 0, "gid", 0, "mode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
ui_print("MMMd xMMM");
set_metadata_recursive("/system/vendor/lib/mediadrm", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/lib/mediadrm/libwvdrmengine.so", "uid", 0, "gid", 0, "mode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/xbin", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
ui_print("MMMM0; ;KMMMM");
set_metadata("/system/xbin/librank", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/procmem", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/procrank", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/su", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:su_exec:s0");
ui_print("MMMMMMKo'.........................lXMMMMMM");
unmount("/system");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
So, as it performs the loading actions, it also draws your picture!
Either way, I hope you are inspired to add some flare to your rom updater-script. Adding these little touches to your rom shows others that you are into the details. Enjoy!

You can even do ascii movies!
You can also do a "movie" by making ascii text images that take up your devices full screen, and then intersperse each capture between the lines. You can either make each a seperate capture, such as from a real movie, or edit the images you have. For example, I have a blinking OmniRom logo:
Code:
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :0:. .0: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :o. .o: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :u. .u: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :.. ..: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :u. .u: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :o. .o: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMWNNNNNNNNNNNNNNNNNNNNNNWMMMMMMMMM");
ui_print("MMMMMM0l. 'lKMMMMMM");
ui_print("MMMMO' ,OMMMM");
ui_print("MMWl 'oO000000000000000000Oo. dMMM");
ui_print("MMk dWMMMMMMMMMMMMMMMMMMMMMMWd 0MM");
ui_print("MMx 'WMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMMMMMMMMMMMMMMMMMMMMMMMMM, kMM");
ui_print("MMk ,MMWddWMMMMMMMMMMMMMMWxoWMM, kMM");
ui_print("MMk ,MMMd cWMMMMNNNNMMMMWc oMMM, kMM");
ui_print("MMk ,MMMMO.'c;.. ..;c'.0MMMM, kMM");
ui_print("MMk ,MMKc. .cKMM, kMM");
ui_print("MMk ,K: ;0, kMM");
ui_print("MMk :0:. .0: kMM");
ui_print("MMO OMM");
ui_print("MMMd xMMM");
ui_print("MMMM0; ;KMMMM");
ui_print("MMMMMMKo'.........................lXMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
ui_print("MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM");
This example works on my device screen, as it is somewhat small, but you may need a different size for a "movie" on your screen.
And, if you really want, you can also do the matrix by adding these lines interspersed in your script:
Code:
ui_print(" . .'. ");
ui_print(" .l ,. ");
ui_print(".', .. ");
ui_print(" '' ... ");
ui_print(" c;..:' ");
ui_print(" .. .. ");
ui_print(".c;.;;. ;c..c. ;:. ");
ui_print(".c,.,,. ,c..;' ',. ");
ui_print(" .. .'. .. .,,..'. ");
ui_print(" ;. .' .::. .ll',ll.,;. ");
ui_print(" ,. . ... .' '. .'. ");
ui_print(".,' .,. ,, ::: ',..,' ;:: ");
ui_print("'c' :c' cc. :c; ;l.'c, ;c; ");
ui_print(" .. . .. .. . ");
ui_print("'c,.,;..;;. ,..:l..:. ");
ui_print(".,'.,,'.,,. ;,, ':..;; ");
ui_print(" '' ... .. ' ... ..... ");
ui_print("':' 'l' .c''l, ,::.,;. ;,. ");
ui_print(" .. ....'. .. .'. . . ");
ui_print(".c, ',.c;..'; ;;. ':, ',..,' ");
ui_print(".c,..;;.,;. ', .c. ,' .;;'';:.");
ui_print(" . .. . .. .'. '. ");
ui_print(" ,,..;' ,c;.c,c ;. ,. .:. ");
ui_print(" .. .;..'..'.' .. . .'. ");
ui_print(".''.cc, ,' .,. ... .'' ',. ,' .' ");
ui_print(".:c..x, c; , c'c ',; ;,. ,; ,;.");
ui_print(" .' .' . ... .. .'. .. .'.");
ui_print(".;. ., ,, ;:. .;. ;:. c:.'lo.");
ui_print(" '. .;;..,,.:;. .. ',. ,, .:' ");
ui_print(" .. .. .'. .'. .. , ... . ");
ui_print("':' .,,..:: ., :l''l; ,:: ; ");
ui_print(" .. .. .'. . .'..' .. .. ");
ui_print(".;; ,'.,ll..'. ,..;, ''' .;. ");
ui_print(".:: .. .c;.:;;.':'.:; ;': .:, ");
ui_print(" .. ,, . '.. ... '' ");
ui_print(" '. 'KK; c,:.lo, ., ;. ");
ui_print("',; .dx. ,., ,' ' .. ");
ui_print(" .. ... .. .,. .. .. ,. ");
ui_print(".:; .c;;.:c.::' ;l' .:: .c: ");
ui_print(" . .'..... . .. ... ... ");
ui_print(";::... ;0k:;::. ,, .. 'c. ,::.");
ui_print(".,, ., .lx,.,,..;; .' ,;. .,,.");
ui_print(" .. . .lo'... ''' .'. .'' .. ");
ui_print("''; ';',XXl,::.clc '. :lc .::.");
ui_print(" .. .. c; .. .' . .' .. ");
ui_print(" .. ',..''..,,.''..;,. .'. '. ");
ui_print(".;; .:. ,;..:c.c':.;;. .:' ,;:.");
ui_print("... . .. .. .. . .. ");
ui_print(".:c..;'.;;. ' ;c..c;'',; ':, .::.");
ui_print(" .. ....'. .. .'. . . ");
ui_print(".c, ',.c;..'; ;;. ':, ',..,' ");
ui_print(".c,..;;.,;. ', .c. ,' .;;'';:.");
ui_print(" . .. . .. .'. '. ");
ui_print(" ,,..;' ,c;.c,c ;. ,. .:. ");
ui_print(" .. .;..'..'.' .. . .'. ");
ui_print(".''.cc, ,' .,. ... .'' ',. ,' .' ");
ui_print(".:c..x, c; , c'c ',; ;,. ,; ,;.");
ui_print(" .' .' . ... .. .'. .. .'.");
ui_print(" .. .'. .. .,,..'. ");
ui_print(" ;. .' .::. .ll',ll.,;. ");
ui_print(" ,. . ... .' '. .'. ");
ui_print(".,' .,. ,, ::: ',..,' ;:: ");
ui_print("'c' :c' cc. :c; ;l.'c, ;c; ");
ui_print(" .. . .. .. . ");
ui_print("'c,.,;..;;. ,..:l..:. ");
ui_print(".,'.,,'.,,. ;,, ':..;; ");
ui_print(" '' ... .. ' ... ..... ");
ui_print(" .. . .lo'... ''' .'. .'' .. ");
ui_print("''; ';',XXl,::.clc '. :lc .::.");
ui_print(" .. .. c; .. .' . .' .. ");
ui_print(" .. ',..''..,,.''..;,. .'. '. ");
ui_print(".;; .:. ,;..:c.c':.;;. .:' ,;:.");
ui_print(".', .. ");
ui_print(" '' ... ");
ui_print(" c;..:' ");
ui_print(" .. .. ");
ui_print(".c;.;;. ;c..c. ;:. ");
ui_print(".c,.,,. ,c..;' ',. ");
ui_print(".c, ',.c;..'; ;;. ':, ',..,' ");
ui_print(".c,..;;.,;. ', .c. ,' .;;'';:.");
ui_print(" . .. . .. .'. '. ");
ui_print(" ,,..;' ,c;.c,c ;. ,. .:. ");
ui_print(" .. .;..'..'.' .. . .'. ");
ui_print(".''.cc, ,' .,. ... .'' ',. ,' .' ");
ui_print(".:c..x, c; , c'c ',; ;,. ,; ,;.");
ui_print(" .' .' . ... .. .'. .. .'.");
ui_print(" .. .'. .. .,,..'. ");
ui_print(" ;. .' .::. .ll',ll.,;. ");
ui_print(" ,. . ... .' '. .'. ");
ui_print(".,' .,. ,, ::: ',..,' ;:: ");
ui_print("'c' :c' cc. :c; ;l.'c, ;c; ");
ui_print(" '. .;;..,,.:;. .. ',. ,, .:' ");
ui_print(" .. .. .'. .'. .. , ... . ");
ui_print("':' .,,..:: ., :l''l; ,:: ; ");
ui_print(" .. .. .'. . .'..' .. .. ");
ui_print(".;; ,'.,ll..'. ,..;, ''' .;. ");
ui_print(".:: .. .c;.:;;.':'.:; ;': .:, ");
ui_print(" .. ,, . '.. ... '' ");
ui_print(" '. 'KK; c,:.lo, ., ;. ");
ui_print("',; .dx. ,., ,' ' .. ");
ui_print(" .. ... .. .,. .. .. ,. ");
ui_print(".:; .c;;.:c.::' ;l' .:: .c: ");
ui_print(" . .'..... . .. ... ... ");
ui_print(";::... ;0k:;::. ,, .. 'c. ,::.");
ui_print(".,, ., .lx,.,,..;; .' ,;. .,,.");
ui_print(" .. . .lo'... ''' .'. .'' .. ");
ui_print("''; ';',XXl,::.clc '. :lc .::.");
This scrolling matrix will not quite be as smooth as the matrix you are used to, as it will pause between functions, but it isn't half bad!

Related

[Q] Sweet-Rom V4 from /system/app to /preload?! [What am i doing wrong?]

I am using a safe update-binary from Entropy that's why i do formats in updater-script because i know they will not cause the brickbug :good:
Hi! I am currently trying to convert Sweet-Rom V4 XXLRU to /preload instead of /system/app
So far i did the following:
Extracted the zip and created:
preload/symlink/system/app
And move the app folder from /system to this folder!
Created every apk with:
Link: /preload/symlink/system/app/<apkname>.apk
using Notepad++
And created the updater-script for it but it won't pass the samsung logo (not the GT-N7000... the other one after that!)
here is the updater-script for it:
Code:
show_progress(0.1, 0);
ui_print("");
ui_print(" Take a seat and get ready for Sweet ROM MODDED by ZyLoR!");
ui_print("");
ui_print("Unmounting partitions...");
unmount("/preload");
unmount("/system");
unmount("/cache");
unmount("/data");
ui_print("Formatting /cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p7", "0");
ui_print("Formatting /data");
format("ext4", "EMMC", "/dev/block/mmcblk0p10", "0");
ui_print("Formatting /system");
format("ext4", "EMMC", "/dev/block/mmcblk0p9", "0");
ui_print("");
ui_print(" Installing Sweet ROM V5 XXXLRU...............");
ui_print("");
ui_print("");
ui_print(" Please be patient ");
ui_print("");
mount("ext4", "EMMC", "/dev/block/mmcblk0p9", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p7", "/cache");
mount("ext4", "EMMC", "/dev/block/mmcblk0p10", "/data");
mount("ext4", "EMMC", "/dev/block/mmcblk0p12", "/preload");
ui_print("Wiping Dalvik...");
delete_recursive("/data/dalvik-cache");
ui_print("Wiping preload partition..");
delete_recursive("/preload");
ui_print("");
ui_print(" installing Kernel ...........................");
ui_print("");
package_extract_file("flash_image", "/tmp/flash_image");
set_perm(0, 0, 0777, "/tmp/flash_image");
assert(package_extract_file("zImage", "/tmp/zImage"),
run_program("/tmp/flash_image", "/dev/block/mmcblk0p5", "/tmp/zImage"),
delete("/tmp/zImage"));
delete("/tmp/flash_image");
ui_print("");
ui_print(" installing Modem .............................");
ui_print("");
assert(package_extract_file("modem.bin", "/tmp/modem.bin"),
write_raw_image("/tmp/modem.bin", "/dev/block/mmcblk0p8"),
delete("/tmp/modem.bin"));
show_progress(0.100000, 0);
ui_print("");
ui_print(" installing system, this takes some time.......");
ui_print("");
show_progress(0.100000, 20);
[B]package_extract_dir("preload", "/preload");[/B]
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
package_extract_dir("sdcard", "/sdcard");
show_progress(0.100000, 60);
[B]symlink("/preload/symlink/system/app", "/system/app");[/B]
symlink("busybox", "/system/xbin/[", "/system/xbin/[[", "/system/xbin/arp", "/system/xbin/ash", "/system/xbin/awk",
"/system/xbin/base64", "/system/xbin/basename", "/system/xbin/bbconfig",
"/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/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/insmod", "/system/xbin/install", "/system/xbin/iostat",
"/system/xbin/ip", "/system/xbin/kill", "/system/xbin/killall",
"/system/xbin/killall5", "/system/xbin/length", "/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/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/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/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("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/cat", "/system/bin/chmod",
"/system/bin/chown", "/system/bin/cmp", "/system/bin/date",
"/system/bin/dd", "/system/bin/df", "/system/bin/dmesg",
"/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/ln", "/system/bin/log",
"/system/bin/ls", "/system/bin/lsmod", "/system/bin/lsof",
"/system/bin/mkdir", "/system/bin/mount", "/system/bin/mv",
"/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/printenv",
"/system/bin/ps", "/system/bin/r", "/system/bin/reboot",
"/system/bin/renice", "/system/bin/rm", "/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/touch", "/system/bin/umount",
"/system/bin/uptime", "/system/bin/vmstat", "/system/bin/watchprops",
"/system/bin/wipe");
symlink("/system/etc/ppp/ip-up-vpn", "/system/etc/ppp/ip-down-vpn");
symlink("/system/bin/dumpstate", "/system/bin/dumpmesg");
symlink("/system/bin/debuggerd", "/system/bin/csview");
symlink("/system/xbin", "/system/xbin/bb");
symlink("/system/xbin/busybox", "system/bin/route");
symlink("/system/xbin/busybox", "system/bin/ifconfig");
symlink("/system/xbin/busybox", "system/xbin/bb/route");
symlink("/system/xbin/busybox", "system/xbin/bb/ifconfig");
ui_print("");
show_progress(0.100000, 80);
set_perm_recursive(0, 0, 0755, 0644, "/system");
#set_perm_recursive(0, 0, 0755, 0644, "/preload");
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(0, 0, 0644, "/system/etc/group");
set_perm(0, 0, 0644, "/system/etc/gshadow");
set_perm(0, 0, 0644, "/system/etc/passwd");
set_perm(0, 0, 0644, "/system/etc/shadow");
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(0, 2000, 0755, "/system/vendor");
set_perm_recursive(0, 2000, 0755, 0755, "/system/vendor/bin");
set_perm_recursive(0, 2000, 0777, 0777, "/system/etc/init.d");
set_perm(0, 0, 0777, "/system/sysctl.conf");
set_perm(0, 2000, 0755, "/system/vendor/etc");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm(0, 2000, 0755, "/system/vendor/lib/egl");
set_perm(0, 2000, 0755, "/system/vendor/lib/hw");
set_perm(0, 0, 0755, "/system/bin/customboot.sh");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/busybox");
set_perm(0, 0, 06755, "/system/bin/su");
symlink("/system/bin/su", "/system/xbin/su");
show_progress(0.100000, 90);
run_program("/sbin/umount", "/system");
run_program("/sbin/umount", "/cache");
run_program("/sbin/umount", "/data");
run_program("/sbin/umount", "/emmc");
run_program("/sbin/umount", "/preload");
delete("/tmp/flash_image");
delete("/tmp/busybox");
show_progress(0.100000, 100);
ui_print("Done flashing!");
Am i doing something wrong?
Yes i removed the bootanimation of the rom!
And NO i won't make it public... it's just for personal usage!
zylor said:
I am using a safe update-binary from Entropy that's why i do formats in updater-script because i know they will not cause the brickbug :good:
Hi! I am currently trying to convert Sweet-Rom V4 XXLRU to /preload instead of /system/app
So far i did the following:
Extracted the zip and created:
preload/symlink/system/app
And move the app folder from /system to this folder!
Created every apk with:
Link: /preload/symlink/system/app/<apkname>.apk
using Notepad++
And created the updater-script for it but it won't pass the samsung logo (not the GT-N7000... the other one after that!)
here is the updater-script for it:
Code:
show_progress(0.1, 0);
ui_print("");
ui_print(" Take a seat and get ready for Sweet ROM MODDED by ZyLoR!");
ui_print("");
ui_print("Unmounting partitions...");
unmount("/preload");
unmount("/system");
unmount("/cache");
unmount("/data");
ui_print("Formatting /cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p7", "0");
ui_print("Formatting /data");
format("ext4", "EMMC", "/dev/block/mmcblk0p10", "0");
ui_print("Formatting /system");
format("ext4", "EMMC", "/dev/block/mmcblk0p9", "0");
ui_print("");
ui_print(" Installing Sweet ROM V5 XXXLRU...............");
ui_print("");
ui_print("");
ui_print(" Please be patient ");
ui_print("");
mount("ext4", "EMMC", "/dev/block/mmcblk0p9", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p7", "/cache");
mount("ext4", "EMMC", "/dev/block/mmcblk0p10", "/data");
mount("ext4", "EMMC", "/dev/block/mmcblk0p12", "/preload");
ui_print("Wiping Dalvik...");
delete_recursive("/data/dalvik-cache");
ui_print("Wiping preload partition..");
delete_recursive("/preload");
ui_print("");
ui_print(" installing Kernel ...........................");
ui_print("");
package_extract_file("flash_image", "/tmp/flash_image");
set_perm(0, 0, 0777, "/tmp/flash_image");
assert(package_extract_file("zImage", "/tmp/zImage"),
run_program("/tmp/flash_image", "/dev/block/mmcblk0p5", "/tmp/zImage"),
delete("/tmp/zImage"));
delete("/tmp/flash_image");
ui_print("");
ui_print(" installing Modem .............................");
ui_print("");
assert(package_extract_file("modem.bin", "/tmp/modem.bin"),
write_raw_image("/tmp/modem.bin", "/dev/block/mmcblk0p8"),
delete("/tmp/modem.bin"));
show_progress(0.100000, 0);
ui_print("");
ui_print(" installing system, this takes some time.......");
ui_print("");
show_progress(0.100000, 20);
[B]package_extract_dir("preload", "/preload");[/B]
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
package_extract_dir("sdcard", "/sdcard");
show_progress(0.100000, 60);
[B]symlink("/preload/symlink/system/app", "/system/app");[/B]
symlink("busybox", "/system/xbin/[", "/system/xbin/[[", "/system/xbin/arp", "/system/xbin/ash", "/system/xbin/awk",
"/system/xbin/base64", "/system/xbin/basename", "/system/xbin/bbconfig",
"/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/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/insmod", "/system/xbin/install", "/system/xbin/iostat",
"/system/xbin/ip", "/system/xbin/kill", "/system/xbin/killall",
"/system/xbin/killall5", "/system/xbin/length", "/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/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/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/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("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/cat", "/system/bin/chmod",
"/system/bin/chown", "/system/bin/cmp", "/system/bin/date",
"/system/bin/dd", "/system/bin/df", "/system/bin/dmesg",
"/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/ln", "/system/bin/log",
"/system/bin/ls", "/system/bin/lsmod", "/system/bin/lsof",
"/system/bin/mkdir", "/system/bin/mount", "/system/bin/mv",
"/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/printenv",
"/system/bin/ps", "/system/bin/r", "/system/bin/reboot",
"/system/bin/renice", "/system/bin/rm", "/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/touch", "/system/bin/umount",
"/system/bin/uptime", "/system/bin/vmstat", "/system/bin/watchprops",
"/system/bin/wipe");
symlink("/system/etc/ppp/ip-up-vpn", "/system/etc/ppp/ip-down-vpn");
symlink("/system/bin/dumpstate", "/system/bin/dumpmesg");
symlink("/system/bin/debuggerd", "/system/bin/csview");
symlink("/system/xbin", "/system/xbin/bb");
symlink("/system/xbin/busybox", "system/bin/route");
symlink("/system/xbin/busybox", "system/bin/ifconfig");
symlink("/system/xbin/busybox", "system/xbin/bb/route");
symlink("/system/xbin/busybox", "system/xbin/bb/ifconfig");
ui_print("");
show_progress(0.100000, 80);
set_perm_recursive(0, 0, 0755, 0644, "/system");
#set_perm_recursive(0, 0, 0755, 0644, "/preload");
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(0, 0, 0644, "/system/etc/group");
set_perm(0, 0, 0644, "/system/etc/gshadow");
set_perm(0, 0, 0644, "/system/etc/passwd");
set_perm(0, 0, 0644, "/system/etc/shadow");
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(0, 2000, 0755, "/system/vendor");
set_perm_recursive(0, 2000, 0755, 0755, "/system/vendor/bin");
set_perm_recursive(0, 2000, 0777, 0777, "/system/etc/init.d");
set_perm(0, 0, 0777, "/system/sysctl.conf");
set_perm(0, 2000, 0755, "/system/vendor/etc");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm(0, 2000, 0755, "/system/vendor/lib/egl");
set_perm(0, 2000, 0755, "/system/vendor/lib/hw");
set_perm(0, 0, 0755, "/system/bin/customboot.sh");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/busybox");
set_perm(0, 0, 06755, "/system/bin/su");
symlink("/system/bin/su", "/system/xbin/su");
show_progress(0.100000, 90);
run_program("/sbin/umount", "/system");
run_program("/sbin/umount", "/cache");
run_program("/sbin/umount", "/data");
run_program("/sbin/umount", "/emmc");
run_program("/sbin/umount", "/preload");
delete("/tmp/flash_image");
delete("/tmp/busybox");
show_progress(0.100000, 100);
ui_print("Done flashing!");
Am i doing something wrong?
Yes i removed the bootanimation of the rom!
And NO i won't make it public... it's just for personal usage!
Click to expand...
Click to collapse
Preload is a partition Crapsung uses to install bloatware (first time initialization).
Your phone won't boot up or use file in /preload/app or /preload/framework/
Been on CM for 3-4 months now, I just checked Preload folder (partition) and there's Crapsung bloatware still lying!!
Boy124 said:
Preload is a partition Crapsung uses to install bloatware (first time initialization).
Your phone won't boot up or use file in /preload/app or /preload/framework/
Been on CM for 3-4 months now, I just checked Preload folder (partition) and there's Crapsung bloatware still lying!!
Click to expand...
Click to collapse
Apart from that you can use the partition to save space from /system one! But i can't seem to boot from phone!
Can you help? :\
zylor said:
Apart from that you can use the partition to save space from /system one! But i can't seem to boot from phone!
Can you help? :\
Click to expand...
Click to collapse
Why didn't you set permission for that partition?
Anyway another thing to notice is that you used Robbie's method I dunno how good it works but I can say original does fine and you won't need to create the link files manually....
Use this symlink("preload/symlink/system/app/eachapkname.apk","system/app/eachapkname.apk")b
Sent from my GT-N7000 using Tapatalk 2
REVERSiN said:
Why didn't you set permission for that partition?
Anyway another thing to notice is that you used Robbie's method I dunno how good it works but I can say original does fine and you won't need to create the link files manually....
Use this symlink("preload/symlink/system/app/eachapkname.apk","system/app/eachapkname.apk")b
Sent from my GT-N7000 using Tapatalk 2
Click to expand...
Click to collapse
Thanks my friend
in the system/preload/symlink/system/app are the applications that are already in the system. Now i cant update or install new app.
Can i delete app in system/preload/symlink/system/app folder?
i have sva 5.1 rom
kroata said:
in the system/preload/symlink/system/app are the applications that are already in the system. Now i cant update or install new app.
Can i delete app in system/preload/symlink/system/app folder?
i have sva 5.1 rom
Click to expand...
Click to collapse
Just move it to system/app instead, if you delete it then just don't forget the link file in system/app so that you won't tet troubles delete it...
Sent from my GT-N7000 using Tapatalk 2

[TUTORIAL] The updater-script completely explained

Hi all XDA Members
This is not at all an updater-script guide but an explanation
Example of updater-script:
Code:
[COLOR="Red"]assert(getprop("ro.product.device") == "janice" || getprop("ro.build.product") == "janice" ||
getprop("ro.product.device") == "i9070" || getprop("ro.build.product") == "i9070" ||
getprop("ro.product.device") == "GT-I9070" || getprop("ro.build.product") == "GT-I9070");[/COLOR]
[COLOR="Silver"]mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");[/COLOR]
[COLOR="Green"]package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");[/COLOR]
[COLOR="DarkRed"]set_perm(0, 0, 0777, "/tmp/backuptool.sh");
set_perm(0, 0, 0644, "/tmp/backuptool.functions");[/COLOR]
[COLOR="Lime"]run_program("/tmp/backuptool.sh", "backup");[/COLOR]
[COLOR="RoyalBlue"]unmount("/system");[/COLOR]
[COLOR="Pink"]show_progress(0.500000, 0);[/COLOR]
unmount("/system");
[COLOR="DarkSlateGray"]format("ext4", "EMMC", "/dev/block/mmcblk0p3", "0", "/system")[/COLOR];
[COLOR="silver"]mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");[/COLOR]
[COLOR="Purple"]package_extract_dir("recovery", "/system");
package_extract_dir("system", "/system");[/COLOR]
[COLOR="Olive"]symlink("/system/xbin/su", "/system/bin/su");
symlink("Roboto-Bold.ttf", "/system/fonts/DroidSans-Bold.ttf");
symlink("Roboto-Regular.ttf", "/system/fonts/DroidSans.ttf");
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/fstrim", "/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/taskset", "/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("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/cat", "/system/bin/chmod",
"/system/bin/chown", "/system/bin/cmp", "/system/bin/cp",
"/system/bin/date", "/system/bin/dd", "/system/bin/df",
"/system/bin/dmesg", "/system/bin/du", "/system/bin/getevent",
"/system/bin/getprop", "/system/bin/grep", "/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/ln", "/system/bin/log",
"/system/bin/ls", "/system/bin/lsmod", "/system/bin/lsof",
"/system/bin/md5", "/system/bin/mkdir", "/system/bin/mount",
"/system/bin/mv", "/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/printenv",
"/system/bin/ps", "/system/bin/r", "/system/bin/reboot",
"/system/bin/renice", "/system/bin/restart", "/system/bin/rm",
"/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/touch",
"/system/bin/umount", "/system/bin/uptime", "/system/bin/vmstat",
"/system/bin/watchprops",
"/system/bin/wipe");[/COLOR]
[COLOR="SandyBrown"]set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 0, 0755, 0755, "/system/addon.d");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");[/COLOR]
[COLOR="DarkRed"]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(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");[/COLOR]
[COLOR="SandyBrown"]set_perm_recursive(0, 2000, 0755, 0755, "/system/etc/init.d");[/COLOR]
[COLOR="DarkRed"]set_perm(0, 0, 0755, "/system/etc/init.d");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");[/COLOR]
[COLOR="SandyBrown"]set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");[/COLOR]
[COLOR="DarkRed"]set_perm(0, 2000, 0755, "/system/vendor");
set_perm(0, 2000, 0755, "/system/vendor/etc");
set_perm(0, 2000, 0755, "/system/vendor/firmware");[/COLOR]
[COLOR="SandyBrown"]set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor/lib");[/COLOR]
[COLOR="DarkRed"]set_perm(0, 0, 0644, "/system/vendor/lib/libbt-vendor.so");[/COLOR]
[COLOR="SandyBrown"]set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");[/COLOR]
[COLOR="DarkRed"]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");[/COLOR]
[COLOR="Pink"]show_progress(0.200000, 0);
show_progress(0.200000, 10);[/COLOR]
[COLOR="Green"]package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");[/COLOR]
[COLOR="DarkRed"]set_perm(0, 0, 0777, "/tmp/backuptool.sh");
set_perm(0, 0, 0644, "/tmp/backuptool.functions");[/COLOR]
[COLOR="Lime"]run_program("/tmp/backuptool.sh", "restore");[/COLOR]
[COLOR="Navy"]delete("/system/bin/backuptool.sh");
delete("/system/bin/backuptool.functions");[/COLOR]
[COLOR="Pink"]show_progress(0.200000, 10);[/COLOR]
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "/dev/block/mmcblk0p15"),
delete("/tmp/boot.img"));
[COLOR="Pink"]show_progress(0.100000, 0);[/COLOR]
unmount("/system");
1. getprop
The assert getprop lines aren't a must but their use is to make a safer installation.
Example: This updater-script is for GT-I9070 so with that lines it will check in build.prop if product name matches.
If "ro.product.device is janice, i9070 or GT-I9070 the installation will continue. If not it will abort.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
2. mount
Mount command will mount a partition as something.
Example: For GT-I9070 the /system partition is dev/block/mmcblk0p3
The partitions change device by device.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
3. package_extract_file
This line extracts a specific file contained in the zip to a specific directory.
Example: This updater-script extracts backuptool.sh to the temporary directory /tmp
Click to expand...
Click to collapse
Click to expand...
Click to collapse
4. set_perm
These lines are needed to give the correct permissions to the files extracted.
Example: backuptool.sh needs 777 permission to be executed correctly.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
5. run_program
This line execute a bash script (*.sh).
Example: backuptool.sh will be executed then after it will close itself and the updater-script will continue.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
6. unmount
This command will unmount the specificated partition.
Example: In this case it will unmount system partition.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
7. format
This command will format the specificated partition.
Example: This updater-script will format system partition. it needs to be unmounted before being formatted.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
8. package_extract_dir
This command extracts a specificated folder to another folder.
Example: This updater-script extracts system folder to system partition.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
9. symlink
This command links executable files to a file.
Example: busybox contains a lot of commands but they are all separated binaries that are linked to busybox binary by the symlinks.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
10. set_perm_recursive
This command is the same as set_perm but for folders
Example: is used to set permissions of the folder system/etc/init.d
Click to expand...
Click to collapse
Click to expand...
Click to collapse
11 . delete
This command deletes a file
Example: In this updater-script is used to delete backuptool.sh.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
12. delete_recursive
Same as delete but for folders
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Aroma Installer
Folder structure:
Blue = Folders
Black = Files
META-INF
|--com
|..|--google
|.....|--android
|........|--aroma
|........|..|--exec_demo < Little executables to sleep or take a screenshot
|........|..|--fonts < Fonts: There must be a "small.png" for lowercase and a "big.png"
|........|..|--icons < The icons that will be showed if called by the aroma-config
|........|..|--langs < It may contain translations
|........|..|--splash < The splash image/s that are showed at the start as static or animation if called by aroma-config
|........|..|--themes < Can be chosen from the aroma-config
|........|..|--ttf < Fonts
|........|..|--unicode < Chinese and Cyrillic
|........|--aroma-config < File that controls the installation
|........|--update-binary < Executable
|........|--update-binary-installer < Executable
|........|--updater-script < File that controls the installation
|--CERT.RSA < Sign files
|--CERT.SF < Sign files
|--MANIFEST.MF < Sign files
Will come soon...
Reserved 2
This is awesome! thanks!
Thanks for creating this guide. I've featured on the XDA Portal.
I am lucky because I really needed help, this may not be so related but I made my Rom using Android Kitchen, but I get the Status 0 ERROR which is related to the '' updater-script '' as described in the original thread
Status 0 might be two things: 1) You used an update-script (Amend format, which is very old) when you should be using an updater-script (Edify format), or the other way around; OR 2) Your updater-script is using the "MTD" partition type when mounting a partition rather than another type such as EMMC (and thus, you need the device defined under the kitchen's /tools/edify_defs folder).
do you have any clue for this buddy ? none of the 2 solutions above worked for me.
Thanks again, and sorry if it's not so related to your thread!
Kurotsuchi said:
I am lucky because I really needed help, this may not be so related but I made my Rom using Android Kitchen, but I get the Status 0 ERROR which is related to the '' updater-script '' as described in the original thread
Status 0 might be two things: 1) You used an update-script (Amend format, which is very old) when you should be using an updater-script (Edify format), or the other way around; OR 2) Your updater-script is using the "MTD" partition type when mounting a partition rather than another type such as EMMC (and thus, you need the device defined under the kitchen's /tools/edify_defs folder).
do you have any clue for this buddy ? none of the 2 solutions above worked for me.
Thanks again, and sorry if it's not so related to your thread!
Click to expand...
Click to collapse
Please post your updater script here and i will take a look at it
Inviato dal mio GT-I9070 con Tapatalk 2
Extremely HQ thread. Btw a typo in the 9th point. bynaries -> binaries.
KINGbabasula said:
Please post your updater script here and i will take a look at it
Inviato dal mio GT-I9070 con Tapatalk 2
Click to expand...
Click to collapse
Thanks for the answer buddy, here it's, ( this is for Galaxy note 8.0 ) my previous phones rom didn't have this problem because it was NOT using
MTD.
show_progress(0.1, 0);
format("MTD", "system");
mount("MTD", "system", "/system");
package_extract_dir("system", "/system");
symlink("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/vmstat");
symlink("toolbox", "/system/bin/rmdir");
symlink("toolbox", "/system/bin/lsof");
symlink("toolbox", "/system/bin/umount");
symlink("toolbox", "/system/bin/log");
symlink("toolbox", "/system/bin/setconsole");
symlink("toolbox", "/system/bin/ioctl");
symlink("toolbox", "/system/bin/touch");
symlink("toolbox", "/system/bin/playback");
symlink("toolbox", "/system/bin/id");
symlink("toolbox", "/system/bin/start");
symlink("toolbox", "/system/bin/getevent");
symlink("toolbox", "/system/bin/insmod");
symlink("toolbox", "/system/bin/top");
symlink("toolbox", "/system/bin/notify");
symlink("toolbox", "/system/bin/setprop");
symlink("toolbox", "/system/bin/ionice");
symlink("toolbox", "/system/bin/ln");
symlink("toolbox", "/system/bin/kill");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/watchprops");
symlink("toolbox", "/system/bin/mkdir");
symlink("toolbox", "/system/bin/touchinput");
symlink("toolbox", "/system/bin/rmmod");
symlink("toolbox", "/system/bin/renice");
symlink("toolbox", "/system/bin/date");
symlink("toolbox", "/system/bin/iftop");
symlink("toolbox", "/system/bin/stop");
symlink("toolbox", "/system/bin/schedtop");
symlink("toolbox", "/system/bin/uptime");
symlink("toolbox", "/system/bin/route");
symlink("toolbox", "/system/bin/cmp");
symlink("toolbox", "/system/bin/rm");
symlink("toolbox", "/system/bin/wipe");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/df");
symlink("toolbox", "/system/bin/nandread");
symlink("toolbox", "/system/bin/dd");
symlink("toolbox", "/system/bin/sendevent");
symlink("toolbox", "/system/bin/smd");
symlink("toolbox", "/system/bin/getprop");
symlink("toolbox", "/system/bin/ls");
symlink("toolbox", "/system/bin/ps");
symlink("toolbox", "/system/bin/printenv");
symlink("toolbox", "/system/bin/newfs_msdos");
symlink("toolbox", "/system/bin/mv");
symlink("toolbox", "/system/bin/hd");
symlink("toolbox", "/system/bin/md5");
symlink("toolbox", "/system/bin/lsmod");
symlink("toolbox", "/system/bin/dmesg");
symlink("toolbox", "/system/bin/sleep");
symlink("toolbox", "/system/bin/netstat");
symlink("toolbox", "/system/bin/reboot");
symlink("toolbox", "/system/bin/ifconfig");
symlink("toolbox", "/system/bin/sync");
symlink("toolbox", "/system/bin/mount");
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, 0644, "/system/vendor/etc");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
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);
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");
Click to expand...
Click to collapse
Thanx for the perfect tuto .
Kurotsuchi said:
Thanks for the answer buddy, here it's, ( this is for Galaxy note 8.0 ) my previous phones rom didn't have this problem because it was NOT using
MTD.
Click to expand...
Click to collapse
Problem is with
format("MTD", "system");
mount("MTD", "system", "/system");
Open your ramdisk contents extracted from your kernel. There you should see something like fstab or .fstab. Open those files with notepad++. you will see the path to your system or data..say for xperia s the mount point for the system is dev/block/mmcblk0p12 and format is ext4 so the command becomes format("ext4","EMMC","dev/block/mmcblk0p12") and mount("ext4","EMMC","dev/block/mmcblk0p12)respectively.
Similarly for assert(package_extract_file("boot.img", "/tmp/boot.img").This tells cwm to extract boot.img and load it in /tmp/boot.img which is wrong..again you need to find the mount point of your phone where you need to extract the boot.img...Again taking xperia s as an example. it is
package_extract_file("boot.img", "/dev/block/mmcblk0p3").
Hope that helps
Kurotsuchi said:
Thanks for the answer buddy, here it's, ( this is for Galaxy note 8.0 ) my previous phones rom didn't have this problem because it was NOT using
MTD.
Click to expand...
Click to collapse
Yes it's as Dark Wraith said
Inviato dal mio GT-I9070 con Tapatalk 2
Dark Wraith said:
Problem is with
format("MTD", "system");
mount("MTD", "system", "/system");
Open your ramdisk contents extracted from your kernel. There you should see something like fstab or .fstab. Open those files with notepad++. you will see the path to your system or data..say for xperia s the mount point for the system is dev/block/mmcblk0p12 and format is ext4 so the command becomes format("ext4","EMMC","dev/block/mmcblk0p12") and mount("ext4","EMMC","dev/block/mmcblk0p12)respectively.
Similarly for assert(package_extract_file("boot.img", "/tmp/boot.img").This tells cwm to extract boot.img and load it in /tmp/boot.img which is wrong..again you need to find the mount point of your phone where you need to extract the boot.img...Again taking xperia s as an example. it is
package_extract_file("boot.img", "/dev/block/mmcblk0p3").
Hope that helps
Click to expand...
Click to collapse
MANY THANKS BUDDY! really appreciate it,
I seem to remember reading somewhere that you can just replace the update-binary with a shell script in plain text and some recoveries will read it, but I can't seem to find the post. Anyone else know what I'm talking about?
If that's not possible and I've just gone crazy, is there a way to force a reboot into recovery in an Edify script? I'm wanting to fix my bootloader update packages so they automatically reboot back to recovery after install, otherwise the recovery doesn't know the new bootloader version and ROMs still fail on asserts that check it until after a reboot.
EDIT: I just tried using run_program("/sbin/busybox", "reboot", "recovery"); but busybox doesn't understand "reboot recovery" and simply reboots back to the currently installed ROM.
try this
run_program("/system/xbin/busybox", "reboot recovery");
or
run_program("/system/xbin/busybox", "reboot-recovery");
cant remember but its something like this
EDIT:
 @dstruct2k
run_program("/sbin/reboot", "recovery");
is the proper syntax
demkantor said:
try this
run_program("/system/xbin/busybox", "reboot recovery");
or
run_program("/system/xbin/busybox", "reboot-recovery");
cant remember but its something like this
EDIT:
 @dstruct2k
run_program("/sbin/reboot", "recovery");
is the proper syntax
Click to expand...
Click to collapse
"/sbin/reboot" does not exist in TWRP, is there another way you can think of? Busybox also does not have a reboot-recovery applet, only "reboot" (which starts Android)
quick google search
https://github.com/syhost/TWRP_CN/blob/master/twrp-functions.cpp
didnt realize twrp was so different than 4ext recovery and clockwork, as the run_program("/sbin/reboot", "recovery"); works in both of those as i have added them to some of my scripts... Ill look into some more of twrp's handling....
How to do this in micromax a57 can u plzz hlp me
thanks
good work thanks
Great guide :thumbup:
Sent from my C6603 using xda app-developers app

[rom][19th sep 2013][4.1.2] ★★★tsld★★★ [3.0][aroma][mods][mc3]

[rom][19th sep 2013][4.1.2] ★★★tsld★★★ [3.0][aroma][mods][mc3]
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
★ Modded touchwiz
★ Sound tweaks
★ Build.prop tweaks
★ Pure graphics engine
★ Pure performance
★ Mega bass beats
★ GoogyMax kernel
★ Smoother systemUI
★ Transparent statusbar
★ Deodexed
★ Zipaligned
★ Touchwiz landscape capability
★ Transparent multiwindow
★ Crt off
★ Sqlite3
★ AutoBrightness tweaks
★ Metal Lockscreen clock
★ Centre statusbar clock
★ Beach lockscreen
★ Wifi signal tweaks
★ Battery +
★ Wallpaper Scrolling
★ Init.d support
★ Busybox
★ 3 way power menu
★ Dsp manager
★ Xposed
★ Master key dual fix
★ Rooted
★ Es file explorer
★ No bloatware
★ Speed tweaks
★ Ui smoothe as butter
★ Aroma installer
★ Ad blocking
★ Added XperiaZ lockscreen
★ Added cyanogenmod launcher
★ XperiaZ wallpapers​
Click to expand...
Click to collapse
TO ADD TO NEXT VERSION​★ Transparent notification centre
★ Option to odex on installation
★ Add custom launcher layout
★ Add popup browser
★ OTA updater​
Click to expand...
Click to collapse
1. Download .zip package
2. Use philz touch recovery to do a full wipe
3. Flash .zip
4. 1st boot will take a while
5. Enjoy!
NOTE: This rom does not flash a new modem
Also does not touch the EFS but backs it up anyway.​
Click to expand...
Click to collapse
TungsTwenty -Master Key Dual Fix(Xposed Module)
Rovo89 -xposed
DeHuMaNiZeD -MegaBassBeatsV2
criscan -Crt Off
raubkatze -Guide to transparency and centre statusbar clock
Winterlove -Transparent S4 Multiwindow
googy_anas -Googy Kernel(Max Edition)
Jeeko -Pure Mods​BSDgeek_Jake -Adblocking Hosts
MatrixDJ96 -Odex Script
Arsaw -XperiaZ lockscreen guide
Amarullz -Aroma Installer
Click to expand...
Click to collapse
CHANGELOG
v3.0
- fixed menu error
- fixed menu bug
- added wallpapers
- added xperiaZ lockscreen
- adblocker
- ported CyanogenMod launcher
- added aroma installer
Click to expand...
Click to collapse
v2.2
- fixed wipe sdcard error
- fixed menu bug
- added sqlite3
- tweaked autobrightness
- themed lockscreen clock
- centre clock in statusbar
- changed default lockscreen
- tweaked wifi settings
- fixed fc weather widget
Click to expand...
Click to collapse
v1.0
- INITIAL ALPHA RELEASE
Click to expand...
Click to collapse
and 2
last one
Good one!!
t-shock said:
Good one!!
Click to expand...
Click to collapse
Glad you like it! Gonna post it to other sites soon!
Dont flash this rom. It formats sd-card.
yken said:
Dont flash this rom. It formats sd-card.
Click to expand...
Click to collapse
Holy crap! Thanks for the heads up.
Why does it do this ricky?
garyblake said:
Holy crap! Thanks for the heads up.
Why does it do this ricky?
Click to expand...
Click to collapse
Looking jnto it now, doesnt sound right...
ricky310711 said:
Looking jnto it now, doesnt sound right...
Click to expand...
Click to collapse
Could someone post the content of the updater-script?
ricky310711 said:
Could someone post the content of the updater-script?
Click to expand...
Click to collapse
My nandroid backups are gone.....
show_progress(0.1, 0);
unmount("/system");
ui_print("********************************");
ui_print("* TSLD ROM *");
ui_print("* By Ricky310711 *");
ui_print("* *");
ui_print("* Find me @xda-developers.com *");
ui_print("********************************");
package_extract_file("TSLD/backupefs.sh", "/tmp/backupefs.sh");
set_perm(0, 0, 0777, "/tmp/backupefs.sh");
run_program("/tmp/backupefs.sh");
ui_print("EFS partition backed up to /sdcard");
format("ext4", "EMMC", "/dev/block/mmcblk0p9", "0");
mount("ext4", "EMMC", "/dev/block/mmcblk0p9", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p12", "/data");
run_program("/sbin/mount", "/dev/block/mmcblk0p8", "/cache");
delete_recursive("/data");
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
symlink("dumpstate", "/system/bin/dumpcrash");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/cmp");
symlink("debuggerd", "/system/bin/csview");
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("mksh", "/system/bin/sh");
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/touch");
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("toolbox", "/system/bin/chcon");
symlink("toolbox", "/system/bin/setenforce");
symlink("toolbox", "/system/bin/grep");
symlink("toolbox", "/system/bin/runcon");
symlink("toolbox", "/system/bin/touchinput");
symlink("toolbox", "/system/bin/md5");
symlink("toolbox", "/system/bin/getsebool");
symlink("toolbox", "/system/bin/setsebool");
symlink("toolbox", "/system/bin/restorecon");
symlink("toolbox", "/system/bin/getenforce");
symlink("toolbox", "/system/bin/load_policy");
symlink("toolbox", "/system/bin/cp");
symlink("toolbox", "/system/bin/playback");
symlink("toolbox", "/system/bin/du");
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_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor/etc");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/lib");
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");
set_perm_recursive(0, 0, 0755, 0644, "/system/framework");
set_perm_recursive(0, 0, 0755, 0644, "/system/app");
set_perm_recursive(0, 2000, 0777, 0777, "/system/usr/idc");
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/usr/idc/mxt244_ts_input.idc");
set_perm(0, 0, 0777, "/system/etc/init.d/01-GPU_touchrender");
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);
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "/dev/block/mmcblk0p5"),
delete("/tmp/boot.img"));
show_progress(0.2, 10);
delete_recursive("/cache");
delete_recursive("/data/dalvik-cache");
unmount("/system");
unmount("/data");
unmount("/cache");
package_extract_dir("tmp", "/tmp");
set_perm_recursive(0, 0, 0755, 0755, "/tmp");
run_program("/sbin/busybox","chmod","-R","0755","/tmp");
run_program("/sbin/busybox","chown","-R","0.0","/tmp");
set_perm(0, 0, 0755, "/tmp/busybox");
run_program("/tmp/busybox","chmod","-R","0755","/tmp");
run_program("/tmp/busybox","chown","-R","0.0","/tmp");
run_program("/tmp/busybox","mount","/system");
run_program("/sbin/busybox","mount","/system");
run_program("/tmp/busybox","mount","-o","rw,remount","/system");
run_program("/sbin/busybox","mount","-o","rw,remount","/system");
run_program("/tmp/busybox","mount","/data");
run_program("/sbin/busybox","mount","/data");
run_program("/tmp/busybox","mount","-o","rw,remount","/data");
run_program("/sbin/busybox","mount","-o","rw,remount","/data");
run_program("/tmp/busybox","rm","-fr","/system/etc/CrossBreeder");
run_program("/tmp/busybox","mkdir","-p","/system/etc/CrossBreeder");
run_program("/tmp/busybox","cp","-f","/tmp/tune2fs","/system/etc/CrossBreeder");
#run_program("/tmp/busybox","cp","-f","/tmp/libiconv.so.2","/system/etc/CrossBreeder");
run_program("/tmp/busybox","cp","-f","/tmp/busybox","/system/etc/CrossBreeder");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/CrossBreeder");
run_program("/tmp/busybox","chown","-R","0.0","/system/etc/CrossBreeder");
run_program("/tmp/busybox","chmod","-R","0755","/system/etc/CrossBreeder");
run_program("/tmp/busybox", "echo", "Restore", "started.");
run_program("/tmp/restore_dnsmasq.sh");
run_program("/tmp/busybox","echo","After","Restore");
#run_program("/tmp/busybox","mv","-f","/system/etc/hosts","/system/etc/hosts.CBBAK");
package_extract_dir("/mod/system", "/system");
run_program("/tmp/busybox","cp","-f","/tmp/recovery.log","/data/recovery_cb.log");
#run_program("/tmp/busybox","cp","-f","/system/etc/CrossBreeder/dnsmasq","/system/bin/dnsmasq.bin");
delete("/system/bin/dnsmasq.bin");
run_program("/tmp/busybox", "ls", "-l", "/system/bin/dnsmasq");;
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/CrossBreeder");
run_program("/tmp/busybox","chown","-R","0.0","/system/etc/CrossBreeder");
run_program("/tmp/busybox","chmod","-R","0755","/system/etc/CrossBreeder");
#set_perm_recursive(0, 0, 0711, 0444, "/system/etc/CrossBreeder/root");
#run_program("/tmp/busybox","chown","-R","0.0","/system/etc/CrossBreeder/root");
#run_program("/tmp/busybox","chmod","-R","0444","/system/etc/CrossBreeder/root");
#run_program("/tmp/busybox","chmod","0711","/system/etc/CrossBreeder/root");
#run_program("/tmp/busybox","chmod","0711","/system/etc/CrossBreeder/root/errors");
run_program("/tmp/busybox","chown","-R","0.0","/system/etc/CrossBreeder/dnrd_root");
run_program("/tmp/busybox","chmod","-R","0644","/system/etc/CrossBreeder/dnrd_root");
run_program("/tmp/busybox","chmod","0755","/system/etc/CrossBreeder/dnrd_root");
#set_perm(0, 0, 0755, "/system/etc/init.d/zzCrossBreeder_initd");
set_perm(0, 2000, 0755, "/system/xbin/haveged");
delete("/system/xbin/CB_FileLock");
set_perm(0, 0, 0755, "/system/etc/CrossBreeder/busybox");
set_perm(0, 0, 0755, "/system/etc/CrossBreeder/dnrd.10053");
set_perm(0, 0, 0755, "/system/etc/CrossBreeder/zzCrossBreeder");
set_perm(0, 0, 0755, "/system/etc/CrossBreeder/zzCHECK_NET_DNS");
set_perm(0, 0, 0755, "/system/bin/dnsmasq");
set_perm(0, 0, 0755, "/system/bin/dnsmasq_dhcp");
#set_perm(0, 0, 0644, "/system/etc/CrossBreeder/dnsmasq-host");
set_perm(0, 0, 0644, "/system/etc/resolv.conf");
set_perm(0, 0, 0644, "/system/etc/hosts");
set_perm(0, 0, 0644, "/system/etc/CrossBreeder/hosts");
delete("/system/etc/init.d/00CrossBreeder");
delete("/system/etc/init.d/zzCrossBreeder");
delete("/system/etc/init.d/zzCrossBreeder_initd");
#delete("/system/etc/CrossBreeder/dnsmasq");
set_perm(0, 0, 0755, "/system/etc/install-recovery.sh");
run_program("/tmp/busybox","mv","-f","/system/etc/install-recovery.sh.CBBAK","/system/etc/install-recovery.sh");
run_program("/tmp/install_init_entries.sh");
#run_program("/tmp/install_hw_entries.sh");
#run_program("/sbin/busybox","mv","-f","/system/etc/hw_config.sh.CBBAK","/system/etc/hw_config.sh");
run_program("/tmp/busybox","mv","-f","/system/bin/debuggerd.CBBAK","/system/bin/debuggerd");
set_perm(0, 2000, 0755, "/system/bin/debuggerd");
run_program("/tmp/install_debuggerd.sh");
run_program("/tmp/busybox","mv","/system/xbin/rngd","/system/xbin/rngd.bak");
run_program("/tmp/busybox","rm","-fr","/data/rngd.pid");
run_program("/tmp/busybox","mkdir","/data/rngd.pid/");
run_program("/tmp/busybox","chown","0:0","/data/rngd.pid");
run_program("/tmp/busybox","chmod","-R","500","/data/rngd.pid");
set_perm_recursive(0, 0, 0500, 0500, " /data/rngd.pid/ ");
run_program("/tmp/busybox","mv","/system/xbin/qrngd","/system/xbin/qrngd.bak");
run_program("/tmp/busybox","mv","/system/bin/qrngd","/system/bin/qrngd.bak");
run_program("/tmp/REMOVE_TETHER_BOOST");
run_program("/tmp/busybox","mv","-f","/system/etc/dnsmasq.conf.CBBAK","/system/etc/dnsmasq.conf");
run_program("/tmp/busybox","sync");
#run_program("/tmp/busybox","umount","/system");
run_program("/tmp/busybox","cp","-f","/tmp/recovery.log","/data/recovery_cb.log");
run_program("/tmp/busybox","sync");
#run_program("/tmp/busybox","umount","/cache");
run_program("/tmp/busybox","umount","/sd-ext");
delete("/system/etc/init.d/S70darky_zipalign");
delete("/system/etc/init.d/ram_optimize");
delete("/system/etc/init.d/net_buffer");
delete("/system/etc/init.d/S98system_tweak");
delete("/system/etc/init.d/sqlite_optimize");
delete("/system/etc/init.d/ext4_lagfix");
delete("/system/etc/resolv.conf");
delete("/system/default.prop");
delete_recursive("/data/adrenaline");
delete("/data/local.prop");
package_extract_dir("mod/system", "/system");
package_extract_dir("mod/data", "/data");
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/default.prop");
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, "/system/etc/init.d/net_buffer");
set_perm(0, 0, 0777, "/data/local.prop");
set_perm(0, 0, 0777, "/system/usr/idc/mxt244_ts_input.idc");
run_program("/tmp/busybox", "umount", "/data");
run_program("/tmp/busybox", "umount", "/system");
I was willing to download this rom. does it really format sd card?
creepin said:
I was willing to download this rom. does it really format sd card?
Click to expand...
Click to collapse
I don't think it formats the sdcard (the external..)
-
bender_007 said:
I don't think it formats the sdcard (the external..)
-
Click to expand...
Click to collapse
Nothing in the updater script that does, but I'd rather rest first! Will report results soon!
ricky310711 said:
Nothing in the updater script that does, but I'd rather rest first! Will report results soon!
Click to expand...
Click to collapse
third or fourth build will be based on ME7
UPDATED v2.2
Updated 3.0
ricky310711 said:
Updated 3.0
Click to expand...
Click to collapse
I'll try this today
Sent from my GT-I9300 using Tapatalk 4
naathaanb96 said:
I'll try this today
Sent from my GT-I9300 using Tapatalk 4
Click to expand...
Click to collapse
ricky310711 said:
Click to expand...
Click to collapse
i had one issue where the vibration motor stayed on and the phone lagged heaps but a reboot fixed and havent been able to reproduce it since. i will keep it going for the next few days

[Q] Where to extract boot.img [STOCK]

Hi,
I want to make my custom ROM based on stock. I use dsixda Kitchen and I have a problem with the "package_extract_file("boot.img", "??");"**
But I don't know where to extract it...
Thanks a lot
nathan30 said:
Hi,
I want to make my custom ROM based on stock. I use dsixda Kitchen and I have a problem with the "package_extract_file("boot.img", "??");"**
But I don't know where to extract it...
Thanks a lot
Click to expand...
Click to collapse
In a very simple Rom the layout is
META-INF
system
boot.img
The META-INF/com/google/android contains the updater-script
This is a sample of what it contains
assert(getprop("ro.product.device") == "m7att" || getprop("ro.build.product") == "m7att");
package_extract_dir("install", "/tmp/install");
set_perm_recursive(0, 0, 0755, 0644, "/tmp/install");
set_perm_recursive(0, 0, 0755, 0755, "/tmp/install/bin");
show_progress(0.500000, 0);
ui_print("Installing AT&T HTC One 4.3 sense build - 3.10.502.2");
ui_print(" ");
ui_print("Provided by xxxxx");
ui_print("Zipped by xxxxxx");
ui_print("Insert huge donation links here");
format("ext4", "EMMC", "/dev/block/mmcblk0p35", "0", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p35", "/system");
package_extract_dir("system", "/system");
symlink("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/cat", "/system/bin/chcon", "/system/bin/chmod",
"/system/bin/chown", "/system/bin/clear", "/system/bin/cmp", "/system/bin/cp",
"/system/bin/date", "/system/bin/dd", "/system/bin/df", "/system/bin/dmesg",
"/system/bin/du", "/system/bin/getenforce", "/system/bin/getevent", "/system/bin/getprop",
"/system/bin/grep", "/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/ln", "/system/bin/load_policy", "/system/bin/log", "/system/bin/ls", "/system/bin/lsmod",
"/system/bin/lsof", "/system/bin/md5", "/system/bin/mkdir", "/system/bin/mount",
"/system/bin/mv", "/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/restoreicon",
"/system/bin/rm", "/system/bin/rmdir", "/system/bin/rmmod", "/system/bin/route",
"/system/bin/runcon", "/system/bin/schedtop", "/system/bin/sendevent",
"/system/bin/setconsole", "/system/bin/setenforce", "/system/bin/setprop",
"/system/bin/sleep", "/system/bin/smd",
"/system/bin/start", "/system/bin/stop", "/system/bin/sync", "/system/bin/top",
"/system/bin/touch", "/system/bin/umount", "/system/bin/uptime", "/system/bin/vmstat",
"/system/bin/watchprops", "/system/bin/wipe");
symlink("/system/lib/libGLESv2.so","/system/lib/libGLESv3.so");
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(0, 1000, 0750, "/system/bin/iptables");
set_perm(0, 1000, 0750, "/system/bin/tc");
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_pair_devlist.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm(1000, 3003, 0640, "/system/etc/gps.conf");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
show_progress(0.200000, 0);
show_progress(0.200000, 10);
package_extract_file("boot.img", "/dev/block/mmcblk0p33");
show_progress(0.100000, 0);
unmount("/system");
ui_print("Done!");
Click to expand...
Click to collapse
that should help
clsA said:
In a very simple Rom the layout is
META-INF
system
boot.img
The META-INF/com/google/android contains the updater-script
This is a sample of what it contains
that should help
Click to expand...
Click to collapse
Yes thanks you

{dev}{wip}stock rom flash zip

howdy all, to noob to post in development. anyhow, lookin to get it on the map. it flashes and boots but major bugs. wifi, probably data, and usb are broken. i grabbed/modified an updater-script from the s2 and ran it through the kitchen. im sure its a few added permissions to fixing it. i will host if anyones interested, basically looking for suggestions and hoping someone more skilled in the dept. can help.
show_progress(0.500000, 0);
ui_print("Formatting system...");
unmount("/system");
format("ext4", "EMMC", "/dev/block/mmcblk0p22", "0");
ui_print("Installing system files...");
mount("ext4", "EMMC", "/dev/block/mmcblk0p22", "/system");
package_extract_dir("system", "/system");
ui_print("Creating system links...");
symlink("/system/bin/mksh", "/system/bin/sh");
symlink("/system/bin/toolbox", "/system/bin/cat", "/system/bin/chmod",
"/system/bin/chown", "/system/bin/cmp", "/system/bin/date",
"/system/bin/dd", "/system/bin/df", "/system/bin/dmesg",
"/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/ln", "/system/bin/log",
"/system/bin/ls", "/system/bin/lsmod", "/system/bin/lsof",
"/system/bin/md5", "/system/bin/mkdir", "/system/bin/mount",
"/system/bin/mv", "/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/playback",
"/system/bin/printenv", "/system/bin/ps", "/system/bin/reboot",
"/system/bin/renice", "/system/bin/rm", "/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/touch", "/system/bin/touchinput",
"/system/bin/umount", "/system/bin/uptime", "/system/bin/vmstat",
"/system/bin/watchprops",
"/system/bin/wipe");
symlink("/system/csc/TGY/csc_contents", "/system/csc_contents");
symlink("/system/fonts/Roboto-Bold.ttf", "/system/fonts/DroidSans-Bold.ttf");
symlink("/system/fonts/Roboto-Regular.ttf", "/system/fonts/DroidSans.ttf");
ui_print("Set permission...");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm_recursive(0, 0, 0711, 0644, "/system/bin/.ext");
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(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.7/left_eye-y0-yi45-p0-pi45-r0-ri20.lg_32/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.7/nose_base-y0-yi45-p0-pi45-r0-ri20.lg_32/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/multi_pose_face_landmark_detectors.7/right_eye-y0-yi45-p0-pi45-r0-ri20.lg_32-2/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/yaw_roll_face_detectors.6/head-y0-yi45-p0-pi45-r0-ri30.4a-v24/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/yaw_roll_face_detectors.6/head-y0-yi45-p0-pi45-rn30-ri30.5-v24/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/detection/yaw_roll_face_detectors.6/head-y0-yi45-p0-pi45-rp30-ri30.5-v24/full_model.bin");
set_perm(0, 0, 0644, "/system/vendor/pittpatt/models/recognition/face.face.y0-y0-22-b-N/full_model.bin");
set_perm_recursive(0, 2000, 0755, 06755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/busybox");
set_perm(0, 2000, 0755, "/system/xbin/dexdump");
set_perm(0, 0, 0755, "/system/xbin/battery_params");
set_perm(0, 0, 06755, "/system/xbin/su");
ui_print("Update Boot image...");
show_progress(0.200000, 0);
show_progress(0.200000, 10);
package_extract_file("boot.img", "/dev/block/mmcblk0p20");
show_progress(0.100000, 0);
unmount("/system");
for the exhibit sgh t599n^
Yes sir this is for the exhibit as there is this same thread in our sub device forum on android fourms
exgenmeikoj said:
Yes sir this is for the exhibit as there is this same thread in our sub device forum on android fourms
Click to expand...
Click to collapse
the more the merrier

Categories

Resources