[Galaxy S II Android Development] Troubadour666:
Put ALL THE BESTs ROMs in 2nd ROM - DorimanX V8.xx ONLY : BIFTOR,NEATROM,WANAM....

SO, if you understand what i'm saying before, my Biftor V9 updater-script for 2nd ROM purpose is :

ATTENTION

DELETE BLUE LINES IN THIS BLOCK

ADD OR REPLACE RED LINES IN SAME PLACE AS I SHOW YOU HERE

show_progress(0.500000, 0);
ui_print("");
ui_print("");
ui_print("!..............................................!");
ui_print("!.........Welcome To Biftor Rom V9 JB..........!");
ui_print("!.........Welcome To Biftor Rom V9 JB..........!");
ui_print("!.........Welcome To Biftor Rom V9 JB..........!");
ui_print("!.........Welcome To Biftor Rom V9 JB..........!");
ui_print("!.........Welcome To Biftor Rom V9 JB..........!");
ui_print("!.........Welcome To Biftor Rom V9 JB..........!");
ui_print("!.........Welcome To Biftor Rom V9 JB..........!");
ui_print("!..............................................!");
ui_print("A R M I N");
ui_print("AA RR MM II NN");
ui_print("AAA RRR MMM III NNN");
ui_print("AAAA RRRR MMMM IIII NNNN");
unmount("/system");
unmount("/cache");
unmount("/preload");
ui_print("mounting...");
ui_print("mount System");
run_program("/sbin/mount", "/dev/block/mmcblk0p9", "/system");
ui_print("mount data");
run_program("/sbin/mount", "/dev/block/mmcblk0p10", "/data");
ui_print("mount cache");
run_program("/sbin/mount", "/dev/block/mmcblk0p7", "/cache");
[COLOR="Blue"][B]ui_print("mount preload");
run_program("/sbin/mount", "/dev/block/mmcblk0p12", "/preload");[/B][/COLOR]
delete_recursive("/system");
[COLOR="Red"][B]delete_recursive("/data/sec_data");[/B][/COLOR]
delete_recursive("/cache");
delete_recursive("/data/dalvik-cache");
[COLOR="Blue"][B]delete_recursive("/preload");[/B][/COLOR]
delete_recursive("/data/data/com.android.providers.settings");
delete_recursive("/data/data/com.android.settings");
delete_recursive("/data/data/com.android.SystemUI");
delete("/data/system/batterystats.bin");
package_extract_dir("data", "/data");
set_perm(2000, 2000, 0771, "/data/local");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
ui_print("Installing system ...");
show_progress(0.500000, 80);
package_extract_dir("system", "/system");
[COLOR="Red"][B]package_extract_dir("preload/symlink/system/app", "/data/sec_data");[/B][/COLOR]

No change HERE :

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("Simlinking ...");
symlink("busybox", "/system/xbin/[");
symlink("busybox", "/system/xbin/[[");
symlink("busybox", "/system/xbin/acpid");
symlink("busybox", "/system/xbin/addgroup");
symlink("busybox", "/system/xbin/adduser");
symlink("busybox", "/system/xbin/adjtimex");
symlink("busybox", "/system/xbin/ar");
symlink("busybox", "/system/xbin/arp");
symlink("busybox", "/system/xbin/arping");
symlink("busybox", "/system/xbin/ash");
symlink("busybox", "/system/xbin/awk");
symlink("busybox", "/system/xbin/basename");
symlink("busybox", "/system/xbin/lzop");
symlink("busybox", "/system/xbin/lzopcat");
symlink("busybox", "/system/xbin/makedevs");
|
|let the line i switch here
|
symlink("busybox", "/system/xbin/makemime");
symlink("busybox", "/system/xbin/man");
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");
symlink("Roboto-Regular.ttf", "/system/fonts/DroidSans.ttf");
symlink("Roboto-Bold.ttf", "/system/fonts/DroidSans-Bold.ttf");

Most important lines changing :

