[Q] RTL script fix - Galaxy Ace S5830 General

i have a problem with RTL script under CWM.
if some can help me to fix the script for CWM it will be great.
here is the script for stock recovery:
assert(getprop("ro.product.device") == "GT-S5830" ||
getprop("ro.build.product") == "GT-S5830" ||
getprop("ro.product.device") == "GT-S5570" ||
getprop("ro.build.product") == "GT-S5570" ||
getprop("ro.product.device") == "GT-S5670" ||
getprop("ro.product.product") == "GT-S5670"||
getprop("ro.product.device") == "GT-B7510" ||
getprop("ro.product.product") == "GT-B7510"
);
show_progress(0.100000, 0);
show_progress(0.500000, 0);
# format("MTD", "system");
#mount("MTD", "system", "/system");
ui_print(" - deleting old system files...");
delete_recursive("/system/app");
delete_recursive("/system/fonts");
delete_recursive("/system/framework");
delete_recursive("/system/lib");
delete_recursive("/system/xbin");
ui_print(" - unpacking system files...");
package_extract_dir("system", "/system");
ui_print(" - settin files permissions...");
set_perm(0, 0, 04755, "/system/xbin/sqlite3");
set_perm(0, 0, 04755, "/system/xbin/su-v1");
set_perm(0, 0, 04755, "/system/xbin/su-v2");
set_perm(0, 0, 04755, "/system/xbin/su-v3");
set_perm(0, 0, 04755, "/system/xbin/su");
set_perm(0, 0, 04755, "/system/xbin/sh");
set_perm(0, 0, 04755, "/system/xbin/busybox");
ui_print("Install complete, reboot...");
#unmount("/system");

izador said:
i have a problem with RTL script under CWM.
if some can help me to fix the script for CWM it will be great.
here is the script for stock recovery:
Code:
assert(getprop("ro.product.device") == "GT-S5830" ||
getprop("ro.build.product") == "GT-S5830" ||
getprop("ro.product.device") == "GT-S5570" ||
getprop("ro.build.product") == "GT-S5570" ||
getprop("ro.product.device") == "GT-S5670" ||
getprop("ro.product.product") == "GT-S5670"||
getprop("ro.product.device") == "GT-B7510" ||
getprop("ro.product.product") == "GT-B7510"
);
show_progress(0.100000, 0);
show_progress(0.500000, 0);
# format("MTD", "system");
#mount("MTD", "system", "/system");
ui_print(" - deleting old system files...");
delete_recursive("/system/app");
delete_recursive("/system/fonts");
delete_recursive("/system/framework");
delete_recursive("/system/lib");
delete_recursive("/system/xbin");
ui_print(" - unpacking system files...");
package_extract_dir("system", "/system");
ui_print(" - settin files permissions...");
set_perm(0, 0, 04755, "/system/xbin/sqlite3");
set_perm(0, 0, 04755, "/system/xbin/su-v1");
set_perm(0, 0, 04755, "/system/xbin/su-v2");
set_perm(0, 0, 04755, "/system/xbin/su-v3");
set_perm(0, 0, 04755, "/system/xbin/su");
set_perm(0, 0, 04755, "/system/xbin/sh");
set_perm(0, 0, 04755, "/system/xbin/busybox");
ui_print("Install complete, reboot...");
#unmount("/system");
Click to expand...
Click to collapse
Look here. You need to add into your script commands to mount and umount system, so replace
Code:
#mount("MTD", "system", "/system");
with
Code:
run_program("/sbin/busybox", "mount", "/system");
and
Code:
#unmount("/system");
with
Code:
run_program("/sbin/busybox", "umount", "/system");
and it should work (not tested).

PabloPL said:
Look here. You need to add into your script commands to mount and umount system, so replace
Code:
#mount("MTD", "system", "/system");
with
Code:
run_program("/sbin/busybox", "mount", "/system");
and
Code:
#unmount("/system");
with
Code:
run_program("/sbin/busybox", "umount", "/system");
and it should work (not tested).
Click to expand...
Click to collapse
still dont work, any ideas ?
OK, found the prob now its work.
thanks.

izador said:
still dont work, any ideas ?
OK, found the prob now its work.
thanks.
Click to expand...
Click to collapse
If you found the problem, please tell what the problem was so other people can learn from that

ui_print("RTL-FIX");
show_progress(0.100000, 0);
show_progress(0.500000, 0);
# format("MTD", "system");
run_program("/sbin/busybox", "mount", "/system");
ui_print(" - deleting old system files...");
delete_recursive("/system/app");
delete_recursive("/system/fonts");
delete_recursive("/system/framework");
delete_recursive("/system/lib");
delete_recursive("/system/xbin");
ui_print(" - unpacking system files...");
package_extract_dir("system", "/system");
ui_print(" - settin files permissions...");
set_perm(0, 0, 04755, "/system/xbin/sqlite3");
set_perm(0, 0, 04755, "/system/xbin/su-v1");
set_perm(0, 0, 04755, "/system/xbin/su-v2");
set_perm(0, 0, 04755, "/system/xbin/su-v3");
set_perm(0, 0, 04755, "/system/xbin/su");
set_perm(0, 0, 04755, "/system/xbin/sh");
set_perm(0, 0, 04755, "/system/xbin/busybox");
ui_print("Install complete, reboot...");
run_program("/sbin/busybox", "umount", "/system");
every one can change the folders that he need to update.
red color is for root permissions
blue color r for the folders that u want to replace

Related

[Q] Error in root progress, busybox exits with segmentation fault

