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");
Related
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
Hi guys! This is my new post so I'll introduce myself. My name is Ignacio from Argentina and I'm a newbie ROM developer.
I started my first custom ROM project for the Samsung GT-B5510L two weeks ago, and despite I could flash my first zip file based on a stock ROM, I could not make work the modem. The zip file contained:
< META-INF/ - system/ - boot.img - installbusybox >
I took META-INF folder and installbusybox script from another ROM (with the owner permissions) and the ROM worked, except the modem. Here there is the updater-script lines:
show_progress(0.1, 0);
mount("rfs", "EMMC", "/dev/block/stl19", "/system");
delete_recursive("/system");
package_extract_file("check_data_app", "/tmp/check_data_app");
set_perm(0, 0, 0777, "/tmp/check_data_app");
package_extract_dir("system", "/system");
ui_print("Installing System Files");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
package_extract_dir("system", "/system");
symlink("dumpstate", "/system/bin/dumpcrash");
symlink("toolbox", "/system/bin/cat");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/cmp");
symlink("toolbox", "/system/bin/date");
symlink("toolbox", "/system/bin/dd");
symlink("toolbox", "/system/bin/df");
symlink("toolbox", "/system/bin/dmesg");
symlink("toolbox", "/system/bin/getevent");
symlink("toolbox", "/system/bin/getprop");
symlink("toolbox", "/system/bin/hd");
symlink("toolbox", "/system/bin/id");
symlink("toolbox", "/system/bin/ifconfig");
symlink("toolbox", "/system/bin/iftop");
symlink("toolbox", "/system/bin/insmod");
symlink("toolbox", "/system/bin/ioctl");
symlink("toolbox", "/system/bin/ionice");
symlink("toolbox", "/system/bin/kill");
symlink("toolbox", "/system/bin/ln");
symlink("toolbox", "/system/bin/log");
symlink("toolbox", "/system/bin/ls");
symlink("toolbox", "/system/bin/lsmod");
symlink("toolbox", "/system/bin/lsof");
symlink("toolbox", "/system/bin/mkdir");
symlink("toolbox", "/system/bin/mount");
symlink("toolbox", "/system/bin/mv");
symlink("toolbox", "/system/bin/nandread");
symlink("toolbox", "/system/bin/netstat");
symlink("toolbox", "/system/bin/newfs_msdos");
symlink("toolbox", "/system/bin/notify");
symlink("toolbox", "/system/bin/printenv");
symlink("toolbox", "/system/bin/ps");
symlink("toolbox", "/system/bin/reboot");
symlink("toolbox", "/system/bin/renice");
symlink("toolbox", "/system/bin/rm");
symlink("toolbox", "/system/bin/rmdir");
symlink("toolbox", "/system/bin/rmmod");
symlink("toolbox", "/system/bin/route");
symlink("toolbox", "/system/bin/schedtop");
symlink("toolbox", "/system/bin/sendevent");
symlink("toolbox", "/system/bin/setconsole");
symlink("toolbox", "/system/bin/setprop");
symlink("toolbox", "/system/bin/sleep");
symlink("toolbox", "/system/bin/smd");
symlink("toolbox", "/system/bin/start");
symlink("toolbox", "/system/bin/stop");
symlink("toolbox", "/system/bin/sync");
symlink("toolbox", "/system/bin/top");
symlink("toolbox", "/system/bin/umount");
symlink("toolbox", "/system/bin/uptime");
symlink("toolbox", "/system/bin/vmstat");
symlink("toolbox", "/system/bin/watchprops");
symlink("toolbox", "/system/bin/wipe");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 0, 0777, 0777, "/system/etc/init.d");
set_perm_recursive(0, 2000, 0755, 0755, "/system/bin");
set_perm(0, 3003, 06755, "/system/bin/ip");
set_perm(0, 3003, 02750, "/system/bin/netcfg");
set_perm(0, 3004, 02755, "/system/bin/ping");
set_perm(0, 2000, 06750, "/system/bin/run-as");
set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");
set_perm(0, 0, 0755, "/system/etc/bluetooth");
set_perm(1000, 1000, 0640, "/system/etc/bluetooth/auto_pairing.conf");
set_perm(3002, 3002, 0444, "/system/etc/bluetooth/blacklist.conf");
set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm(0, 0, 04755, "/system/bin/bash");
symlink("/system/bin/bash", "/system/bin/sh");
show_progress(0.1, 10);
set_perm(0, 0, 0777, "/system/bin/a2sd");
set_perm(0, 0, 0777, "/system/etc/init.d/00banner");
set_perm(0, 0, 0777, "/system/etc/init.d/01sysctl");
set_perm(0, 0, 0777, "/system/etc/init.d/02firstboot");
set_perm(0, 0, 0777, "/system/etc/init.d/04apps2sd");
set_perm(0, 0, 0777, "/system/etc/init.d/99complete");
set_perm(0, 0, 0777, "/system/bin/launcha2sd");
set_perm(0, 0, 0777, "/system/bin/starta2sd");
set_perm(0, 0, 0777, "/system/bin/jita2sd");
set_perm(0, 0, 0777, "/system/bin/chka2sd");
set_perm(0, 0, 0777, "/system/bin/zipalign");
set_perm(0, 0, 0777, "/system/bin/sysinit");
set_perm(0, 0, 0777, "/system/bin/busybox.a2sd");
set_perm(0, 0, 0644, "/system/bin/apps2sd.hlp");
set_perm(0, 0, 0777, "/system/xbin/a2sd");
set_perm(0, 0, 0777, "/system/bin/dtinstall");
set_perm(0, 0, 04755, "/system/xbin/nano");
set_perm(0, 0, 04755, "/system/xbin/sysrw");
set_perm(0, 0, 04755, "/system/xbin/sysro");
set_perm(0, 0, 06755, "/system/bin/su");
set_perm (0, 0, 0777, "/system/bin/a2sd");
set_perm (0, 0, 0777, "/system/etc/init.d/99complete");
set_perm (0, 0, 0777, "/system/bin/launcha2sd");
set_perm (0, 0, 0777, "/system/bin/starta2sd");
set_perm (0, 0, 0777, "/system/bin/chka2sd");
set_perm (0, 0, 0777, "/system/bin/zipalign");
set_perm (0, 0, 0777, "/system/bin/sysinit");
set_perm (0, 0, 0777, "/system/bin/bash");
set_perm (0, 0, 0777, "/system/bin/busybox.a2sd");
set_perm (0, 0, 0644, "/system/bin/apps2sd.hlp");
set_perm (0, 0, 0777, "/system/bin/dtinstall");
set_perm (0, 0, 0777, "/data/dtinstall.launch");
set_perm (0, 0, 0777, "/system/bin/e2fsck");
set_perm (0, 0, 0777, "/system/bin/tune2fs");
set_perm (0, 0, 0777, "/system/etc/init.d/dtapp");
set_perm (0, 0, 0777, "/system/bin/fix_permissions");
symlink("/system/bin/su", "/system/xbin/su");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
symlink("/system/xbin/busybox", "/system/bin/busybox");
package_extract_file("installbusybox", "/tmp/installbusybox");
set_perm(0, 0, 0777, "/tmp/installbusybox");
run_program("/tmp/installbusybox");
show_progress(0.2, 0);
show_progress(0.2, 10);
unmount("/system");
Click to expand...
Click to collapse
I used dsixda Android Kitchen (v0.223-2-gcbde6e4) to deodex, zipaligne, add root permissions, install busybox, cook it and sign it.
I flashed it with Clock Work Mode Recovery (with previous wipes) and it worked, but as I said, I could not make the modem work.
Now I have started the project from the begining and took all the files from the stock ROM. "META-INF" from the CSC, "boot.img" & "system" from the PDA, and "BcmCP.img" from the PHONE (which I think it's the modem).
The stock updater-script contains the following lines:
assert(getprop("ro.product.device") == "GT-S5360" ||
getprop("ro.build.product") == "GT-S5360" ||
getprop("ro.product.device") == "GT-S5360B" ||
getprop("ro.build.product") == "GT-S5360B" ||
getprop("ro.product.device") == "GT-S5360L" ||
getprop("ro.build.product") == "GT-S5360L" ||
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-B5510" ||
getprop("ro.build.product") == "GT-B5510" ||
getprop("ro.product.device") == "GT-B5510B" ||
getprop("ro.build.product") == "GT-B5510B" ||
getprop("ro.product.device") == "GT-B5510L" ||
getprop("ro.build.product") == "GT-B5510L" ||
getprop("ro.product.device") == "GT-S5360T" ||
getprop("ro.build.product") == "GT-S5360T" ||
getprop("ro.product.device") == "GT-S5363" ||
getprop("ro.build.product") == "GT-S5363" ||
getprop("ro.product.device") == "GT-S5369" ||
getprop("ro.build.product") == "GT-S5369" ||
getprop("ro.product.device") == "GT-S5570I" ||
getprop("ro.build.product") == "GT-S5570I" ||
getprop("ro.product.device") == "GT-S5830i" ||
getprop("ro.build.product") == "GT-S5830i" ||
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");
# unmount("/system");
Click to expand...
Click to collapse
I asked myself if you could help me to add the necessary lines to have a clean updater-script, and also include the "BcmCP.img" in the ROM to make the modem work properly. Thank you very much, and sorry if I sound a bit rude, my english is not so good x)
Regards!
Ignacio
nachovallejos said:
Hi guys! This is my new post so I'll introduce myself. My name is Ignacio from Argentina and I'm a newbie ROM developer.
I started my first custom ROM project for the Samsung GT-B5510L two weeks ago, and despite I could flash my first zip file based on a stock ROM, I could not make work the modem. The zip file contained:
< META-INF/ - system/ - boot.img - installbusybox >
I took META-INF folder and installbusybox script from another ROM (with the owner permissions) and the ROM worked, except the modem. Here there is the updater-script lines:
I used dsixda Android Kitchen (v0.223-2-gcbde6e4) to deodex, zipaligne, add root permissions, install busybox, cook it and sign it.
I flashed it with Clock Work Mode Recovery (with previous wipes) and it worked, but as I said, I could not make the modem work.
Now I have started the project from the begining and took all the files from the stock ROM. "META-INF" from the CSC, "boot.img" & "system" from the PDA, and "BcmCP.img" from the PHONE (which I think it's the modem).
The stock updater-script contains the following lines:
I asked myself if you could help me to add the necessary lines to have a clean updater-script, and also include the "BcmCP.img" in the ROM to make the modem work properly. Thank you very much, and sorry if I sound a bit rude, my english is not so good x)
Regards!
Ignacio
Click to expand...
Click to collapse
Amigo busca un archivo que se llama aams, ese es el modem o baseband
Sent from my HTC One X using xda app-developers app
Hi.
I have a big problem with my custom rom. When I install zip I see syntax error line 190...
Please help me, why aroma don't work? When is bad code?
aroma-config
###############################################################
############### #########
############### EDYTUJESZ NA WLANSA ODPOWIEDZIALNOSC! #########
############### #########
###############################################################
##
# Initializing Rom Information
#
ini_set("rom_name", "Witcher OS");
ini_set("rom_version", "v1.1");
ini_set("rom_author", "zimny123z");
ini_set("rom_date", "2014-04-6");
##
# Splash screen
#
splash(4000, "splash");
##
# SET THEME
theme("franzyroy");
#
calibrate("0.9678","16","0.9161","21");
# We'll use aroma's font
setvar(font_path, "ttf/Roboto-Regular.ttf");
fontresload( "0", getvar(font_path), "12" ); #-- "0" = Small Font ( Look at Fonts & UNICODE Demo Below )
fontresload( "1", getvar(font_path), "18" ); #-- "1" = Big Font
# alert("WTF is that?","Installing RealICS", "@info");
loadlang("langs/en.lang");
fontresload( "0", "ttf/DroidSans.ttf", "12" ); #-- "0" = Small Font ( Look at Fonts & UNICODE Demo Below )
fontresload( "1", "ttf/DroidSans.ttf", "18" ); #-- "1" = Big Font
###################################################################################################################
#
# STEP 2 - SHOW ROM INFORMATION
#
viewbox(
#-- Title
"<~welcome.title>",
#-- Text
"<~welcome.text1> <b>"+ini_get("rom_name")+"</b>.\n\n"+
" <~welcome.version>\t: <b><#selectbg_g>"+ini_get("rom_version")+"</#></b>\n"+
" <~welcome.updated>\t: <b><#selectbg_g>"+ini_get("rom_date")+"</#></b>\n\n\n"+
"<~welcome.next>",
#-- Icon
"@welcome"
);
###################################################################################################################
#
# Select Device
#
#-- View selection box to display supported devices
selectbox(
#-- Title
"Choose your device",
#-- Sub Title
"",
#-- Icon: <AROMA Resource Dir>/icons/default.png or <ThemeDir>/icon.default.png
"@default",
#-- Will be saved in /tmp/aroma/device.prop
"device.prop",
#-----------------------------------[ Selectbox With Groups ]----------------------------------#
# TITLE | SUBTITLE | Initial Value #
#------------------+-----------------------------------------------------------+---------------#
"Supported Devices", "", 2, #-- Group 1. key = "selected.1"
"Live With Walkman", "WT19i - Coconut", 1, #-- selected.1 = 4
"Mini Pro", "SK17i - Mango", 0, #-- selected.1 = 1
"Mini", "ST15i - Smultron", 0, #-- selected.1 = 2
"Active", "ST17i - Satsuma", 0 #-- selected.1 = 3
#--------[ Initial Value = 0: Unselected, 1: Selected, 2: Group Item, 3: Not Visible ]---------#
);
###################################################################################################################
#
# INSTALLATION SELECT ITEM
#
selectbox(
# Title
"Bootloader settings",
# Sub Title
"",
# Icon
"icons/install",
# Will be saved in /tmp/aroma-data/<file>
"bl.prop",
# Items ( per 3 arguments ): Title, Subtitle/description, Icon
# Item 1
"Locked", "Select that if you have LOCKED bootloader", "",
# Item 2
"Unlocked", "Select this if you have UNLOCKED bootloader", ""
);
checkbox(
#-- Title
"Standard Installation",
#-- Sub Title
"These standard choice in this rom. If you wish to continue click next.\n"+
"Or select an item in the list below to change how a feature is installed.",
#-- Icon:
"@install",
#-- Will be saved in /tmp/aroma/install.prop
"install.prop",
#------------------------------------------------[ Checkbox Without Group ]----------------------------------------------#
# TITLE | SUBTITLE | Initial Value #
#------------------+-------------------------------------------------------------------------------------+---------------#
"Wipes", "", 2, #-- Group 1. key = "item.1.x"
"Wipe Cache", "Clean partition cache after installation ROM", 1, #-- item.1.1 = Selected by default
"Wipe Userdata", "Clean partition user data after installation ROM", 1, #-- item.1.2 = Selected by default
"Stock Apps", "", 2, #-- Group 2. key = "item.2.x"
"AVG", "Antivirus", 0, #-- item.2.1 = Un-Selected by default
"Battery", "Battery widget", 0, #-- item.2.2 = Un-Selected by default
"NXT Apps", "", 2, #-- Group 3. key = "item.3.x"
"Keyboard", "Xperia S Keyboard", 1, #-- item.3.1 = Selected by default
"PowerSaver", "Xperia NXT PowerSaver app and widget", 0, #-- item.3.2 = Un-Selected by default
"Other Apps", "", 2, #-- Group 4. key = "item.4.x"
"TerminalEmulator", "Pro uber tool for hacker", 0, #-- item.4.1 = Un-Selected by default
"TrackID", "TrackID for Android", 1, #-- item.4.2 = Selected by default
"Office", "Micro**** Office for Android", 0, #-- item.4.3 = Selected by default
"Mods", "", 2, #-- Group 5. key = "item.5.x"
"Ultra Brightness", "Disable auto brightness", 0, #-- item.5.1 = Un-Selected by default
"Disable boot audio", "Disable boot audio like stock in stock", 0, #-- item.5.2 = Un-Selected by default
"Beats Audio", "Beats Audio Engine", 1, #-- item.5.3 = Selected by default
"Wave lock screen", "Replace Xperia NXT lock screen by Wave lock screen", 0, #-- item.5.4 = Un-Selected by default
#--------[ Initial Value = 0: Unselected, 1: Selected, 2: Group Item, 3: Not Visible ]---------#
);
selectbox ("Select ROM Mods", "Please select if type mods below:", "@personalize", "anime.prop",
"Start System Animation", "", 2,
"SONY", "SONY make believe", 1,
"XPERIA", "Stock XPERIA boot animation", 0,
"Witcher", "Witcher is the best", 0,
"Launcher", "", 2,
"Jelly Bean", "Stock JB launcher", 1,
"Xperia", "Stock XPERIA launcher", 0,
"NEXT", "Launcher with a config option", 0,
"File Manager", "", 2,
"ASTRO", "Popular manager", 1,
"File Manager", "Light and fast explorer", 0,
"Root Explorer", "Explorer with root operation", 0,
);
###################################################################################################################
#
# INSTALLATION PROCESS
#
install(
"<~install.title>",
getvar("rom_name") + "\n" +
"<~install.desc>" +
"",
"icons/install"
);
#
checkviewbox(
#-- Title
"<~install.complete>",
#-- Text
"<#selectbg_g><b><~install.cong></b></#>\n\n"+
"<b>"+ini_get("rom_name")+" "+"</b><~install.finish>\n\n",
#-- Icon
"@welcome",
#-- Checkbox Text
"<~reboot.conf>",
#-- Initial Checkbox value ( 0=unchecked, 1=checked ) - (Optional, default:0)
"1",
#-- Save checked value in variable "reboot_it" (Optional)
"reboot_it"
);
###
#
# Check if reboot checkbox was checked
if
getvar("reboot_it")=="1"
then
#
# reboot("onfinish"); - Reboot if anything finished
# reboot("now"); - Reboot Directly
# reboot("disable"); - If you set reboot("onfinish") before, use this command to revert it.
#
reboot("onfinish");
endif;
#---- FINISH
updater-script
ui_print("[*] Mounting Partitions And Cleaning Up");
mount("MTD", "system", "/system");
##---- Bootloader
# Locked
if
file_getprop("/tmp/aroma-data/bl.prop","selected.0") == "1"
then
ui_print("[*] Add files to LOCKED bootloader");
package_extract_dir("Witcher OS/dev/locked", "/system");
endif;
# Unlocked
if
file_getprop("/tmp/aroma-data/bl.prop","selected.0") == "2"
then
ui_print("[*] Add files to UNLOCKED bootloader");
unmount("/system");
format("MTD", "system");
mount("MTD", "system", "/system");
package_extract_dir("Witcher OS/dev/unlocked", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.1.1") == "1"
then
unmount("/cache");
format("MTD", "cache");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.1.2") == "1"
then
unmount("/data");
format("MTD", "userdata");
endif;
show_progress(0.1, 0);
ui_print("[*] Extracting files");
show_progress(0.7, 1330);
package_extract_dir("system", "/system");
package_extract_file("check_data_app", "/tmp/check_data_app");
set_perm(0, 0, 0777, "/tmp/check_data_app");
run_program("/tmp/check_data_app");
mount("MTD", "userdata", "/data");
package_extract_dir("data", "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
ui_print("[*] Make symlinks");
symlink("toolbox", "/system/bin/mount");
symlink("toolbox", "/system/bin/smd");
symlink("toolbox", "/system/bin/notify");
symlink("toolbox", "/system/bin/cmp");
symlink("toolbox", "/system/bin/ifconfig");
symlink("toolbox", "/system/bin/hd");
symlink("toolbox", "/system/bin/stop");
symlink("toolbox", "/system/bin/ioctl");
symlink("toolbox", "/system/bin/setconsole");
symlink("toolbox", "/system/bin/uptime");
symlink("toolbox", "/system/bin/route");
symlink("toolbox", "/system/bin/sync");
symlink("toolbox", "/system/bin/getevent");
symlink("toolbox", "/system/bin/df");
symlink("toolbox", "/system/bin/rmdir");
symlink("toolbox", "/system/bin/lsof");
symlink("toolbox", "/system/bin/lsmod");
symlink("toolbox", "/system/bin/ls");
symlink("toolbox", "/system/bin/ionice");
symlink("toolbox", "/system/bin/top");
symlink("toolbox", "/system/bin/dmesg");
symlink("toolbox", "/system/bin/mkdir");
symlink("toolbox", "/system/bin/chown");
symlink("toolbox", "/system/bin/schedtop");
symlink("toolbox", "/system/bin/dd");
symlink("toolbox", "/system/bin/id");
symlink("toolbox", "/system/bin/umount");
symlink("toolbox", "/system/bin/ctrlaltdel");
symlink("toolbox", "/system/bin/watchprops");
symlink("toolbox", "/system/bin/renice");
symlink("toolbox", "/system/bin/getprop");
symlink("toolbox", "/system/bin/netstat");
symlink("toolbox", "/system/bin/sleep");
symlink("toolbox", "/system/bin/mv");
symlink("toolbox", "/system/bin/insmod");
symlink("toolbox", "/system/bin/date");
symlink("toolbox", "/system/bin/start");
symlink("toolbox", "/system/bin/chmod");
symlink("toolbox", "/system/bin/kill");
symlink("toolbox", "/system/bin/printenv");
symlink("toolbox", "/system/bin/ps");
symlink("toolbox", "/system/bin/wipe");
symlink("toolbox", "/system/bin/sendevent");
symlink("toolbox", "/system/bin/log");
symlink("toolbox", "/system/bin/ln");
symlink("toolbox", "/system/bin/rm");
symlink("toolbox", "/system/bin/nandread");
symlink("toolbox", "/system/bin/newfs_msdos");
symlink("toolbox", "/system/bin/rmmod");
symlink("toolbox", "/system/bin/iftop");
symlink("toolbox", "/system/bin/setprop");
symlink("toolbox", "/system/bin/vmstat");
symlink("toolbox", "/system/bin/cat");
symlink("/system/xbin/su", "/system/bin/su");
symlink("/factory/hdcp.keys","/system/vendor/firmware/hdcp.keys");
symlink("/data/etc/wifi/wl1271-nvs.bin","/system/etc/firmware/ti-connectivity/wl1271-nvs.bin");
show_progress(0.8, 0);
ui_print("[*] Fixing 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(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(1000, 1000, 0771, 0644, "/data/app");
set_perm_recursive(0 ,0 , 0755, 0755, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/be_movie");
set_perm(0, 0, 0755, "/system/etc/be_photo");
set_perm(0, 0, 0755, "/system/etc/be_album");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm(0, 2000, 0755, "/system/bin/sysinit");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 04755, "/system/xbin/busybox");
set_perm(0, 0, 06755, "/system/xbin/su");
show_progress(0.9, 0);
#--LiveWithWalkman
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "1"
then
ui_print("[*] Installing Live With Walkman system");
package_extract_dir("Witcher OS/dev/lww", "/system");
endif;
#--MiniPro
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "2"
then
ui_print("[*] Installing Mini Pro system");
package_extract_dir("Witcher OS/dev/minipro", "/system");
endif;
#--Mini
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "3"
then
ui_print("[*] Installing Mini system");
package_extract_dir("Witcher OS/dev/mini", "/system");
endif;
#--Active
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "4"
then
ui_print("[*] Installing Active system");
package_extract_dir("Witcher OS/dev/active", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.2.1") == "1"
then
package_extract_dir("Witcher OS/Apps/Stock/AVG", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.2.2") == "1"
then
package_extract_dir("Witcher OS/Apps/Stock/Battery", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.3.1") == "1"
then
if
file_getprop("/tmp/aroma/device.prop","selected.1") != "2"
then
package_extract_dir("Witcher OS/Apps/NXT/Keyboard", "/system");
endif;
endif;
if
file_getprop("/tmp/aroma/install.prop","item.3.2") == "1"
then
package_extract_dir("Witcher OS/Apps/NXT/PowerSaver", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.4.1") == "1"
then
package_extract_dir("Witcher OS/Apps/Other/Terminal", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.4.2") == "1"
then
package_extract_dir("Witcher OS/Apps/Other/TrackID", "/data");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.4.3") == "1"
then
package_extract_dir("Witcher OS/Apps/Other/Office", "/system");
endif;
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "1" && file_getprop("/tmp/aroma/install.prop","item.5.1") == "1"
then
package_extract_dir("Witcher OS/Mods/UltraBrightness/lww", "/system");
endif;
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "2" && file_getprop("/tmp/aroma/install.prop","item.5.1") == "1"
then
package_extract_dir("Witcher OS/Mods/UltraBrightness/minipro", "/system");
endif;
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "3" && file_getprop("/tmp/aroma/install.prop","item.5.1") == "1"
then
package_extract_dir("Witcher OS/Mods/UltraBrightness/mini", "/system");
endif;
if
file_getprop("/tmp/aroma/device.prop","selected.1") == "4" && file_getprop("/tmp/aroma/install.prop","item.5.1") == "1"
then
package_extract_dir("Witcher OS/Mods/UltraBrightness/active", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.5.2") == "1"
then
delete("system/media/bootaudio.mp3");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.5.3") == "1"
then
package_extract_dir("Witcher OS/Mods/BeatsAudio", "/system");
endif;
if
file_getprop("/tmp/aroma/install.prop","item.5.4") == "1"
then
package_extract_dir("Witcher OS/Mods/Wave", "/system");
delete("system/app/UxpNxtLockScreen.apk");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.1") == "1"
then
package_extract_dir("Witcher OS/Apps/Boot/SONY",
"/system");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.1") == "2"
then
package_extract_dir("Witcher OS/Apps/Boot/XPERIA",
"/system");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.1") == "3"
then
package_extract_dir("Witcher OS/Apps/Boot/Witcher",
"/system");
delete("system/media/bootaudio.mp3");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.2") == "1"
then
package_extract_dir(Witcher OS/Apps/Launch/JB",
"/system");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.2") == "2"
then
package_extract_dir(Witcher OS/Apps/Launch/Mango",
"/system");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.2") == "3"
then
package_extract_dir(Witcher OS/Apps/Launch/Next",
"/system");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.3") == "1"
then
package_extract_dir(Witcher OS/Apps/Manager/Astro",
"/system");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.3") == "2"
then
package_extract_dir(Witcher OS/Apps/Manager/File Manager","/system");
endif;
if
file_getprop("/tmp/aroma/anime.prop","selected.3") == "3"
then
package_extract_dir(Witcher OS/Apps/Manager/Root Explorer","/system");
endif;
unmount("/system");
unmount("/data");
show_progress(1, 0);
ui_print("[*] Finished!");
doesnt show line numbers in your post (try pastebin next time)
my guess is checkviewbox, never heard of it, there is a checkbox and viewbox option for the UI but no checkviewbox that i know of
demkantor said:
doesnt show line numbers in your post (try pastebin next time)
my guess is checkviewbox, never heard of it, there is a checkbox and viewbox option for the UI but no checkviewbox that i know of
Click to expand...
Click to collapse
I am sorry, but you are wrong
There is checkviewbox. I use this code in my Aroma Based SGY Toolkit and checkviewbox is available. I use Aroma Installer 2.56 Edelweiss.
Code:
checkviewbox(
"Ready To Install",
""+
"All information has been collected for installation.\n\n"+
"Click Next to start installation",
"icons/confirm",
"Reboot the device after installation?",
"0",
"reboot_it"
);
Thanks @hnkotnis, never heard of it, what is the purpose, I guess a check and viewbox combined...
Anyway, I take it aroma works but fails to flash, if so then the issue is in updater-script
Again without line numbers in post its hard to see, but look at the top of this screen shot I'm adding, issue is here with your if endif @zimny123z
Sent from my Nexus 7 using XDA Premium 4 mobile app
http://dl-1.va.us.xda-developers.co....png?key=EAEXW71_q-OoW_KZiXyT9A&ts=1400305343
demkantor said:
Thanks @hnkotnis, never heard of it, what is the purpose, I guess a check and viewbox combined...[/MENTION]
Sent from my Nexus 7 using XDA Premium 4 mobile app
http://dl-1.va.us.xda-developers.co....png?key=EAEXW71_q-OoW_KZiXyT9A&ts=1400305343
Click to expand...
Click to collapse
Yes. It is a combination of check and viewbox.
Here is a screenshot of checkviewbox (Taken from my SGY Toolkit)
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?
I'm trying make a debloat script for myself on crDroid A11.
Twrp gives errro:6 or error:1
Spoiler: updater-script
Code:
run_program("/sbin/mount", "/system");
ui_print("Deleting Unwanted Apps");
delete_recursive("/system/product/app/DeskClock");
delete_recursive("/system/product/app/Etar");
delete_recursive("/system/product/app/ExactCalculator");
delete_recursive("/system/product/app/Jelly");
delete_recursive("/system/product/app/LatinIME");
delete_recursive("/system/product/app/messaging");
delete_recursive("/system/product/priv-app/Contacts");
delete_recursive("/system/product/priv-app/crDroidMusic");
ui_print("DONE!");
ui_print("Extracting files");
package_extract_dir("system", "/system");
ui_print("Setting permissions");
ui_print(" GBoard");
set_perm(0, 0, 0644, "/system/product/app/GBoard/GBoard.apk");
ui_print(" MiX");
set_perm(0, 0, 0644, "/system/product/app/MiX/MiX.apk");
ui_print(" Nova");
set_perm(0, 0, 0644, "/system/product/app/Nova/Nova.apk");
Please correct where i'm goin wrong