ALL THE LINES of this block below have their "symlink("/preload/symlink/system/app/" chain replaced by "symlink("/data/sec_data/" chain.

I show you at middle of this post how Biftor want you to replace all these lines by a called external script during process flash

[COLOR="Red"]symlink("/data/sec_data/AllshareMediaServer.apk", "/system/app/AllshareMediaServer.apk");
symlink("/data/sec_data/AllSharePlay.apk", "/system/app/AllSharePlay.apk");
symlink("/data/sec_data/AllshareService.apk", "/system/app/AllshareService.apk");
symlink("/data/sec_data/ApplicationsProvider.apk", "/system/app/ApplicationsProvider.apk");
symlink("/data/sec_data/BackupRestoreConfirmation.apk", "/system/app/BackupRestoreConfirmation.apk");
symlink("/data/sec_data/BadgeProvider.apk", "/system/app/BadgeProvider.apk");
symlink("/data/sec_data/BasicLiveWallpapers.apk", "/system/app/BasicLiveWallpapers.apk");
symlink("/data/sec_data/BCService.apk", "/system/app/BCService.apk");
symlink("/data/sec_data/BluetoothAvrcp.apk", "/system/app/BluetoothAvrcp.apk");
symlink("/data/sec_data/BluetoothMap.apk", "/system/app/BluetoothMap.apk");
symlink("/data/sec_data/CapabilityManagerService.apk", "/system/app/CapabilityManagerService.apk");
symlink("/data/sec_data/CertInstaller.apk", "/system/app/CertInstaller.apk");
symlink("/data/sec_data/ChromeBookmarksSyncAdapter.apk", "/system/app/ChromeBookmarksSyncAdapter.apk");
symlink("/data/sec_data/ClipboardSaveService.apk", "/system/app/ClipboardSaveService.apk");
symlink("/data/sec_data/ClockPackage.apk", "/system/app/ClockPackage.apk");
symlink("/data/sec_data/ContextAwareService.apk", "/system/app/ContextAwareService.apk");
symlink("/data/sec_data/CSC.apk", "/system/app/CSC.apk");
symlink("/data/sec_data/DigitalClock.apk", "/system/app/DigitalClock.apk");
symlink("/data/sec_data/DefaultContainerService.apk", "/system/app/DefaultContainerService.apk");
symlink("/data/sec_data/Divx.apk", "/system/app/Divx.apk");
symlink("/data/sec_data/DrmProvider.apk", "/system/app/DrmProvider.apk");
symlink("/data/sec_data/DSMForwarding.apk", "/system/app/DSMForwarding.apk");
symlink("/data/sec_data/DSMLawmo.apk", "/system/app/DSMLawmo.apk");
symlink("/data/sec_data/EdmVpnServices.apk", "/system/app/EdmVpnServices.apk");
symlink("/data/sec_data/EnterprisePermissions.apk", "/system/app/EnterprisePermissions.apk");
symlink("/data/sec_data/FaceLock.apk", "/system/app/FaceLock.apk");
symlink("/data/sec_data/FlashBarService.apk", "/system/app/FlashBarService.apk");
symlink("/data/sec_data/FmmDM.apk", "/system/app/FmmDM.apk");
symlink("/data/sec_data/FmmDS.apk", "/system/app/FmmDS.apk");
symlink("/data/sec_data/FmRadio.apk", "/system/app/FmRadio.apk");
symlink("/data/sec_data/Gmail.apk", "/system/app/Gmail.apk");
symlink("/data/sec_data/GmsCore.apk", "/system/app/GmsCore.apk");
symlink("/data/sec_data/GoogleBackupTransport.apk", "/system/app/GoogleBackupTransport.apk");
symlink("/data/sec_data/GoogleCalendarSyncAdapter.apk", "/system/app/GoogleCalendarSyncAdapter.apk");
symlink("/data/sec_data/GoogleContactsSyncAdapter.apk", "/system/app/GoogleContactsSyncAdapter.apk");
symlink("/data/sec_data/GoogleFeedback.apk", "/system/app/GoogleFeedback.apk");
symlink("/data/sec_data/GoogleLoginService.apk", "/system/app/GoogleLoginService.apk");
symlink("/data/sec_data/GooglePartnerSetup.apk", "/system/app/GooglePartnerSetup.apk");
symlink("/data/sec_data/GoogleServicesFramework.apk", "/system/app/GoogleServicesFramework.apk");
symlink("/data/sec_data/GoogleTTS.apk", "/system/app/GoogleTTS.apk");
symlink("/data/sec_data/HelvNeueLT.apk", "/system/app/HelvNeueLT.apk");
symlink("/data/sec_data/InputDevices.apk", "/system/app/InputDevices.apk");
symlink("/data/sec_data/InputEventApp_U1_EUR_OPEN.apk", "/system/app/InputEventApp_U1_EUR_OPEN.apk");
symlink("/data/sec_data/JobManager.apk", "/system/app/JobManager.apk");
symlink("/data/sec_data/KeyChain.apk", "/system/app/KeyChain.apk");
symlink("/data/sec_data/Keystring_factory_JBUP.apk", "/system/app/Keystring_factory_JBUP.apk");
symlink("/data/sec_data/LogsProvider.apk", "/system/app/LogsProvider.apk");
symlink("/data/sec_data/MediaUploader.apk", "/system/app/MediaUploader.apk");
symlink("/data/sec_data/minimode-res.apk", "/system/app/minimode-res.apk");
symlink("/data/sec_data/MobileTrackerEngineTwo.apk", "/system/app/MobileTrackerEngineTwo.apk");
symlink("/data/sec_data/MtpApplication.apk", "/system/app/MtpApplication.apk");
symlink("/data/sec_data/MusicFX.apk", "/system/app/MusicFX.apk");
symlink("/data/sec_data/MusicPlayer.apk", "/system/app/MusicPlayer.apk");
symlink("/data/sec_data/NetworkLocation.apk", "/system/app/NetworkLocation.apk");
symlink("/data/sec_data/OmaCP.apk", "/system/app/OmaCP.apk");
symlink("/data/sec_data/OmaDrmPopup.apk", "/system/app/OmaDrmPopup.apk");
symlink("/data/sec_data/PackageInstaller.apk", "/system/app/PackageInstaller.apk");
symlink("/data/sec_data/PanningTryActually.apk", "/system/app/PanningTryActually.apk");
symlink("/data/sec_data/PCWClientS.apk", "/system/app/PCWClientS.apk");
symlink("/data/sec_data/PhoneErrService.apk", "/system/app/PhoneErrService.apk");
symlink("/data/sec_data/Phonesky.apk", "/system/app/Phonesky.apk");
symlink("/data/sec_data/Phone_Util_U1_EUR_OPEN.apk", "/system/app/Phone_Util_U1_EUR_OPEN.apk");
symlink("/data/sec_data/PopupuiReceiver.apk", "/system/app/PopupuiReceiver.apk");
symlink("/data/sec_data/Preconfig.apk", "/system/app/Preconfig.apk");
symlink("/data/sec_data/PreloadInstaller.apk", "/system/app/PreloadInstaller.apk");
symlink("/data/sec_data/PRUI.apk", "/system/app/PRUI.apk");
symlink("/data/sec_data/SamsungCamera.apk", "/system/app/SamsungCamera.apk");
symlink("/data/sec_data/SamsungIME.apk", "/system/app/SamsungIME.apk");
symlink("/data/sec_data/SamsungTTS.apk", "/system/app/SamsungTTS.apk");
symlink("/data/sec_data/SecBluetooth.apk", "/system/app/SecBluetooth.apk");
symlink("/data/sec_data/SecBrowser.apk", "/system/app/SecBrowser.apk");
symlink("/data/sec_data/SecCalculator2.apk", "/system/app/SecCalculator2.apk");
symlink("/data/sec_data/SecCalendarProvider.apk", "/system/app/SecCalendarProvider.apk");
symlink("/data/sec_data/SecContacts.apk", "/system/app/SecContacts.apk");
symlink("/data/sec_data/SecContactsProvider.apk", "/system/app/SecContactsProvider.apk");
symlink("/data/sec_data/SecDownloadProvider.apk", "/system/app/SecDownloadProvider.apk");
symlink("/data/sec_data/SecDownloadProviderUi.apk", "/system/app/SecDownloadProviderUi.apk");
symlink("/data/sec_data/SecFactoryPhoneTest.apk", "/system/app/SecFactoryPhoneTest.apk");
symlink("/data/sec_data/SecFileShareClient.apk", "/system/app/SecFileShareClient.apk");
symlink("/data/sec_data/SecFileShareServer.apk", "/system/app/SecFileShareServer.apk");
symlink("/data/sec_data/SecGallery2.apk", "/system/app/SecGallery2.apk");
symlink("/data/sec_data/SecHTMLViewer.apk", "/system/app/SecHTMLViewer.apk");
symlink("/data/sec_data/SecLauncher2.apk", "/system/app/SecLauncher2.apk");
symlink("/data/sec_data/SecLiveWallpapersPicker.apk", "/system/app/SecLiveWallpapersPicker.apk");
symlink("/data/sec_data/SecMediaProvider.apk", "/system/app/SecMediaProvider.apk");
symlink("/data/sec_data/SecMemoWidget.apk", "/system/app/SecMemoWidget.apk");
symlink("/data/sec_data/SecMms.apk", "/system/app/SecMms.apk");
symlink("/data/sec_data/SecNoteMyFiles.apk", "/system/app/SecNoteMyFiles.apk");
symlink("/data/sec_data/SecOmaDownloadProvider.apk", "/system/app/SecOmaDownloadProvider.apk");
symlink("/data/sec_data/SecPhone.apk", "/system/app/SecPhone.apk");
symlink("/data/sec_data/SecSetupWizard.apk", "/system/app/SecSetupWizard.apk");
symlink("/data/sec_data/SecSettings.apk", "/system/app/SecSettings.apk");
symlink("/data/sec_data/SecSettingsProvider.apk", "/system/app/SecSettingsProvider.apk");
symlink("/data/sec_data/SecTelephonyProvider.apk", "/system/app/SecTelephonyProvider.apk");
symlink("/data/sec_data/SecurityProvider.apk", "/system/app/SecurityProvider.apk");
symlink("/data/sec_data/SerialNumberLabelIndicator_JBUP.apk", "/system/app/SerialNumberLabelIndicator_JBUP.apk");
symlink("/data/sec_data/serviceModeApp_U1_EUR_OPEN.apk", "/system/app/serviceModeApp_U1_EUR_OPEN.apk");
symlink("/data/sec_data/SetupWizard.apk", "/system/app/SetupWizard.apk");
symlink("/data/sec_data/SharedStorageBackup.apk", "/system/app/SharedStorageBackup.apk");
symlink("/data/sec_data/shutdown_JBUP.apk", "/system/app/shutdown_JBUP.apk");
symlink("/data/sec_data/SlideShow.apk", "/system/app/SlideShow.apk");
symlink("/data/sec_data/SmartcardService.apk", "/system/app/SmartcardService.apk");
symlink("/data/sec_data/SNS.apk", "/system/app/SNS.apk");
symlink("/data/sec_data/SPlannerAppWidget.apk", "/system/app/SPlannerAppWidget.apk");
symlink("/data/sec_data/SPPPushClient_Prod.apk", "/system/app/SPPPushClient_Prod.apk");
symlink("/data/sec_data/Stk.apk", "/system/app/Stk.apk");
symlink("/data/sec_data/SyncmlDS.apk", "/system/app/SyncmlDS.apk");
symlink("/data/sec_data/SystemInfo_U1_EUR_OPEN.apk", "/system/app/SystemInfo_U1_EUR_OPEN.apk");
symlink("/data/sec_data/SystemUI.apk", "/system/app/SystemUI.apk");
symlink("/data/sec_data/TasksProvider.apk", "/system/app/TasksProvider.apk");
symlink("/data/sec_data/TwDVFSApp.apk", "/system/app/TwDVFSApp.apk");
symlink("/data/sec_data/UserDictionaryProvider.apk", "/system/app/UserDictionaryProvider.apk");
symlink("/data/sec_data/VideoPlayer.apk", "/system/app/VideoPlayer.apk");
symlink("/data/sec_data/VoiceRecorder.apk", "/system/app/VoiceRecorder.apk");
symlink("/data/sec_data/VoiceSearchStub.apk", "/system/app/VoiceSearchStub.apk");
symlink("/data/sec_data/VpnDialogs.apk", "/system/app/VpnDialogs.apk");
symlink("/data/sec_data/WAPPushManager.apk", "/system/app/WAPPushManager.apk");[/COLOR]

In this block, you have to delete BLEUE lines.

ui_print("Done!");
ui_print("");
ui_print("Setting Permissions");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/init.d/85sqlite");
set_perm(0, 0, 0755, "/system/etc/init.d/Seeder");
set_perm(0, 0, 0755, "/system/etc/init.d/08darky_zipalign");
set_perm(0, 0, 0755, "/system/etc/be_photo");
set_perm(0, 0, 0755, "/system/etc/be_movie");
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, 06755, "/system/bin/su");
symlink("/system/bin/su", "/system/xbin/su");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm(0, 0, 0777, "/system/etc/init.d/85sqlite");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
set_perm(0, 0, 0644, "system/etc/permissions/com.sonyericsson.navigationbar.xml");
set_perm(0, 0, 0755, "system/etc/customization");
set_perm(0, 0, 0755, "system/etc/customization/content");
set_perm(0, 0, 0755, "system/etc/customization/settings");
set_perm(0, 0, 0755, "system/etc/customization/content/com");
set_perm(0, 0, 0755, "system/etc/customization/content/com/sonyericsson");
set_perm(0, 0, 0755, "system/etc/customization/content/com/sonyericsson/r2r");
set_perm(0, 0, 0755, "system/etc/customization/content/com/sonyericsson/r2r/client");
set_perm(0, 0, 0755, "system/etc/customization/content/com/sonyericsson/wallpaperpicker");
set_perm(0, 0, 0755, "system/etc/customization/content/com/sonyericsson/wallpaperpicker/wallpapers");
set_perm(0, 0, 0755, "system/etc/customization/settings/com");
set_perm(0, 0, 0755, "system/etc/customization/settings/com/sonyericsson");
set_perm(0, 0, 0755, "system/etc/customization/settings/com/sonyericsson/android");
set_perm(0, 0, 0755, "system/etc/customization/settings/com/sonyericsson/android/support");
set_perm(0, 0, 0755, "system/etc/customization/settings/com/sonyericsson/androidapp");
set_perm(0, 0, 0755, "system/etc/customization/settings/com/sonyericsson/androidapp/storefront");
set_perm(0, 0, 0755, "system/etc/customization/settings/com/sonyericsson/appextensions");
set_perm(0, 0, 0644, "system/fonts/SoMADigitLight.ttf");
set_perm(0, 0, 0644, "system/framework/com.sonyericsson.navigationbar_impl.jar");
set_perm(0, 0, 0644, "system/app/UxpNxtLockScreen.apk");
symlink("/system/xbin/busybox", "/system/bin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
show_progress(0.100000, 0);
[COLOR="Blue"][B]ui_print("Backing up EFS");
package_extract_file("Biftor/efs_backup.sh", "/tmp/efs_backup.sh");
set_perm(0, 0, 0755, "/tmp/efs_backup.sh");
run_program("/tmp/efs_backup.sh");
ui_print("Flashing kernel ...");
package_extract_file("Biftor/flash_image", "/tmp/flash_image");
set_perm(0, 0, 0777, "/tmp/flash_image");
assert(package_extract_file("Biftor/zImage", "/tmp/zImage"),
run_program("/tmp/flash_image", "/dev/block/mmcblk0p5", "/tmp/zImage"),
delete("/tmp/zImage"));
ui_print("Flashing modem ...");
assert(package_extract_file("Biftor/modem.bin", "/tmp/modem.bin"),
run_program("/tmp/flash_image", "/dev/block/mmcblk0p8", "/tmp/modem.bin"),
delete("/tmp/modem.bin"));
delete("/tmp/flash_image");
delete("/tmp/efs_backup.sh");[/B][/COLOR]
run_program("/sbin/umount", "/system");
run_program("/sbin/umount", "/data");
run_program("/sbin/umount", "/cache");
[COLOR="Blue"][B]run_program("/sbin/umount", "/preload");[/B][/COLOR]
ui_print("complete enjoy it");
ui_print("Thanks for using Biftor ROM");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print("B I F T O R");

SPECIAL biftor_symlink_preload USE :

We can replace all the symlink lines in original updater-script by a called external script.

I want to talk about all lines with "symlink("/preload/symlink/system/app/" chain replaced by "symlink("/data/sec_data/" chain.

When we tchat about it, Biftor provide me a biftor_script_test2.zip that contains a \tmp\biftor_symlink_preload file to add in our final ZIP ROM modded for 2nd position run.

Like me, if you want to use this file; just put this file in \Biftor\ folder of your ZIP ROM and do the change below in your future updater-script

In updater-script , we can call this biftor_symlink_preload script like this : replace all the block lines with :

symlink("/data/sec_data/xxxxxxxxxxxxxxxx.apk", "/system/app/xxxxxxxxxxxxxxxxxxxxxx.apk");

with only these 6 lines between ##### lines

##############Biftor###########

show_progress(0.100000, 0);

package_extract_file("Biftor/biftor_symlink_preload", "/tmp/biftor_symlink_preload");

set_perm(0, 0, 0777, "/tmp/biftor_symlink_preload");

run_program("/tmp/biftor_symlink_preload");

delete("/tmp/biftor_symlink_preload");

###############

in your updater-script , you will have now :

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");
symlink("Roboto-Regular.ttf", "/system/fonts/DroidSans.ttf");
symlink("Roboto-Bold.ttf", "/system/fonts/DroidSans-Bold.ttf");

[COLOR="DarkRed"][B]##############Biftor###########
show_progress(0.100000, 0);
package_extract_file("Biftor/biftor_symlink_preload", "/tmp/biftor_symlink_preload");
set_perm(0, 0, 0777, "/tmp/biftor_symlink_preload");
run_program("/tmp/biftor_symlink_preload");
delete("/tmp/biftor_symlink_preload");
###############[/B][/COLOR]

ui_print("Done!");
ui_print("");
ui_print("Setting Permissions");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/init.d");
set_perm(0, 0, 0755, "/system/etc/init.d/85sqlite");
set_perm(0, 0, 0755, "/system/etc/init.d/Seeder");

Here the result in image :

Have a see of biftor_symlink_preload file script detail :

#!/system/bin/mksh

mount -o remount rw /system

cd /data/sec_data

apk_list=( `ls | grep .apk` )

odex_list=( `ls | grep .odex` )

items=${apk_list[*]}" "${odex_list[*]}

for item in ${items[@]}

do

ln -s /data/sec_data/$item /system/app/$item

done

In an original preload_symlink for 1rst rom, like in NeatRom we have :

#!/system/bin/mksh

mount -o remount rw /system

cd /preload/symlink/system/app

# Can't create array with /sbin/sh, hence we use mksh

apk_list=( `ls | grep .apk` )

odex_list=( `ls | grep .odex` )

items=${apk_list[*]}" "${odex_list[*]}

for item in ${items[@]}

do

ln -s /preload/symlink/system/app/$item /system/app/$item

done

do you see the <> symlinking ? :)

IMPORTANT : other symlink_preload script can be encountered

If this file exists in one of any folder of your future modded ZIP ROM, never forget to change its countains,

this file is <> named , depending of DEV have name it, you can take my universal symlink_preload_for_2nd_rom_only, rename it

as DEV name it in its ROM and place it in the same folder that you find it in the original ZIP ROM. is that seems clear to your ?

In provide 2 version of Biftor ROM V9 updater-script to use to have his great rom in 2nd ROM: just download what you want with the symlink file if needed.

My analyse and result for NeatRom FULL and LITE ROMs updater-script for 2nd ROM:

We can find some other updater-script with some other commands ,

i think with aroma-installer in, like WANAM 14.6 ROM ,

so this is my analyse and result for WANAM V14.6 ROM :