Hello,
a friend of mine has got the GT-S5830T and we wanted to root it, so that we could unlock it, by cating the bml5.
The problem is, that the original Root.zip from the big "How to root"-post doesn't work (also i can't post a reply there, cause i'm not experienced enough )
I edited the updater-script, so that the first assert() wouldn't fail. While the script would run fine now, the Superuser.apk wouldn't get notified if su was called, su would fail with the error "permission denied".
So i looked into another root.zip for a different phone (think it was galaxy 3), and saw a busybox install call via run_programm(), and some set_perm()'s for files in /system/xbin.
I copied them into the updater-script. I runs normally, but superuser.apk still doesn't work, so i tried to start busybox through the Terminal Emulator. Now i am getting a standard "SIGSEGV" Segmantation fault.
Is all hope lost or is it still possible to root that phone without a custom rom or a pc? <- Yeah, he doesn't have one atm
This is the modified updater-script:
Code:
assert(getprop("ro.product.device") == "GT-S5830" ||
getprop("ro.build.product") == "GT-S5830" ||
getprop("ro.product.device") == "GT-S5830T" ||
getprop("ro.build.product") == "GT-S5830T" ||
getprop("ro.product.device") == "GT-S5570" ||
getprop("ro.build.product") == "GT-S5570" ||
getprop("ro.product.device") == "GT-S5670" ||
getprop("ro.product.product") == "GT-S5670"||
getprop("ro.product.device") == "GT-B7510" ||
getprop("ro.product.product") == "GT-B7510"
);
show_progress(0.100000, 0);
show_progress(0.500000, 0);
# format("MTD", "system");
#mount("MTD", "system", "/system");
package_extract_dir("system", "/system");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/bin/su");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(0, 0, 04755, "/system/xbin/sqlite3");
set_perm(0, 0, 04755, "/system/xbin/su-v1");
set_perm(0, 0, 04755, "/system/xbin/su-v2");
set_perm(0, 0, 04755, "/system/xbin/su-v3");
set_perm(0, 0, 04755, "/system/xbin/su");
set_perm(0, 0, 04755, "/system/xbin/busybox");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
run_program("/system/xbin/busybox","--install","-s","/system/xbin");
#unmount("/system");
Flash ketut's CF-Root. You will find the thread in development section.
Sent from my GT-S5830 using iOS ROM
tj_droid said:
Flash ketut's CF-Root. You will find the thread in development section.
Sent from my GT-S5830 using iOS ROM
Click to expand...
Click to collapse
Ya use the CF-Root kernel! its really good!
Ok Then we'll have to wait anyway until he has got a PC again. Clause there doesn't Seem to be a way to fix this without one.
Sent from my GT-I5800 using XDA App
Samsung Galaxy ACE GT-S5830L (Latin America)
@MaxiCabb
I found this thread while looking for the easiest way to root a Samsung Galaxy ACE GT-S5830L (Latin America version)
This is the original "updater-script" code with only 2 minor changes I made:
Code:
assert(getprop("ro.product.device") == "GT-S5830[B][COLOR="Red"]L[/COLOR][/B]" ||
getprop("ro.build.product") == "GT-S5830[B][COLOR="red"]L[/COLOR][/B]" ||
getprop("ro.product.device") == "GT-S5570" ||
getprop("ro.build.product") == "GT-S5570" ||
getprop("ro.product.device") == "GT-S5670" ||
getprop("ro.product.product") == "GT-S5670"||
getprop("ro.product.device") == "GT-B7510" ||
getprop("ro.product.product") == "GT-B7510"
);
show_progress(0.100000, 0);
show_progress(0.500000, 0);
# format("MTD", "system");
#mount("MTD", "system", "/system");
package_extract_dir("system", "/system");
set_perm(0, 0, 04755, "/system/xbin/sqlite3");
set_perm(0, 0, 04755, "/system/xbin/su-v1");
set_perm(0, 0, 04755, "/system/xbin/su-v2");
set_perm(0, 0, 04755, "/system/xbin/su-v3");
set_perm(0, 0, 04755, "/system/xbin/su");
set_perm(0, 0, 04755, "/system/xbin/sh");
set_perm(0, 0, 04755, "/system/xbin/busybox");
#unmount("/system");
If you notice, the only thing I did was add the "L" to the first two lines of the code where the smartphone model is written. I noticed this is different from what you attempted.
What I did worked perfectly and the Galaxy ACE was rooted successfully. No errors whatsoever. This was on Gingerbread 2.3.4.
I was then able to Unlock the phone to any carrier using method #2 found on this thread: http://forum.xda-developers.com/showthread.php?t=1335548
I thought this could be a useful first post and I hope it helps other people looking for answers.

CHMOD permissions

