Is there a Fire TV Stick Lite (sheldon) updater-script rw? - Fire TV Q&A, Help & Troubleshooting

Quick question relating to the rom aspect of things. Does anyone have an updater-script with rw access i.e. with the (mantis) roms? I'm compiling an OTA patched rom with no success. Constant ever ending boot loops unless I were to modify the updater-script. Here's the code down below for the (mantis) if someone would like to convert to (sheldon) for modified roms
Code:
(getprop("ro.product.device") == "mantis" || getprop("ro.build.product") == "mantis") || abort("This package is for \"mantis\" devices
this is a \"" + getprop("ro.product.device") + "\".");
ifelse(is_mounted("/system"), unmount("/system"));
package_extract_dir("install", "/tmp");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
mount("ext4", "EMMC", "/dev/block/platform/soc/11230000.mmc/by-name/system", "/system", "");
run_program("/tmp/backuptool.sh", "backup");
unmount("/system");
ui_print("Copying system image...");
block_image_update("/dev/block/platform/soc/11230000.mmc/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
ui_print("Copying vendor image...");
block_image_update("/dev/block/platform/soc/11230000.mmc/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat", "vendor.patch.dat");
mount("ext4", "EMMC", "/dev/block/platform/soc/11230000.mmc/by-name/system", "/system", "");
delete("/system/bin/efuse_check.sh",
"/system/bin/ewriter");
unmount("/system");
ui_print("Updating TZ...");
package_extract_file("images/tz.img", "/dev/block/platform/soc/11230000.mmc/by-name/tee1_real");
package_extract_file("images/tz.img", "/dev/block/platform/soc/11230000.mmc/by-name/tee2_real");
ui_print("Copying kernel...");
package_extract_file("boot.img", "/dev/block/platform/soc/11230000.mmc/by-name/boot");
package_extract_dir("magisk", "/dev/tmp/install");
set_metadata("/dev/tmp/install/install-magisk.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/dev/tmp/install/install-magisk.sh");
mount("ext4", "EMMC", "/dev/block/platform/soc/11230000.mmc/by-name/system", "/system", "");
run_program("/sbin/mkdir", "/system/addon.d");
run_program("/tmp/backuptool.sh", "restore");
unmount("/system");

Skel40 said:
Quick question relating to the rom aspect of things. Does anyone have an updater-script with rw access i.e. with the (mantis) roms? I'm compiling an OTA patched rom with no success. Constant ever ending boot loops unless I were to modify the updater-script. Here's the code down below for the (mantis) if someone would like to convert to (sheldon) for modified roms
Code:
(getprop("ro.product.device") == "mantis" || getprop("ro.build.product") == "mantis") || abort("This package is for \"mantis\" devices
this is a \"" + getprop("ro.product.device") + "\".");
ifelse(is_mounted("/system"), unmount("/system"));
package_extract_dir("install", "/tmp");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
mount("ext4", "EMMC", "/dev/block/platform/soc/11230000.mmc/by-name/system", "/system", "");
run_program("/tmp/backuptool.sh", "backup");
unmount("/system");
ui_print("Copying system image...");
block_image_update("/dev/block/platform/soc/11230000.mmc/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
ui_print("Copying vendor image...");
block_image_update("/dev/block/platform/soc/11230000.mmc/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat", "vendor.patch.dat");
mount("ext4", "EMMC", "/dev/block/platform/soc/11230000.mmc/by-name/system", "/system", "");
delete("/system/bin/efuse_check.sh",
"/system/bin/ewriter");
unmount("/system");
ui_print("Updating TZ...");
package_extract_file("images/tz.img", "/dev/block/platform/soc/11230000.mmc/by-name/tee1_real");
package_extract_file("images/tz.img", "/dev/block/platform/soc/11230000.mmc/by-name/tee2_real");
ui_print("Copying kernel...");
package_extract_file("boot.img", "/dev/block/platform/soc/11230000.mmc/by-name/boot");
package_extract_dir("magisk", "/dev/tmp/install");
set_metadata("/dev/tmp/install/install-magisk.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/dev/tmp/install/install-magisk.sh");
mount("ext4", "EMMC", "/dev/block/platform/soc/11230000.mmc/by-name/system", "/system", "");
run_program("/sbin/mkdir", "/system/addon.d");
run_program("/tmp/backuptool.sh", "restore");
unmount("/system");
Click to expand...
Click to collapse
What have you modified on the ROM?

SweenWolf said:
What have you modified on the ROM?
Click to expand...
Click to collapse
The OTA patches like the (mantis) to bypass updating

Skel40 said:
The OTA patches like the (mantis) to bypass updating
Click to expand...
Click to collapse
This update script should also work for sheldon, what files are you transplanting, maybe they are incompatible. Check Logs. I think you should never use official updator-script anyways.

can you test these patches on PS7273 (2622), for Sheldon/p
make sure you delete original odex and vdex files of these after replacing.
and also wipe cache / Dalvik cache just to be on safe side.
Changes:
Accessibility Services for 3rd party apps re-enabled.
Package protection is disabled.

Related

Creating an update zip

Hi am trying to create an update sip for my theme but everytime i try to flash it says syntax error in update script. This is my code can anyone help me.
show_progress(0.500000, 0);
mount("MTD", "data", "/data");
package_extract_dir("data", "/data");
unmount("/data");
mount("MTD", "system", "/system");
package_extract_dir("system", "/system");
set_perm(0, 0, 0755, 0644, "/system/framework/framework-res.apk");
set_perm(0, 0, 0755, 0644, "/system/app/Launcher2.apk");
show_progress(0.100000, 0);
unmount("/system");

[Q] Help, trying to modify a updater script

So I am keep on getting Installation Aborted because Im doing something wrong in the updater script
I am trying to add in data/app into a rom.
I already have data/app in the rom zip already with apps in it.
I want all the apps to be installed during the flash of this rom.
this is the code im adding in the middle of nowhere in the updater-script.
Code:
package_extract_dir("data", "/data");
can anyone help me out ?
here is a download link to the updater script im trying to modify.
http://www.mediafire.com/?g8lk25dli08z919
ORIGINAL FULL SCRIPT
Code:
ui_print("Checking Model ID ...");
assert(getprop("ro.product.device") == "ace" || getprop("ro.build.product") == "ace" || getprop("ro.product.board") == "ace");
ui_print("...PASSED");
ui_print(" ");
ui_print("Flashing SCI-MIUI 2.2.10v1.0 ...");
ui_print(" ");
ui_print("formate /system ...");
format("ext4", "EMMC", "/dev/block/mmcblk0p25");
mount("ext4", "EMMC", "/dev/block/mmcblk0p25", "/system");
ui_print("extracting /system ...");
package_extract_dir("system", "/system");
assert(run_program("/sbin/grep","androidboot.mid=PD9812000","/proc/cmdline") == "0"
&& ui_print("Inspire 4G detected...")
&& delete_recursive("/system/etc/soundimage")
&& package_extract_dir("inspire", "/system")
|| ui_print(" "));
ui_print(" ");
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/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/tty", "/system/xbin/ttysize",
"/system/xbin/tune2fs", "/system/xbin/umount", "/system/xbin/uname",
"/system/xbin/uncompress", "/system/xbin/unexpand", "/system/xbin/uniq",
"/system/xbin/unix2dos", "/system/xbin/unlzma", "/system/xbin/unlzop",
"/system/xbin/unxz", "/system/xbin/unzip", "/system/xbin/uptime",
"/system/xbin/usleep", "/system/xbin/uudecode", "/system/xbin/uuencode",
"/system/xbin/vi", "/system/xbin/watch", "/system/xbin/wc",
"/system/xbin/wget", "/system/xbin/which", "/system/xbin/whoami",
"/system/xbin/xargs", "/system/xbin/xz", "/system/xbin/xzcat",
"/system/xbin/yes",
"/system/xbin/zcat");
symlink("toolbox", "/system/bin/cat", "/system/bin/cmp",
"/system/bin/date", "/system/bin/dd", "/system/bin/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/log", "/system/bin/lsmod",
"/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/printenv",
"/system/bin/ps", "/system/bin/reboot", "/system/bin/renice",
"/system/bin/rmdir", "/system/bin/rmmod", "/system/bin/route",
"/system/bin/schedtop", "/system/bin/sendevent",
"/system/bin/setconsole", "/system/bin/setprop", "/system/bin/sleep",
"/system/bin/smd", "/system/bin/start", "/system/bin/stop",
"/system/bin/sync", "/system/bin/top", "/system/bin/uptime",
"/system/bin/vmstat", "/system/bin/watchprops",
"/system/bin/wipe");
symlink("/system/bin/bash", "/system/bin/sh");
symlink("/system/bin/bash", "/system/xbin/sh");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm(0, 3003, 02750, "/system/bin/netcfg");
set_perm(0, 3004, 02755, "/system/bin/ping");
set_perm(0, 2000, 06750, "/system/bin/run-as");
set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");
set_perm(0, 0, 0755, "/system/etc/bluetooth");
set_perm(1000, 1000, 0640, "/system/etc/bluetooth/auto_pairing.conf");
set_perm(3002, 3002, 0444, "/system/etc/bluetooth/blacklist.conf");
set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm_recursive(0, 2000, 0755, 0750, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/init.d");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm(0, 0, 04755, "/system/bin/sysrw");
set_perm(0, 0, 04755, "/system/bin/sysro");
set_perm(0, 0, 04755, "/system/bin/nano");
set_perm(0, 0, 04755, "/system/bin/bash");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/apply_firewall");
set_perm(0, 0, 06755, "/system/xbin/apply_theme");
set_perm(0, 0, 06755, "/system/xbin/dumplog");
set_perm(0, 0, 06755, "/system/xbin/hcitool");
set_perm(0, 0, 06755, "/system/xbin/librank");
set_perm(0, 0, 06755, "/system/xbin/mv2sd");
set_perm(0, 0, 06755, "/system/xbin/ota");
set_perm(0, 0, 06755, "/system/xbin/procmem");
set_perm(0, 0, 06755, "/system/xbin/procrank");
set_perm(0, 0, 06755, "/system/xbin/su");
ui_print("flashing boot.img ...");
package_extract_file("boot.img", "/dev/block/mmcblk0p22");
package_extract_file("boot.img", "/tmp/boot.img");
ui_print("extracting LorDMod kernel...");
package_extract_dir("kernel", "/tmp");
ui_print("installing kernel...");
set_perm(0, 0, 0777, "/tmp/dd");
set_perm(0, 0, 0777, "/tmp/mkbootimg.sh");
set_perm(0, 0, 0777, "/tmp/mkbootimg");
set_perm(0, 0, 0777, "/tmp/unpackbootimg");
ui_print("repack kernel files...");
run_program("/tmp/unpackbootimg", "/tmp/boot.img", "/tmp/");
run_program("/tmp/mkbootimg.sh");
assert(write_raw_image("/tmp/newboot.img", "/dev/block/mmcblk0p22"),
delete("/tmp/boot.img"));
ui_print("wiping /cache ...");
unmount("/cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p27");
ui_print("wiping dalvik-cache ...");
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
ui_print("FINISHED!");
ui_print("");
ui_print("SCI MIUI successfully installed.");
unmount("/system");
unmount("/data");
ui_print(" ______________________________________________");
ui_print("");
ui_print(" SSSSS CCCCC IIIIIIII");
ui_print(" SSS SSS CCC CC II");
ui_print(" SSS SS CC II");
ui_print(" SSSS CC II");
ui_print(" SSSS CC II");
ui_print(" SS SSS CC II");
ui_print(" SSS SSS CCC CC II");
ui_print(" SSSSS CCCC IIIIIIII");
ui_print("");
ui_print(" ___________________by a user__________________");
ui_print("");
My phone is an Inspire 4G aka Desire HD
Where are you inserting it? You need to mount /data before you can extract files to it; if you look at the script there's a line mounting /system immediately before the package_extract_dir command; you'll need to do a similar thing for the /data partition (you can either copy the mount/unmount pair of commands used for /data further down the script where the dalvik-cache is cleared, or just move that mount command from there to an earlier point in the script instead).
hopscotchjunkie said:
Where are you inserting it? You need to mount /data before you can extract files to it; if you look at the script there's a line mounting /system immediately before the package_extract_dir command; you'll need to do a similar thing for the /data partition (you can either copy the mount/unmount pair of commands used for /data further down the script where the dalvik-cache is cleared, or just move that mount command from there to an earlier point in the script instead).
Click to expand...
Click to collapse
so would this be the code to insert?
Code:
mount("/data")
package_extract_dir("data", "/data");
before
Code:
ui_print("wiping /cache ...");
unmount("/cache");
You need to use the same format as the mount command that's already there (have a look at the command to clear dalvik-cache near the end of the existing script to see what I mean). So, if you just wanted a stand-alone bit to be plugged in anywhere, you would use:
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
package_extract_dir("data", "/data");
unmount("/data");
That would work with where you're proposing to put it so it'll mount /data, extract your packages, then unmount it (then a little further on mount it again, clear dalvik-cache, and unmount again).
Edit Or, to keep it tidier, just include your package extract command in the section where /data is already being mounted anyway; so change this existing section:
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
to:
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
package_extract_dir("data", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
hopscotchjunkie said:
You need to use the same format as the mount command that's already there (have a look at the command to clear dalvik-cache near the end of the existing script to see what I mean). So, if you just wanted a stand-alone bit to be plugged in anywhere, you would use:
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
package_extract_dir("data", "/data");
unmount("/data");
That would work with where you're proposing to put it so it'll mount /data, extract your packages, then unmount it (then a little further on mount it again, clear dalvik-cache, and unmount again).
Edit Or, to keep it tidier, just include your package extract command in the section where /data is already being mounted anyway; so change this existing section:
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
to:
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
package_extract_dir("data", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
Click to expand...
Click to collapse
Ill try that and give you a feed back Thank you for the only one trying to help me out. I really appreciate it.
PS. To moderators, sorry for posting something like this in a phone section of the forum. I posted this in Android q&a but no one was willing to help me.
Sent from my Inspire 4G using XDA App
P00t said:
PS. To moderators, sorry for posting something like this in a phone section of the forum. I posted this in Android q&a but no one was willing to help me.
Click to expand...
Click to collapse
Don't worry about it, it's much friendlier in this neck of the woods anyway.
I just came home and tried what you told me to do, but it was still a failure.
- in the root of the ROM.ZIP, I have data/app folders made with apps(about 30apps in it) in the app folder.
- I used this code u provided me
mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data");
package_extract_dir("data", "/data");
delete_recursive("/data/dalvik-cache");
unmount("/data");
Click to expand...
Click to collapse
-The installion error says..
E: Error in /sdcard/ROM.ZIP
(status 6)
Installation aborted.
Click to expand...
Click to collapse
EDIT: So, I just tested trying to see if the installation abort would still occur if I still used the original script. Yes, installation still aborted. Idk whats wrong. I just added about 30apps in a MIUI Rom.Zip some apps and its causing it to abort.
Hmm... What are you using to edit the script? If you're on Windows I recommend using Notepad++ (because Windows uses a different end-of-line character to Unix, so if you use Notepad or similar it causes problems). If you're already on Mac/*nix you can disregard that.
Also, how are you adding your extra folders to the zip file? That might potentially have something to do with it (e.g. if you're extracting then re-zipping you'd probably need to sign the zip to be able to flash it). I've always used 7zip on Windows to add/remove/edit things in a zip before flashing and it's always worked fine.
//sent from my Desire HD using Tapatalk; all errors entirely intentional.
hopscotchjunkie said:
Hmm... What are you using to edit the script? If you're on Windows I recommend using Notepad++ (because Windows uses a different end-of-line character to Unix, so if you use Notepad or similar it causes problems). If you're already on Mac/*nix you can disregard that.
Also, how are you adding your extra folders to the zip file? That might potentially have something to do with it (e.g. if you're extracting then re-zipping you'd probably need to sign the zip to be able to flash it). I've always used 7zip on Windows to add/remove/edit things in a zip before flashing and it's always worked fine.
//sent from my Desire HD using Tapatalk; all errors entirely intentional.
Click to expand...
Click to collapse
I use notepad+ to edit the script, running on windows 7 64bit.
I just extract all the apks from my phone then just manually add apks to the rom zip. I'll try it out using 7zip.
EDIT: now the problem is...i added all the apks and used the original updater-script, and it worked fine! but when I added in the pacakage extract command in the updater script, installation aborts again. i think its something in the script that wont allow it?
Sent from my HTC Inspire 4G using XDA App
what does the log say? what's the error? the installation can abort for many reasons, if you can be more specific about you problem maybe a solution can be found.

[Q] Lock to CyanogenMod logo with Dual-Boot Support Kernel(Base Leankerne) on Gnex

Hello,
Sorry for my poor english, I try as much as possible.
I followed this tutorial on my Galaxy Nexus with the official ROM JB 4.2.2 and ubuntuTouch Saucy in 2nd ROM.
http://forum.xda-developers.com/showthread.php?t=2183721
I use the kernel lk_gnex_Hyuni_Dual_jb42_v.zip provided.
But when I boot ROM on the 2nd, I am running CyanogenMod logo loop (bootloop).
I have no CM ROM installed on my phone.
I download :
- saucy-preinstalled-touch-armel+maguro.zip
- saucy-preinstalled-touch-armhf.zip
- Kernel : http://www.4shared.com/zip/dE6mqokX/lk_gnex_Hyuni_Dual_jb42_v.html?
I fix install script :
- In "saucy-preinstalled-touch-armel+maguro.zip" i modified "/META-INF/com/google/android/updater-script" by
Code:
assert(getprop("ro.product.device") == "maguro" || getprop("ro.build.product") == "maguro");
mount("ext4", "EMMC", "/dev/block/platform/omap/omap_hsmmc.0/by-name/system", "/system");
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_perm(0, 0, 0777, "/tmp/backuptool.sh");
set_perm(0, 0, 0644, "/tmp/backuptool.functions");
run_program("/tmp/backuptool.sh", "backup");
unmount("/system");
show_progress(0.500000, 0);
[STRIKE]format("ext4", "EMMC", "/dev/block/platform/omap/omap_hsmmc.0/by-name/system", "0", "/system");[/STRIKE]
mount("ext4", "EMMC", "/dev/block/platform/omap/omap_hsmmc.0/by-name/[B]cache[/B]", "/system");
package_extract_dir("system", "/system");
symlink("/factory/hdcp.keys", "/system/vendor/firmware/hdcp.keys"); ...
...
show_progress(0.200000, 10);
package_extract_file("boot.img", "/dev/block/platform/omap/omap_hsmmc.0/by-name/boot");
show_progress(0.100000, 0);
ui_print("Fixing fs_size in crypto footer...");
assert(samsung.fs_size_fix());
unmount("/system");
- In "saucy-preinstalled-touch-armhf.zip" i modified "/META-INF/com/google/android/updater-script" by
Code:
ui_print("");
ui_print("Welcome to the Ubuntu RootFS Updater");
ui_print("");
show_progress(1.000000, 60);
ui_print("Mounting system and userdata partitions...");
[B]mount("ext4", "EMMC", "/dev/block/platform/omap/omap_hsmmc.0/by-name/cache", "/system");[/B]
[B]mount("ext4", "EMMC", "/dev/block/mmcblk0p12","/data");[/B]
set_progress(0.100000); ...
...
- Push files to my phone.
- Reboot in recovery with TWRP.
- Wipe cache.
- Install in the order saucy-preinstalled-touch-armel+maguro.zip & saucy-preinstalled-touch-armhf.zip.
- Install this kernel
- I reboot; 1st ROM ok; But the 2nd I have a sceen locked to CyanogenMod logo (instead of ubuntu).
Have you a answer? Thx
About the dual booting issue: post in that dev thread, better chances to get help IMO, since it's a specific issue; and you're seeing cyanogenmod boot anim because Ubuntu touch is based of it
a maguro wrote this.
bk201doesntexist said:
About the dual booting issue: post in that dev thread, better chances to get help IMO, since it's a specific issue; and you're seeing cyanogenmod boot anim because Ubuntu touch is based of it
a maguro wrote this.
Click to expand...
Click to collapse
Ok thank you.
I can't post to dev forum, because of newbie status of my account.
jelebi said:
Ok thank you.
I can't post to dev forum, because of newbie status of my account.
Click to expand...
Click to collapse
Engage in conversation with other xda members, ask pertinent questions in the right places, learn and help others learn or redirect them to the available resources, stickied on this forum.
a manta wrote this.

[GUIDE][BEGINNER] How to flash D802 roms in D805/D806 variants

I'd like to contribute for G2 beginner users from Latam., which mostly have D802 regional variants (like Brazil D805 or Argentina D806), and many of those have been asking me how to flash D802 roms.
Specially with the recent burst of Lollipop roms made available.
To clarify:
D805/6 is essentially the same hardware as D802 (same SoC (cpu), board, etc.), with some slight packaging and peripheral/radio variations.
Most software should work interchangeably, with exception of modem/baseband firmware.
However many ROMS fail to flash on those phones, because the dev. sometimes put validation code in the setup script, to ensure you're flashing the right version.
That script checks the phone model, and rejects D805/6.
To make your D802 rom flashable in your D805/6, unzip the following file in the rom zip:
Code:
\META-INF\com\google\android\updater-script
Edit it in a text editor, and look for a line in the beginning like:
Code:
assert(getprop("ro.product.device") == "d802" || getprop("ro.build.product") == "d802" || getprop("ro.product.device") == "g2" || [. . . . . . ]
REMOVE that single line, save the file, and finally replace it in the same location of the zip, and you are ready to flash.
PLEASE MAKE FULLY SURE YOU ARE FLASHING A D802 ROM, AND THAT IT DOESN'T INCLUDE A MODEM
rodrigofd said:
I'd like to contribute for G2 beginner users from Latam., which mostly have D802 regional variants (like Brazil D805 or Argentina D806), and many of those have been asking me how to flash D802 roms.
Specially with the recent burst of Lollipop roms made available.
To clarify:
D805/6 is essentially the same hardware as D802 (same SoC (cpu), board, etc.), with some slight packaging and peripheral/radio variations.
Most software should work interchangeably, with exception of modem/baseband firmware.
However many ROMS fail to flash on those phones, because the dev. sometimes put validation code in the setup script, to ensure you're flashing the right version.
That script checks the phone model, and rejects D805/6.
To make your D802 rom flashable in your D805/6, unzip the following file in the rom zip:
Code:
\META-INF\com\google\android\updater-script
Edit it in a text editor, and look for a line in the beginning like:
Code:
assert(getprop("ro.product.device") == "d802" || getprop("ro.build.product") == "d802" || getprop("ro.product.device") == "g2" || [. . . . . . ]
REMOVE that single line, save the file, and finally replace it in the same location of the zip, and you are ready to flash.
PLEASE MAKE FULLY SURE YOU ARE FLASHING A D802 ROM, AND THAT IT DOESN'T INCLUDE A MODEM
Click to expand...
Click to collapse
does this process support other models too?? like f320l? if not kindly tell pls how to thanks
tengo que borrar esto: assert(getprop("ro.product.device") == "d802" || getprop("ro.build.product") == "d802" || getprop("ro.product.device") == "g2" || ?? lo que sigue [. . . .] no me figura nada....a que te referis con eso?
aromano91 said:
tengo que borrar esto: assert(getprop("ro.product.device") == "d802" || getprop("ro.build.product") == "d802" || getprop("ro.product.device") == "g2" || ?? lo que sigue [. . . .] no me figura nada....a que te referis con eso?
Click to expand...
Click to collapse
Please write in english or we will be banned by the forum..
I mean that the exact line might vary from rom to rom, but the goal is to remove the entire line that begins with assert( .... )
rodrigofd said:
Please write in english or we will be banned by the forum..
I mean that the exact line might vary from rom to rom, but the goal is to remove the entire line that begins with assert( .... )
Click to expand...
Click to collapse
ok...for example these one take a look...
assert(getprop("ro.product.device") == "d802" || getprop("ro.build.product") == "d802" || getprop("ro.product.device") == "g2" || getprop("ro.build.product") == "g2" || getprop("ro.product.device") == "galbi" || getprop("ro.build.product") == "galbi" || getprop("ro.product.device") == "d800" || getprop("ro.build.product") == "d800" || abort("This package is for device: d802,g2,galbi,d800; this device is " + getprop("ro.product.device") + ".");
if ! is_mounted("/system") then
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
endif;
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
set_metadata("/tmp/backuptool.functions", "uid", 0, "gid", 0, "mode", 0644);
run_program("/tmp/backuptool.sh", "backup");
unmount("/system");
if is_mounted("/data") then
package_extract_file("system/bin/otasigcheck.sh", "/tmp/otasigcheck.sh");
package_extract_file("META-INF/org/cyanogenmod/releasekey", "/tmp/releasekey");
set_metadata("/tmp/otasigcheck.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/tmp/otasigcheck.sh") == "0" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
else
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/userdata", "/data", "");
package_extract_file("system/bin/otasigcheck.sh", "/tmp/otasigcheck.sh");
package_extract_file("META-INF/org/cyanogenmod/releasekey", "/tmp/releasekey");
set_metadata("/tmp/otasigcheck.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/tmp/otasigcheck.sh") == "0" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
unmount("/data");
endif;
show_progress(0.750000, 0);
block_image_update("/dev/block/platform/msm_sdcc.1/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
delete("/system/bin/otasigcheck.sh");
unmount("/system");
show_progress(0.020000, 10);
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
set_metadata("/tmp/backuptool.functions", "uid", 0, "gid", 0, "mode", 0644);
run_program("/tmp/backuptool.sh", "restore");
delete("/system/bin/backuptool.sh");
delete("/system/bin/backuptool.functions");
unmount("/system");
show_progress(0.050000, 5);
show_progress(0.200000, 10);
package_extract_file("boot.img", "/tmp/boot.img");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
assert(run_program("/system/bin/loki.sh") == 0);
delete("/system/bin/loki.sh");
unmount("/system");
ui_print("=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
ui_print(" \ ) ( )\ ) )\ ) ");
ui_print(" (()/ ( ( )\ ( (()/((()/( ");
ui_print(" (_)) ((_) (_)_) /((_)(_)) (_)) ");
ui_print(" | | (_) / _ \ (_))( |_ _| | \ ");
ui_print(" | |__ | || (_) || || | | | | |) | ");
ui_print(" |____||_| \__\_\ \_,_||___| |___/ ");
ui_print("=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
ui_print(" <%%% Liquid-lollipop %%%> ");
ui_print(" <%%% By LiquidSmooth %%%> ");
ui_print("=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
aromano91 said:
ok...for example these one take a look...
assert(getprop("ro.product.device") == "d802" || getprop("ro.build.product") == "d802" || getprop("ro.product.device") == "g2" || getprop("ro.build.product") == "g2" || getprop("ro.product.device") == "galbi" || getprop("ro.build.product") == "galbi" || getprop("ro.product.device") == "d800" || getprop("ro.build.product") == "d800" || abort("This package is for device: d802,g2,galbi,d800; this device is " + getprop("ro.product.device") + ".");
if ! is_mounted("/system") then
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
endif;
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
set_metadata("/tmp/backuptool.functions", "uid", 0, "gid", 0, "mode", 0644);
run_program("/tmp/backuptool.sh", "backup");
unmount("/system");
if is_mounted("/data") then
package_extract_file("system/bin/otasigcheck.sh", "/tmp/otasigcheck.sh");
package_extract_file("META-INF/org/cyanogenmod/releasekey", "/tmp/releasekey");
set_metadata("/tmp/otasigcheck.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/tmp/otasigcheck.sh") == "0" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
else
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/userdata", "/data", "");
package_extract_file("system/bin/otasigcheck.sh", "/tmp/otasigcheck.sh");
package_extract_file("META-INF/org/cyanogenmod/releasekey", "/tmp/releasekey");
set_metadata("/tmp/otasigcheck.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/tmp/otasigcheck.sh") == "0" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
unmount("/data");
endif;
show_progress(0.750000, 0);
block_image_update("/dev/block/platform/msm_sdcc.1/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
delete("/system/bin/otasigcheck.sh");
unmount("/system");
show_progress(0.020000, 10);
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
set_metadata("/tmp/backuptool.functions", "uid", 0, "gid", 0, "mode", 0644);
run_program("/tmp/backuptool.sh", "restore");
delete("/system/bin/backuptool.sh");
delete("/system/bin/backuptool.functions");
unmount("/system");
show_progress(0.050000, 5);
show_progress(0.200000, 10);
package_extract_file("boot.img", "/tmp/boot.img");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", "");
assert(run_program("/system/bin/loki.sh") == 0);
delete("/system/bin/loki.sh");
unmount("/system");
ui_print("=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
ui_print(" \ ) ( )\ ) )\ ) ");
ui_print(" (()/ ( ( )\ ( (()/((()/( ");
ui_print(" (_)) ((_) (_)_) /((_)(_)) (_)) ");
ui_print(" | | (_) / _ \ (_))( |_ _| | \ ");
ui_print(" | |__ | || (_) || || | | | | |) | ");
ui_print(" |____||_| \__\_\ \_,_||___| |___/ ");
ui_print("=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
ui_print(" <%%% Liquid-lollipop %%%> ");
ui_print(" <%%% By LiquidSmooth %%%> ");
ui_print("=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-");
Click to expand...
Click to collapse
Remove the first line.
Your first line should then be:
if ! is_mounted("/system") then
I never had to modify a single line for my D806 to flash any of the 200(?) ROMs and variants I already tried. Just flashing any for D802 ROM/Kernel/Recovery (anything but the baseband) actually work.ed each time. For which ROM you had to modify the installer script for?
Regards
Floodland said:
I never had to modify a single line for my D806 to flash any of the 200(?) ROMs and variants I already tried. Just flashing any for D802 ROM/Kernel/Recovery (anything but the baseband) actually work.ed each time. For which ROM you had to modify the installer script for?
Regards
Click to expand...
Click to collapse
For flash D802 roms on D806.
Or just flash d802 recovery
Floodland said:
I never had to modify a single line for my D806 to flash any of the 200(?) ROMs and variants I already tried. Just flashing any for D802 ROM/Kernel/Recovery (anything but the baseband) actually work.ed each time. For which ROM you had to modify the installer script for?
Regards
Click to expand...
Click to collapse
There are indeed some roms that include that validation on their flash scripts... e.g. the sample in this thread is for LiquidSmooth rom series...
my question is if I install zip stock of 802? I have a D806
Sorry. Both Liquidsmooth both 3.2 and 4.0 install perfectly without modifications with the D802 build on our D806, the same at any other ROM which supports D802, except if they try to flash a baseband (I think none of the lastest 300 releases do that anyway). System, recovery and kernels are compatible. I did not dare to replace the bootloader with the latest one from D802, it should work as well, but I know it the boot loader is the phone Achilles heel, so I do not want to spend hours trying to revert something that already works.... As far as I know, there are no advantages in updating it either. I am happy pressing vol. down power to access recovery
Tip: D805 basebands do work for our D806. I do have better signal reception using Brazil modem in our sad networks.
is it possible to intall officail cm12.1 of d802 model in d805 ??

Lineage 14.1 S4 LTE-A E330S|K|L, How you port rom by yourself

Hi guys, I'm going to show you how to port Lineage 14.1 Samsung S4 I9506 to E330 SKL Korean Edition,
LineageOS is a free, community built, aftermarket firmware distribution of Android 7.x (Nougat), which is designed to increase performance and reliability over stock Android for your device.
Click to expand...
Click to collapse
Download Step
First, you need to download notepad++, the Lineage rom in the orignal post, also don't forget to download Google apps (OpenGapps).
Pre-Flash Step
After downloading the rom, open it, then browse to META-INF/com/google/android, extract "updater-script" file then open the extracted file with Notepad++, Replace "ks01ltexx" with:
"ks01lteskt" if your phone is E330S
"ks01ltektt" if your phone is E330K
"ks01ltelgt" if your phone is E330L
Example: E330S update-script file:
Code:
assert(getprop("ro.product.device") == "ks01lte" || getprop("ro.build.product") == "ks01lte" || getprop("ro.product.device") == "ks01lteskt" || getprop("ro.build.product") == "ks01lteskt" || getprop("ro.product.device") == "GT-I9506" || getprop("ro.build.product") == "GT-I9506" || abort("E3004: This package is for device: ks01lte,ks01lteskt,GT-I9506; this device is " + getprop("ro.product.device") + ".");); ui_print("Target: samsung/ks01lteskt/ks01lte:5.0.1/LRX22C/I9506XXUDPG2:user/release-keys"); ifelse(is_mounted("/system"), unmount("/system")); package_extract_dir("install", "/tmp/install"); set_metadata_recursive("/tmp/install", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644); set_metadata_recursive("/tmp/install/bin", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755); mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", ""); run_program("/tmp/install/bin/backuptool.sh", "backup"); unmount("/system"); if is_mounted("/data") then package_extract_file("META-INF/org/lineageos/releasekey", "/tmp/releasekey"); run_program("/tmp/install/bin/otasigcheck.sh") != "31744" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset"); else mount("f2fs", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/userdata", "/data", ""); package_extract_file("META-INF/org/lineageos/releasekey", "/tmp/releasekey"); run_program("/tmp/install/bin/otasigcheck.sh") != "31744" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset"); unmount("/data"); endif; show_progress(0.750000, 0); ui_print("Patching system image unconditionally..."); block_image_update("/dev/block/platform/msm_sdcc.1/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat") || abort("E1001: Failed to update system image."); show_progress(0.020000, 10); mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system", ""); run_program("/tmp/install/bin/backuptool.sh", "restore"); unmount("/system"); show_progress(0.050000, 5); package_extract_file("boot.img", "/dev/block/platform/msm_sdcc.1/by-name/boot"); show_progress(0.200000, 10); set_progress(1.000000);
Note: You need to check which version in TWRP recovery if it is E330L or E330S or E330K not in about phone menu!
Now, you need to reformat the file to prevent any CWM errors, in Notepad++, go to Edit Menu>EOL Conversion> Convert to UNIX Format. Edit Menu again, Blank Operations> Remove Unbecessary Blank and EOL. Edit Menu>Blank Operation>TAB To Space.
Then save the file and put it in the archive again (replace the old one). Go back to the main directory then go to system folder, extract build.prop and replace ks01ltexx with the suitable version as explained before. save it, replace the old one with the edited one.
Flash Step
All you have to do is to follow the instructions in the original post.
Note: Do not flash Modem/Bootloader !
​

Categories

Resources