[General Omni Discussion] AlaskaLinuxUser:
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

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

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

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.

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:

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!