Strange situation. Have a folder on internal SD, Which will not delete via PC nor ES File explorer.
Theoretically, there shouldn't need be permissions set, as far as I know, when doing an install routine via installer script to internal SD.
Install works fine. I can actually add files to the folder via installer, however, cannot delete the folder or files within. File Explorers show proper permissions as R/W.
Clues?
Code:
#Updater-script Evil Alex Purgatory V2
#For the ACER Iconia A701 Tab
set_progress(0.00);
ui_print("");
ui_print("");
ui_print("=================================");
ui_print(" Evil Alex Roms by Moscow Desire ");
ui_print(" 1st boot may take a while! ");
ui_print(" 1. Boot kann lang dauern! ");
ui_print("=================================");
ui_print("");
ui_print("");
set_progress(0.01);
############################################################
# Mount Partitions
############################################################
ui_print("--- Mounting partitions ---");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/APP", "/system");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/UDA", "/data");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/FLX", "/flex");
mount("vfat", "EMMC", "/dev/fuse /storage/sdcard0", "/sdcard");
############################################################
# Cleaning System
############################################################
ui_print("");
ui_print("");
ui_print("--- Cleaning process ---");
# Delete/Wipe /data partition without sd-card content !!! thx [user=287340]@Vorbeth[/user]
delete_recursive("/system");
if
file_getprop("/tmp/aroma-data/wipe.prop","selected.0") == "2"
then
ui_print("--- Cleaning data ---");
package_extract_file("aroma/scripts/wipe-data.sh", "/tmp/wipe-data.sh");
set_perm(0, 0, 0777, "/tmp/wipe-data.sh");
run_program("/tmp/wipe-data.sh");
delete_recursive("/data/media/Android");
delete_recursive("/data/media/LazyList");
delete_recursive("/data/media/LOST.DIR");
delete_recursive("/data/media/bugreports");
delete_recursive("/data/media/tmp");
else
ui_print("--- Cleaning caches ---");
delete_recursive("/data/dalvik-cache");
delete_recursive("/data/resource-cache");
endif;
set_progress(0.10);
############################################################
# 0 Install Stock Rom
############################################################
ui_print(" ");
ui_print("********** Evil Alex INSTALL SYSTEM *************");
ui_print("");
package_extract_dir("system", "/system");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
symlink("/system/xbin/busybox", "/system/bin/busybox");
ui_print(" ");
ui_print("*********** Evil Alex ROM COPY DATA **************");
ui_print(" ");
package_extract_dir("data", "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
[COLOR="Red"] ui_print("*********** Installing Viper4Android **************");
package_extract_dir("aroma/audio", "/sdcard");[/COLOR]
set_progress(0.35);
############################################################
# 1 Install Full Stock Rom
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "1"
then
set_progress(0.35);
ui_print(" ");
ui_print("*********** install Purgatory Mods **************");
ui_print(" ");
ui_print("Install 4Way Reboot Mod");
package_extract_dir("aroma/mods/4Way", "/system");
ui_print("Install Chrome Desktop Mode");
package_extract_dir("aroma/mods/ccl", "/data");
set_perm(1000, 1000, 0755, "/data/local/chrome-command-line");
ui_print("Install GPU Rendering");
package_extract_file("aroma/mods/81GPU_rendering", "/system/etc/init.d/81GPU_rendering");
endif;
############################################################
# 2 Install small Rom and delete Apps
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "2"
then
ui_print(" ");
ui_print("*********** install Purgatory Mods **************");
ui_print(" ");
ui_print("Install 4Way Reboot Mod");
package_extract_dir("aroma/mods/4Way", "/system");
ui_print("Install Chrome Desktop Mode");
package_extract_dir("aroma/mods/ccl", "/data");
set_perm(1000, 1000, 0755, "/data/local/chrome-command-line");
ui_print("Install GPU Rendering Tweak");
package_extract_file("aroma/mods/81GPU_rendering", "/system/etc/init.d/81GPU_rendering");
ui_print(" ");
ui_print("******* Purgatory small Edition *********");
ui_print(" ");
delete_recursive("/system/app/AcerCloud.apk");
delete_recursive("/data/app/Files.apk");
delete_recursive("/system/app/AcerPrint.apk");
delete_recursive("/data/app/AcerEurosport.apk");
delete_recursive("/system/app/AcerRing.apk");
delete_recursive("/system/app/AcerShellData.apk");
package_extract_file("aroma/scripts/change-shell.sh", "/tmp/change-shell.sh");
set_perm(0, 0, 0777, "/tmp/change-shell.sh");
delete_recursive("/data/app/McAfee.apk");
###
delete_recursive("/data/app/7digital.apk");
delete_recursive("/data/app/Acetrax_Movies.apk");
delete_recursive("/data/app/aupeo.apk");
delete_recursive("/data/app/BarcodeScanner.apk");
delete_recursive("/data/app/Books.apk");
delete_recursive("/system/app/clearfi_music.apk");
delete_recursive("/system/app/clearfi_photo.apk");
delete_recursive("/system/app/clearfi_video.apk");
delete_recursive("/data/app/EquiView.apk");
delete_recursive("/data/app/Evernote.apk");
delete_recursive("/data/app/Kindle.apk");
delete_recursive("/data/app/Calendar.apk");
delete_recursive("/system/app/PolarisOfficeForAcer4.0_JB.apk");
delete_recursive("/system/app/libpolarisoffice_tablet_jb.so");
delete_recursive("/system/app/libtfapps-polaris.so");
delete_recursive("/system/app/libtflua-polaris.so");
delete_recursive("/system/app/Gallery2.apk");
delete_recursive("/data/app/TegraZone.apk");
delete_recursive("/data/app/Youtube.apk");
delete_recursive("/data/app/ZinioReader.apk");
delete_recursive("/data/app/ZinioSettingsProvider.apk");
####
delete_recursive("/data/app/Monopoly.apk");
delete_recursive("/data/app/RealRacing2.apk");
delete_recursive("/system/app/Solitaire.apk");
delete_recursive("/system/app/libHardwoodSolitaireIV.so");
delete_recursive("/system/app/libHardwoodSolitaireIVRogue.so");
####
delete_recursive("/data/app/DigitalClockWidget2.apk");
delete_recursive("/data/app/WeatherWidget2.apk");
endif;
set_progress(0.75);
############################################################
# 3 Install Custom Rom delete Stock Apps
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "3"
then
set_progress(0.35);
####Acer Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.1") == "1"
then
ui_print("delete AcerCloud");
delete_recursive("/system/app/AcerCloud.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.2") == "1"
then
ui_print("delete AcerCloud");
delete_recursive("/data/app/AcerEurosport.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.3") == "1"
then
ui_print("delete Acer File Browser");
delete_recursive("/data/app/Files.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.4") == "1"
then
ui_print("delete Acer Print");
delete_recursive("/system/app/AcerPrint.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.5") == "1"
then
ui_print("delete Acer Shell");
delete_recursive("/system/app/AcerRing.apk");
delete_recursive("/system/app/AcerShellData.apk");
package_extract_file("aroma/scripts/change-shell.sh", "/tmp/change-shell.sh");
set_perm(0, 0, 0777, "/tmp/change-shell.sh");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.6") == "1"
then
ui_print("delete McAfee");
delete_recursive("/data/app/McAfee.apk");
endif;
set_progress(0.45);
####Apps Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.1") == "1"
then
ui_print("delete 7digital");
delete_recursive("/data/app/7digital.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.2") == "1"
then
ui_print("delete Acetrax Movies");
delete_recursive("/data/app/Acetrax_Movies.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.3") == "1"
then
ui_print("delete Amazon Kindle");
delete_recursive("/data/app/Kindle.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.4") == "1"
then
ui_print("delete Aupeo");
delete_recursive("/data/app/aupeo.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.5") == "1"
then
ui_print("delete BarcodeScanner");
delete_recursive("/data/app/BarcodeScanner.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.6") == "1"
then
ui_print("delete Google Books");
delete_recursive("/data/app/Books.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.7") == "1"
then
ui_print("delete ClearFi Apps");
delete_recursive("/system/app/clearfi_music.apk");
delete_recursive("/system/app/clearfi_photo.apk");
delete_recursive("/system/app/clearfi_video.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.8") == "1"
then
ui_print("delete EquiView");
delete_recursive("/data/app/EquiView.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.9") == "1"
then
ui_print("delete Evernote");
delete_recursive("/data/app/Evernote.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.10") == "1"
then
ui_print("delete Google Calendar");
delete_recursive("/data/app/Calendar.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.11") == "1"
then
ui_print("delete Polaris Office");
delete_recursive("/system/app/PolarisOfficeForAcer4.0_JB.apk");
delete_recursive("/system/app/libpolarisoffice_tablet_jb.so");
delete_recursive("/system/app/libtfapps-polaris.so");
delete_recursive("/system/app/libtflua-polaris.so");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.12") == "1"
then
ui_print("delete Stock Gallery");
delete_recursive("/system/app/Gallery2.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.13") == "1"
then
ui_print("delete Youtube Appe");
delete_recursive("/data/app/TegraZone.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.14") == "1"
then
ui_print("delete Youtube Appe");
delete_recursive("/data/app/Youtube.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.15") == "1"
then
ui_print("delete Zinio Reader");
delete_recursive("/data/app/ZinioReader.apk");
delete_recursive("/data/app/ZinioSettingsProvider.apk");
endif;
set_progress(0.55);
####Games Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.3.1") == "1"
then
ui_print("delete Monopoly");
delete_recursive("/data/app/Monopoly.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.3.2") == "1"
then
ui_print("delete Real Racing 2");
delete_recursive("/data/app/RealRacing2.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.3.3") == "1"
then
ui_print("delete Solitaire");
delete_recursive("/system/app/Solitaire.apk");
delete_recursive("/system/app/libHardwoodSolitaireIV.so");
delete_recursive("/system/app/libHardwoodSolitaireIVRogue.so");
endif;
####Widget Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.4.1") == "1"
then
ui_print("delete Digital Clock Widget");
delete_recursive("/data/app/Digitalclock2.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.4.2") == "1"
then
ui_print("delete Weather Widget");
delete_recursive("/data/app/Weather2.apk");
endif;
endif;
set_progress(0.75);
############################################################
# 4 Install custom Rom choosed Mods
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "3"
then
if
file_getprop("/tmp/aroma-data/tweaks.prop","item.0.1") == "1"
then
ui_print("Install 4Way Reboot Mod");
package_extract_dir("aroma/mods/4Way", "/system");
endif;
if
file_getprop("/tmp/aroma-data/tweaks.prop","item.0.2") == "1"
then
ui_print("Install Chrome Desktop Mode");
package_extract_dir("aroma/mods/ccl", "/data");
set_perm(1000, 1000, 0755, "/data/local/chrome-command-line");
endif;
if
file_getprop("/tmp/aroma-data/tweaks.prop","item.0.3") == "1"
then
ui_print("Install GPU Rendering Tweak");
package_extract_file("aroma/mods/81GPU_rendering", "/system/etc/init.d/81GPU_rendering");
endif;
endif;
set_progress(0.80);
############################################################
# 5 Install Custom Apps
############################################################
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.1") == "1"
then
ui_print("Install AdAway");
package_extract_dir("Apps/AdAway", "/system/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.2") == "1"
then
ui_print("Install Rootchecker");
package_extract_dir("Apps/RootChecker", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.3") == "1"
then
ui_print("Install Flashplayer");
package_extract_dir("Apps/Flashplayer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.4") == "1"
then
ui_print("Install Quickpic");
package_extract_dir("Apps/Quickpic", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.5") == "1"
then
ui_print("Install Chrome");
package_extract_dir("Apps/Chrome", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.6") == "1"
then
ui_print("Install DroidEdit");
package_extract_dir("Apps/DroidEdit", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.7") == "1"
then
ui_print("Install BBS");
package_extract_dir("Apps/BBS", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.8") == "1"
then
ui_print("Install BSPlayer");
package_extract_dir("Apps/BSPlayer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.9") == "1"
then
ui_print("Install CpuSpy");
package_extract_dir("Apps/CpuSpy", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.10") == "1"
then
ui_print("Install ESExplorer");
package_extract_dir("Apps/ESExplorer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.11") == "1"
then
ui_print("Install K9");
package_extract_dir("Apps/K9", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.12") == "1"
then
ui_print("Install Titanium");
package_extract_dir("Apps/Titanium", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.13") == "1"
then
ui_print("Install RoleTube");
package_extract_dir("Apps/RoleTube", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.14") == "1"
then
ui_print("Install NoteEverything");
package_extract_dir("Apps/NoteEverything", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.15") == "1"
then
ui_print("Install Dolphin");
package_extract_dir("Apps/Dolphin", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.16") == "1"
then
ui_print("Install UncoptExplorer");
package_extract_dir("Apps/UncoptExplorer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.17") == "1"
then
ui_print("Install SonyWalkman");
package_extract_dir("Apps/SonyWalkman", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.18") == "1"
then
ui_print("Install RealCalc");
package_extract_dir("Apps/RealCalc", "/data/app");
endif;
set_progress(0.85);
set_progress(0.90);
############################################################
# 8 Install Launcher
############################################################
ui_print("Launcher");
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.1") == "1"
then
ui_print(" - Stock Launcher");
package_extract_dir("aroma/launchers/stock", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.2") == "1"
then
ui_print(" - Apex Launcher");
package_extract_dir("aroma/launchers/apex", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.3") == "1"
then
ui_print(" - Nova Launcher");
package_extract_dir("aroma/launchers/nova", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.4") == "1"
then
ui_print(" - ADW Launcher");
package_extract_dir("aroma/launchers/adw", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.5") == "1"
then
ui_print(" - GO Launcher HD");
package_extract_dir("aroma/launchers/golhd", "/system");
endif;
set_progress(0.6);
############################################################
# 10 Install Rings
############################################################
ui_print("Acer Ring");
if
file_getprop("/tmp/aroma-data/ring.prop","item.0.1") == "1"
then
ui_print(" - Stock Acer Ring");
package_extract_dir("aroma/Rings/Stock", "/system/app");
endif;
if
file_getprop("/tmp/aroma-data/ring.prop","item.0.2") == "1"
then
ui_print(" - Carbon Ring");
package_extract_dir("aroma/Rings/Carbon", "/system/app");
endif;
if
file_getprop("/tmp/aroma-data/ring.prop","item.0.3") == "1"
then
ui_print(" - Bones Ring");
package_extract_dir("aroma/Rings/Bones", "/system/app");
endif;
############################################################
# Symlink Permission Recovery
############################################################
ui_print("Symlinking ...");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/chownto");
symlink("toolbox", "/system/bin/cmp");
symlink("toolbox", "/system/bin/date");
symlink("toolbox", "/system/bin/dd");
symlink("toolbox", "/system/bin/df");
symlink("toolbox", "/system/bin/dmesg");
symlink("toolbox", "/system/bin/getevent");
symlink("toolbox", "/system/bin/getprop");
symlink("toolbox", "/system/bin/hd");
symlink("toolbox", "/system/bin/id");
symlink("toolbox", "/system/bin/ifconfig");
symlink("toolbox", "/system/bin/iftop");
symlink("toolbox", "/system/bin/insmod");
symlink("toolbox", "/system/bin/ioctl");
symlink("toolbox", "/system/bin/ionice");
symlink("toolbox", "/system/bin/kill");
symlink("toolbox", "/system/bin/ln");
symlink("toolbox", "/system/bin/log");
symlink("toolbox", "/system/bin/ls");
symlink("toolbox", "/system/bin/lsmod");
symlink("toolbox", "/system/bin/lsof");
symlink("toolbox", "/system/bin/md5");
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/r");
symlink("toolbox", "/system/bin/reboot");
symlink("toolbox", "/system/bin/renice");
symlink("toolbox", "/system/bin/rm");
symlink("toolbox", "/system/bin/rmdir");
symlink("toolbox", "/system/bin/rmmod");
symlink("toolbox", "/system/bin/route");
symlink("toolbox", "/system/bin/schedtop");
symlink("toolbox", "/system/bin/sendevent");
symlink("toolbox", "/system/bin/setconsole");
symlink("toolbox", "/system/bin/setprop");
symlink("toolbox", "/system/bin/sleep");
symlink("toolbox", "/system/bin/smd");
symlink("toolbox", "/system/bin/start");
symlink("toolbox", "/system/bin/stop");
symlink("toolbox", "/system/bin/sync");
symlink("toolbox", "/system/bin/top");
symlink("toolbox", "/system/bin/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");
ui_print("");
ui_print("");
ui_print("--- Creating additional symlinks");
symlink("/system/bin/mksh", "/system/bin/sh");
symlink("/system/fonts/Roboto-Regular.ttf","/system/fonts/DroidSans.ttf");
symlink("/system/fonts/Roboto-Bold.ttf","/system/fonts/DroidSans-Bold.ttf");
ui_print("");
ui_print("");
ui_print("--- Installing busybox");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
ui_print("");
ui_print("");
ui_print("--- Setting permissions");
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(0, 0, 0644, "/system/etc/bluetooth/bdaddr");
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, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm(0, 0, 0644, "/system/vendor/fake.txt");
set_perm_recursive(0, 2000, 0755, 0755, "/system/etc/init.d");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 0700, "/system/xbin/tcpdump");
set_perm(1000, 1000, 0755, "/system/xbin/sysro");
set_perm(1000, 1000, 0755, "/system/xbin/sysrw");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(1000, 1000, 0771, "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor");
ui_print("--- End Setting permissions");
set_progress(0.95);
############################################################
# 6 Finish Rom Install
############################################################
ui_print("");
ui_print("");
ui_print("--- Flashing boot img");
package_extract_file("boot.img", "/dev/block/platform/sdhci-tegra.3/by-name/LNX");
ui_print("");
ui_print("");
ui_print("--- Unmounting partitions");
ifelse(is_mounted("/system") == "/system", unmount("/system"));
ifelse(is_mounted("/data") == "/data", unmount("/data"));
ui_print("");
ui_print("");
############################################################
# 7 Flash Firmware
############################################################
if file_getprop("/tmp/aroma-data/firmw.prop","selected.0") == "2" then
ui_print("--- Installing New Firmware");
package_extract_dir("firmware/TouchFw", "/tmp");
set_perm(0, 2000, 0777, "/tmp/atmel-ap");
set_perm(0, 2000, 0777, "/tmp/fw-1386e-22F4");
set_perm(0, 2000, 0777, "/tmp/1386e-config.txt");
run_program("/tmp/atmel-ap","0","1","76","/dev/maXTouch","/tmp/fw-1386e-22F4");
run_program("/tmp/atmel-ap","1","1","76","/tmp/1386e-config.txt","1","/dev/maXTouch");
package_extract_file("firmware/bootloader.blob", "/dev/block/platform/sdhci-tegra.3/by-name/USP");
run_program("/sbin/sleep", "2");
set_progress(1.0);
run_program("/sbin/reboot");
endif;
ui_print("=================================");
ui_print(" Evil Alex Purgatory Installed!");
ui_print(" Buy me some Beers if you like!! ");
ui_print(" Enjoy!! ");
ui_print("=================================");
set_progress(1.0);
guess
Moscow Desire said:
Strange situation. Have a folder on internal SD, Which will not delete via PC nor ES File explorer.
Theoretically, there shouldn't need be permissions set, as far as I know, when doing an install routine via installer script to internal SD.
Install works fine. I can actually add files to the folder via installer, however, cannot delete the folder or files within. File Explorers show proper permissions as R/W.
Clues?
Code:
#Updater-script Evil Alex Purgatory V2
#For the ACER Iconia A701 Tab
set_progress(0.00);
ui_print("");
ui_print("");
ui_print("=================================");
ui_print(" Evil Alex Roms by Moscow Desire ");
ui_print(" 1st boot may take a while! ");
ui_print(" 1. Boot kann lang dauern! ");
ui_print("=================================");
ui_print("");
ui_print("");
set_progress(0.01);
############################################################
# Mount Partitions
############################################################
ui_print("--- Mounting partitions ---");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/APP", "/system");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/UDA", "/data");
mount("ext4", "EMMC", "/dev/block/platform/sdhci-tegra.3/by-name/FLX", "/flex");
mount("vfat", "EMMC", "/dev/fuse /storage/sdcard0", "/sdcard");
############################################################
# Cleaning System
############################################################
ui_print("");
ui_print("");
ui_print("--- Cleaning process ---");
# Delete/Wipe /data partition without sd-card content !!! thx [user=287340]@Vorbeth[/user]
delete_recursive("/system");
if
file_getprop("/tmp/aroma-data/wipe.prop","selected.0") == "2"
then
ui_print("--- Cleaning data ---");
package_extract_file("aroma/scripts/wipe-data.sh", "/tmp/wipe-data.sh");
set_perm(0, 0, 0777, "/tmp/wipe-data.sh");
run_program("/tmp/wipe-data.sh");
delete_recursive("/data/media/Android");
delete_recursive("/data/media/LazyList");
delete_recursive("/data/media/LOST.DIR");
delete_recursive("/data/media/bugreports");
delete_recursive("/data/media/tmp");
else
ui_print("--- Cleaning caches ---");
delete_recursive("/data/dalvik-cache");
delete_recursive("/data/resource-cache");
endif;
set_progress(0.10);
############################################################
# 0 Install Stock Rom
############################################################
ui_print(" ");
ui_print("********** Evil Alex INSTALL SYSTEM *************");
ui_print("");
package_extract_dir("system", "/system");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
symlink("/system/xbin/busybox", "/system/bin/busybox");
ui_print(" ");
ui_print("*********** Evil Alex ROM COPY DATA **************");
ui_print(" ");
package_extract_dir("data", "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
[COLOR="Red"] ui_print("*********** Installing Viper4Android **************");
package_extract_dir("aroma/audio", "/sdcard");[/COLOR]
set_progress(0.35);
############################################################
# 1 Install Full Stock Rom
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "1"
then
set_progress(0.35);
ui_print(" ");
ui_print("*********** install Purgatory Mods **************");
ui_print(" ");
ui_print("Install 4Way Reboot Mod");
package_extract_dir("aroma/mods/4Way", "/system");
ui_print("Install Chrome Desktop Mode");
package_extract_dir("aroma/mods/ccl", "/data");
set_perm(1000, 1000, 0755, "/data/local/chrome-command-line");
ui_print("Install GPU Rendering");
package_extract_file("aroma/mods/81GPU_rendering", "/system/etc/init.d/81GPU_rendering");
endif;
############################################################
# 2 Install small Rom and delete Apps
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "2"
then
ui_print(" ");
ui_print("*********** install Purgatory Mods **************");
ui_print(" ");
ui_print("Install 4Way Reboot Mod");
package_extract_dir("aroma/mods/4Way", "/system");
ui_print("Install Chrome Desktop Mode");
package_extract_dir("aroma/mods/ccl", "/data");
set_perm(1000, 1000, 0755, "/data/local/chrome-command-line");
ui_print("Install GPU Rendering Tweak");
package_extract_file("aroma/mods/81GPU_rendering", "/system/etc/init.d/81GPU_rendering");
ui_print(" ");
ui_print("******* Purgatory small Edition *********");
ui_print(" ");
delete_recursive("/system/app/AcerCloud.apk");
delete_recursive("/data/app/Files.apk");
delete_recursive("/system/app/AcerPrint.apk");
delete_recursive("/data/app/AcerEurosport.apk");
delete_recursive("/system/app/AcerRing.apk");
delete_recursive("/system/app/AcerShellData.apk");
package_extract_file("aroma/scripts/change-shell.sh", "/tmp/change-shell.sh");
set_perm(0, 0, 0777, "/tmp/change-shell.sh");
delete_recursive("/data/app/McAfee.apk");
###
delete_recursive("/data/app/7digital.apk");
delete_recursive("/data/app/Acetrax_Movies.apk");
delete_recursive("/data/app/aupeo.apk");
delete_recursive("/data/app/BarcodeScanner.apk");
delete_recursive("/data/app/Books.apk");
delete_recursive("/system/app/clearfi_music.apk");
delete_recursive("/system/app/clearfi_photo.apk");
delete_recursive("/system/app/clearfi_video.apk");
delete_recursive("/data/app/EquiView.apk");
delete_recursive("/data/app/Evernote.apk");
delete_recursive("/data/app/Kindle.apk");
delete_recursive("/data/app/Calendar.apk");
delete_recursive("/system/app/PolarisOfficeForAcer4.0_JB.apk");
delete_recursive("/system/app/libpolarisoffice_tablet_jb.so");
delete_recursive("/system/app/libtfapps-polaris.so");
delete_recursive("/system/app/libtflua-polaris.so");
delete_recursive("/system/app/Gallery2.apk");
delete_recursive("/data/app/TegraZone.apk");
delete_recursive("/data/app/Youtube.apk");
delete_recursive("/data/app/ZinioReader.apk");
delete_recursive("/data/app/ZinioSettingsProvider.apk");
####
delete_recursive("/data/app/Monopoly.apk");
delete_recursive("/data/app/RealRacing2.apk");
delete_recursive("/system/app/Solitaire.apk");
delete_recursive("/system/app/libHardwoodSolitaireIV.so");
delete_recursive("/system/app/libHardwoodSolitaireIVRogue.so");
####
delete_recursive("/data/app/DigitalClockWidget2.apk");
delete_recursive("/data/app/WeatherWidget2.apk");
endif;
set_progress(0.75);
############################################################
# 3 Install Custom Rom delete Stock Apps
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "3"
then
set_progress(0.35);
####Acer Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.1") == "1"
then
ui_print("delete AcerCloud");
delete_recursive("/system/app/AcerCloud.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.2") == "1"
then
ui_print("delete AcerCloud");
delete_recursive("/data/app/AcerEurosport.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.3") == "1"
then
ui_print("delete Acer File Browser");
delete_recursive("/data/app/Files.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.4") == "1"
then
ui_print("delete Acer Print");
delete_recursive("/system/app/AcerPrint.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.5") == "1"
then
ui_print("delete Acer Shell");
delete_recursive("/system/app/AcerRing.apk");
delete_recursive("/system/app/AcerShellData.apk");
package_extract_file("aroma/scripts/change-shell.sh", "/tmp/change-shell.sh");
set_perm(0, 0, 0777, "/tmp/change-shell.sh");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.1.6") == "1"
then
ui_print("delete McAfee");
delete_recursive("/data/app/McAfee.apk");
endif;
set_progress(0.45);
####Apps Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.1") == "1"
then
ui_print("delete 7digital");
delete_recursive("/data/app/7digital.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.2") == "1"
then
ui_print("delete Acetrax Movies");
delete_recursive("/data/app/Acetrax_Movies.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.3") == "1"
then
ui_print("delete Amazon Kindle");
delete_recursive("/data/app/Kindle.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.4") == "1"
then
ui_print("delete Aupeo");
delete_recursive("/data/app/aupeo.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.5") == "1"
then
ui_print("delete BarcodeScanner");
delete_recursive("/data/app/BarcodeScanner.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.6") == "1"
then
ui_print("delete Google Books");
delete_recursive("/data/app/Books.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.7") == "1"
then
ui_print("delete ClearFi Apps");
delete_recursive("/system/app/clearfi_music.apk");
delete_recursive("/system/app/clearfi_photo.apk");
delete_recursive("/system/app/clearfi_video.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.8") == "1"
then
ui_print("delete EquiView");
delete_recursive("/data/app/EquiView.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.9") == "1"
then
ui_print("delete Evernote");
delete_recursive("/data/app/Evernote.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.10") == "1"
then
ui_print("delete Google Calendar");
delete_recursive("/data/app/Calendar.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.11") == "1"
then
ui_print("delete Polaris Office");
delete_recursive("/system/app/PolarisOfficeForAcer4.0_JB.apk");
delete_recursive("/system/app/libpolarisoffice_tablet_jb.so");
delete_recursive("/system/app/libtfapps-polaris.so");
delete_recursive("/system/app/libtflua-polaris.so");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.12") == "1"
then
ui_print("delete Stock Gallery");
delete_recursive("/system/app/Gallery2.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.13") == "1"
then
ui_print("delete Youtube Appe");
delete_recursive("/data/app/TegraZone.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.14") == "1"
then
ui_print("delete Youtube Appe");
delete_recursive("/data/app/Youtube.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.2.15") == "1"
then
ui_print("delete Zinio Reader");
delete_recursive("/data/app/ZinioReader.apk");
delete_recursive("/data/app/ZinioSettingsProvider.apk");
endif;
set_progress(0.55);
####Games Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.3.1") == "1"
then
ui_print("delete Monopoly");
delete_recursive("/data/app/Monopoly.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.3.2") == "1"
then
ui_print("delete Real Racing 2");
delete_recursive("/data/app/RealRacing2.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.3.3") == "1"
then
ui_print("delete Solitaire");
delete_recursive("/system/app/Solitaire.apk");
delete_recursive("/system/app/libHardwoodSolitaireIV.so");
delete_recursive("/system/app/libHardwoodSolitaireIVRogue.so");
endif;
####Widget Deinstall####
if
file_getprop("/tmp/aroma-data/customdel.prop","item.4.1") == "1"
then
ui_print("delete Digital Clock Widget");
delete_recursive("/data/app/Digitalclock2.apk");
endif;
if
file_getprop("/tmp/aroma-data/customdel.prop","item.4.2") == "1"
then
ui_print("delete Weather Widget");
delete_recursive("/data/app/Weather2.apk");
endif;
endif;
set_progress(0.75);
############################################################
# 4 Install custom Rom choosed Mods
############################################################
if
file_getprop("/tmp/aroma-data/typeinst.prop","selected.0") == "3"
then
if
file_getprop("/tmp/aroma-data/tweaks.prop","item.0.1") == "1"
then
ui_print("Install 4Way Reboot Mod");
package_extract_dir("aroma/mods/4Way", "/system");
endif;
if
file_getprop("/tmp/aroma-data/tweaks.prop","item.0.2") == "1"
then
ui_print("Install Chrome Desktop Mode");
package_extract_dir("aroma/mods/ccl", "/data");
set_perm(1000, 1000, 0755, "/data/local/chrome-command-line");
endif;
if
file_getprop("/tmp/aroma-data/tweaks.prop","item.0.3") == "1"
then
ui_print("Install GPU Rendering Tweak");
package_extract_file("aroma/mods/81GPU_rendering", "/system/etc/init.d/81GPU_rendering");
endif;
endif;
set_progress(0.80);
############################################################
# 5 Install Custom Apps
############################################################
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.1") == "1"
then
ui_print("Install AdAway");
package_extract_dir("Apps/AdAway", "/system/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.2") == "1"
then
ui_print("Install Rootchecker");
package_extract_dir("Apps/RootChecker", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.3") == "1"
then
ui_print("Install Flashplayer");
package_extract_dir("Apps/Flashplayer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.4") == "1"
then
ui_print("Install Quickpic");
package_extract_dir("Apps/Quickpic", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.5") == "1"
then
ui_print("Install Chrome");
package_extract_dir("Apps/Chrome", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.6") == "1"
then
ui_print("Install DroidEdit");
package_extract_dir("Apps/DroidEdit", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.7") == "1"
then
ui_print("Install BBS");
package_extract_dir("Apps/BBS", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.8") == "1"
then
ui_print("Install BSPlayer");
package_extract_dir("Apps/BSPlayer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.9") == "1"
then
ui_print("Install CpuSpy");
package_extract_dir("Apps/CpuSpy", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.10") == "1"
then
ui_print("Install ESExplorer");
package_extract_dir("Apps/ESExplorer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.11") == "1"
then
ui_print("Install K9");
package_extract_dir("Apps/K9", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.12") == "1"
then
ui_print("Install Titanium");
package_extract_dir("Apps/Titanium", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.13") == "1"
then
ui_print("Install RoleTube");
package_extract_dir("Apps/RoleTube", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.14") == "1"
then
ui_print("Install NoteEverything");
package_extract_dir("Apps/NoteEverything", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.15") == "1"
then
ui_print("Install Dolphin");
package_extract_dir("Apps/Dolphin", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.16") == "1"
then
ui_print("Install UncoptExplorer");
package_extract_dir("Apps/UncoptExplorer", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.17") == "1"
then
ui_print("Install SonyWalkman");
package_extract_dir("Apps/SonyWalkman", "/data/app");
endif;
if
file_getprop("/tmp/aroma-data/customapp.prop","item.0.18") == "1"
then
ui_print("Install RealCalc");
package_extract_dir("Apps/RealCalc", "/data/app");
endif;
set_progress(0.85);
set_progress(0.90);
############################################################
# 8 Install Launcher
############################################################
ui_print("Launcher");
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.1") == "1"
then
ui_print(" - Stock Launcher");
package_extract_dir("aroma/launchers/stock", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.2") == "1"
then
ui_print(" - Apex Launcher");
package_extract_dir("aroma/launchers/apex", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.3") == "1"
then
ui_print(" - Nova Launcher");
package_extract_dir("aroma/launchers/nova", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.4") == "1"
then
ui_print(" - ADW Launcher");
package_extract_dir("aroma/launchers/adw", "/system");
endif;
if
file_getprop("/tmp/aroma-data/launcher.prop","item.0.5") == "1"
then
ui_print(" - GO Launcher HD");
package_extract_dir("aroma/launchers/golhd", "/system");
endif;
set_progress(0.6);
############################################################
# 10 Install Rings
############################################################
ui_print("Acer Ring");
if
file_getprop("/tmp/aroma-data/ring.prop","item.0.1") == "1"
then
ui_print(" - Stock Acer Ring");
package_extract_dir("aroma/Rings/Stock", "/system/app");
endif;
if
file_getprop("/tmp/aroma-data/ring.prop","item.0.2") == "1"
then
ui_print(" - Carbon Ring");
package_extract_dir("aroma/Rings/Carbon", "/system/app");
endif;
if
file_getprop("/tmp/aroma-data/ring.prop","item.0.3") == "1"
then
ui_print(" - Bones Ring");
package_extract_dir("aroma/Rings/Bones", "/system/app");
endif;
############################################################
# Symlink Permission Recovery
############################################################
ui_print("Symlinking ...");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/chownto");
symlink("toolbox", "/system/bin/cmp");
symlink("toolbox", "/system/bin/date");
symlink("toolbox", "/system/bin/dd");
symlink("toolbox", "/system/bin/df");
symlink("toolbox", "/system/bin/dmesg");
symlink("toolbox", "/system/bin/getevent");
symlink("toolbox", "/system/bin/getprop");
symlink("toolbox", "/system/bin/hd");
symlink("toolbox", "/system/bin/id");
symlink("toolbox", "/system/bin/ifconfig");
symlink("toolbox", "/system/bin/iftop");
symlink("toolbox", "/system/bin/insmod");
symlink("toolbox", "/system/bin/ioctl");
symlink("toolbox", "/system/bin/ionice");
symlink("toolbox", "/system/bin/kill");
symlink("toolbox", "/system/bin/ln");
symlink("toolbox", "/system/bin/log");
symlink("toolbox", "/system/bin/ls");
symlink("toolbox", "/system/bin/lsmod");
symlink("toolbox", "/system/bin/lsof");
symlink("toolbox", "/system/bin/md5");
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/r");
symlink("toolbox", "/system/bin/reboot");
symlink("toolbox", "/system/bin/renice");
symlink("toolbox", "/system/bin/rm");
symlink("toolbox", "/system/bin/rmdir");
symlink("toolbox", "/system/bin/rmmod");
symlink("toolbox", "/system/bin/route");
symlink("toolbox", "/system/bin/schedtop");
symlink("toolbox", "/system/bin/sendevent");
symlink("toolbox", "/system/bin/setconsole");
symlink("toolbox", "/system/bin/setprop");
symlink("toolbox", "/system/bin/sleep");
symlink("toolbox", "/system/bin/smd");
symlink("toolbox", "/system/bin/start");
symlink("toolbox", "/system/bin/stop");
symlink("toolbox", "/system/bin/sync");
symlink("toolbox", "/system/bin/top");
symlink("toolbox", "/system/bin/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");
ui_print("");
ui_print("");
ui_print("--- Creating additional symlinks");
symlink("/system/bin/mksh", "/system/bin/sh");
symlink("/system/fonts/Roboto-Regular.ttf","/system/fonts/DroidSans.ttf");
symlink("/system/fonts/Roboto-Bold.ttf","/system/fonts/DroidSans-Bold.ttf");
ui_print("");
ui_print("");
ui_print("--- Installing busybox");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
ui_print("");
ui_print("");
ui_print("--- Setting permissions");
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(0, 0, 0644, "/system/etc/bluetooth/bdaddr");
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, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm(0, 0, 0644, "/system/vendor/fake.txt");
set_perm_recursive(0, 2000, 0755, 0755, "/system/etc/init.d");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 0700, "/system/xbin/tcpdump");
set_perm(1000, 1000, 0755, "/system/xbin/sysro");
set_perm(1000, 1000, 0755, "/system/xbin/sysrw");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(1000, 1000, 0771, "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor");
ui_print("--- End Setting permissions");
set_progress(0.95);
############################################################
# 6 Finish Rom Install
############################################################
ui_print("");
ui_print("");
ui_print("--- Flashing boot img");
package_extract_file("boot.img", "/dev/block/platform/sdhci-tegra.3/by-name/LNX");
ui_print("");
ui_print("");
ui_print("--- Unmounting partitions");
ifelse(is_mounted("/system") == "/system", unmount("/system"));
ifelse(is_mounted("/data") == "/data", unmount("/data"));
ui_print("");
ui_print("");
############################################################
# 7 Flash Firmware
############################################################
if file_getprop("/tmp/aroma-data/firmw.prop","selected.0") == "2" then
ui_print("--- Installing New Firmware");
package_extract_dir("firmware/TouchFw", "/tmp");
set_perm(0, 2000, 0777, "/tmp/atmel-ap");
set_perm(0, 2000, 0777, "/tmp/fw-1386e-22F4");
set_perm(0, 2000, 0777, "/tmp/1386e-config.txt");
run_program("/tmp/atmel-ap","0","1","76","/dev/maXTouch","/tmp/fw-1386e-22F4");
run_program("/tmp/atmel-ap","1","1","76","/tmp/1386e-config.txt","1","/dev/maXTouch");
package_extract_file("firmware/bootloader.blob", "/dev/block/platform/sdhci-tegra.3/by-name/USP");
run_program("/sbin/sleep", "2");
set_progress(1.0);
run_program("/sbin/reboot");
endif;
ui_print("=================================");
ui_print(" Evil Alex Purgatory Installed!");
ui_print(" Buy me some Beers if you like!! ");
ui_print(" Enjoy!! ");
ui_print("=================================");
set_progress(1.0);
Click to expand...
Click to collapse
try fixing permitions in cwm
Remove your mount of /sdcard
Code:
mount("vfat", "EMMC", "/dev/fuse /storage/sdcard0", "/sdcard");
and reference the /sdcard via /data/media
Code:
ui_print("*********** Installing Viper4Android **************");
package_extract_dir("aroma/audio", "/data/media");

Porting rom updater script help

So, i was looking for cyanogenmod 12.1 for mt6582 and i saw this CM 12.1 for sprout 8
my device is an oem with a specs of:
mt6582
8gb internal
1gb ram
I changed the updater script like this:
assert(getprop("ro.product.device") == "sprout" || getprop("ro.build.product") == "sprout" || getprop("ro.product.device") == "Flare S3" || getprop("ro.build.product") == "sprout8" || abort("This package is for device: sprout,sprout8; this device is " + getprop("ro.product.device") + ".");
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);
show_progress(.3, 0);
ui_print(" - Mounting /system...");
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
run_program("/tmp/install/bin/backuptool.sh", "backup");
unmount("/system");
if is_mounted("/data") then
package_extract_file("META-INF/org/cyanogenmod/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
show_progress(.3, 0);
ui_print(" - Mounting /data...");
mount("ext4", "EMMC", "/dev/block/mmcblk0p7", "/data");
package_extract_file("META-INF/org/cyanogenmod/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/mmcblk0p5", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
show_progress(0.020000, 10);
show_progress(.3, 0);
ui_print(" - Mounting /system...");
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
run_program("/tmp/install/bin/backuptool.sh", "restore");
unmount("/system");
show_progress(0.050000, 5);
package_extract_file("boot.img", "/dev/block/mmcblk0p5");
show_progress(0.200000, 10);
Click to expand...
Click to collapse
I'm having blkdiscard error. Im using TWRP. Any help?
Bump, anyone?

hello I want some help with modifying rom cm 13

I have researched how to modify rom cm 13 to be installed on any device
And having applied all the instructions meticulously :fingers-crossed:
What I still have an error in the installation of recovery
I suspect that the error in updater-script file
This is the file that you've modified it
Code:
assert(getprop("ro.product.device") == "j1pop3g" || getprop("ro.build.product") == "j1pop3g" || abort("This package is for device: j1pop3g; this device is " + getprop("ro.product.device") + "."););
ui_print("Target: samsung/j1pop3gjv/j1pop3g:4.4.4/KTU84P/J110HXXU0APD3: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/mmcblk0p24", "/system", "");
run_program("/tmp/install/bin/backuptool.sh", "backup");
unmount("/system");
if is_mounted("/data") then
package_extract_file("META-INF/org/cyanogenmod/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/mmcblk0p26", "/data", "");
package_extract_file("META-INF/org/cyanogenmod/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/mmcblk0p24", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat");
ui_print("Verifying the updated system image...");
if range_sha1("/dev/block/mmcblk0p24", "34,0,32770,32841,32843,33310,65535,65536,65538,98304,98306,98377,98379,98846,131071,131072,131074,163840,163842,163913,163915,164382,196607,196608,196610,229376,229378,229449,229451,229918,242027,262144,262146,262613,268543") == "78bc7cc69b723be97505fae5a10f33da9e2d457f" then
if range_sha1("/dev/block/mmcblk0p24", "42,32770,32841,32843,33310,65535,65536,65538,66050,97792,98304,98306,98377,98379,98846,131071,131072,131074,131586,163328,163840,163842,163913,163915,164382,196607,196608,196610,197122,228864,229376,229378,229449,229451,229918,242027,242539,261632,262144,262146,262613,268543,268544") == "8a123b7047923c07b2557d9e700ace3006757cca" then
ui_print("Verified the updated system image.");
else
abort("system partition has unexpected non-zero contents after OTA update");
endif;
else
abort("system partition has unexpected contents after OTA update");
endif;
show_progress(0.020000, 10);
mount("ext4", "EMMC", "/dev/block/mmcblk0p24", "/system", "");
run_program("/tmp/install/bin/backuptool.sh", "restore");
unmount("/system");
show_progress(0.050000, 5);
package_extract_file("boot.img", "/dev/block/mmcblk0p2");
show_progress(0.200000, 10);
Note:
I modified it to a phone
samsung j1 j110h
:silly::silly::silly::silly::silly:
Try ro compile pac rom for the device from
https://forum.xda-developers.com/showthread.php?t=2662325&page=36
Goode luck??

TWRP error :6

Hello xda
So today i just wanted to make a flashable update zip
And now, when i flash the zip in twrp, i'm getting:
Updater process ended with ERROR: 6
My update-script looks like this:
HTML Code:
(!less_than_int(1492929452, getprop("ro.build.date.utc"))) || abort("E3003: Can't install this package (Sun Apr 23 06:37:32 UTC 2017) over newer build (" + getprop("ro.build.date") + ").");
this device is " + getprop("ro.product.device") + ".");
ui_print("Target: xiaomi/mido/mido:7.0/NRD90M/7.2.9: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/bootdevice/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("ext4", "EMMC", "/dev/block/bootdevice/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/bootdevice/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/bootdevice/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/bootdevice/by-name/boot");
show_progress(0.200000, 10);
set_progress(1.000000);
Click to expand...
Click to collapse
The only thing what i wanna do is that the /system gets mounted, then, the system should install, and then, /system should be unmounted.
Can someone help me? I have a Redmi Note 4X and TWRP 3.1.0.0. Thanks.

Categories

Resources