[GAPPS][4.4.x][5.x][arm][arm64][All DPI] Fermion GApps [08-11-2015] - Android Software Development

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Thanks to @-Favstylez- for the banner!
Code:
#include
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices,
* dead SD cards, thermonuclear war, or you
* getting fired because the alarm app failed.
* Please do some research if you have any
* concerns about features included in this
* GApps before flashing them! If you point
* the finger at me for messing up your device,
* I will laugh at you.
*/
About the project
The Fermion GApps is a project made from my own hand. I started the scripts from scratch and have been improving them alone.
Ill make weekly updates, will be released mostly in the weekend.
This work is open source.
Created: 01-April-2015
Last update: 08-November-2015
Follow me in pushbullet to get new updates notifications!​
Features
Support for both KitKat (4.4.x) and Lollipop (5.x)
Support for both 32 and 64 bits processor architecture
Google Play Services and Google Play Games comes DPI optimised
Use of scripts to automatically compile the zips, using extra-compression to make'em smaller
The packages are foolproof, the scripts check you are installing the right version corresponding to your processor architecture and android version
Debloating script add-on to free some space and allow you to use a bigger package
Backup function, you don't have to reinstall the GApps after a ROM update, not even the Add-Ons or the Black Hole, most ROMs support this
DOWNLOADS & PACKAGE COMPARISION
Install or Update​1. Download and copy file to SD card.
2. Reboot into recovery
3. ONLY IN FIRST INSTALL: Do a full wipe (data, system and cache), flash your ROM and then the GApps.
4. Flash the selected zips (Packages and then Add-Ons)
5. Wipe cache and dalvik
6. Reboot the device
Add-Ons​
Black Hole Debloating Script v1.6, it removes:
-AudioFX
-Basic Dreams Wallpaper
-Cell Broadcast Receiver
-CM Wallpapers
-Exchange Services
-Galaxy Wallpaper
-Holo Spiral Wallpaper
-Live Wallpapers
-Live Wallpapers Picker
-Noise Field
-Phase Beam
-Photo Phase
-Photo Table
-Pico Tts
-Visualization Wallpapers
-Stock alarms, ringtones and notifications sounds
Chrome Beta
Chrome Dev
Google Office Suite, wich installs:
-Google Drive
-Google Docs
-Google Sheets
-Google Slides
Google Basic Framework, wich installs (replacing stock/AOSP):
-Google Calendar
-Google Camera
-Google Hangouts
-Google Keyboard
-Google Now Launcher
Outstanding Changelog
(See the folder in downloads link for full apps version)​
08/November/2015
The regular updates corresponding to each package
01/November/2015
Now with GmsCore and PlayGames DPI optimised, for: 160, 240, 320, 480, and unknown or different DPI devices
The regular updates corresponding to each package
18/October/2015
GmsCore removed from NIS package to make a real change between it and TIS, and make the more minimalist GApps package
The regular updates corresponding to each package
11/October/2015
The regular updates corresponding to each package
04/October/2015
The regular updates corresponding to each package
Fixed the script with arm64 zips
27/September/2015
The up-to-date Google Inc. updates to the corresponding packages
New structure, now with six available packages (check out the table for more details), with a new super basic package: NIS (Nought-Integer-Spin), and the previous packages changed; previous QIS is new EIS with some changes, previous EIS is new SIS, and previous SIS is new TIS
Deleted the Fit Add-On
Docs Suite renamed to Office Suite, and System Base renamed to Basic Framework and removed Keep from it
New date format in all the updater-scripts , previous dd-mm-yyyy, new is dd-month-yyyy
Removed Wallet, and added Bookmarks Sync Adapter and Face Unlock with its libraries
Moved from compiling in Linux to compiling in Windows due to more complex but fast compiling
19/September/2015
The up-to-date Google Inc. updates to the corresponding packages
13/September/2015
Now the Lollipop version is functional in both 5.0.2 and 5.1.1 versions, all the corresponding packages renamed from "5.1.x" to "5.x"
Now you can find info about the package you´ve installed in the F-Gapps.prop file located in /system
The up-to-date Google Inc. updates to the corresponding packages
Re-organized scripts and the way they check out the device before install
06/September/2015
Various Google Inc apps updated, including Google App, Maps, and Street View with new Google logo, and for arm devices updated Play Services to 8.1.05
Fixed a librarie with Drive that makes FC when open a PDF
30/August/2015
Up-to-date Google Inc apps updates, this time there were a lot of updates
Updated all the packages and add-ons except for the Black Hole
09/August/2015
Up-to-date Google Inc apps updates
Updated all the packages, Chrome Dev, Docs Suite, System Base, and Chrome Beta for 4.4 and 5.1(arm)
02/August/2015
Re-added the backup function
Google System Web View added to QIS and HIS packages
F.A.Q.​
Im facing FCs in x app
First try doing a full wipe (system, data & cache), flash your ROM, then the GApps, if problem still persist, then wait till next update to see if is fixed, or mail me
Im getting error while flashing
See if it show an error like "This package is for androird KitKat/Lollipop or 32/64 bits, and look for the right version, if dont but it says error 6, mail me, probably a syntax error in the updater-script

Ar-Dinthalion said:
Hi, I get to work and compiled a recov-*snip*
Click to expand...
Click to collapse
Hey! Nice job with this. Would you like me to add your work to The Gapps Central? If you do, can you give me a little more information about it so I can put it in the right section? Like if they have the same PA Gapps script? Or does it use @jajb's script? Or are the scripts entirely different?

TheXGX said:
Hey! Nice job with this. Would you like me to add your work to The Gapps Central? If you do, can you give me a little more information about it so I can put it in the right section? Like if they have the same PA Gapps script? Or does it use @jajb's script? Or are the scripts entirely different?
Click to expand...
Click to collapse
Sure! I PM you

Can we use this with Android 5.1 \ CM12.1 ROM's?

mundano said:
Can we use this with Android 5.1 \ CM12.1 ROM's?
Click to expand...
Click to collapse
Yes, I personally use CM 12.1

Hangouts and Google Messenger seem to be incompatible to some dual-SIM phones like the Moto G. So it would be best not to remove the included Messenger o those ROM's because there is no other way of getting SMS's to work.

mundano said:
Hangouts and Google Messenger seem to be incompatible to some dual-SIM phones like the Moto G. So it would be best not to remove the included Messenger o those ROM's because there is no other way of getting SMS's to work.
Click to expand...
Click to collapse
Yes, its known that those Gapps aren't compatible with Dual-Sim services, so please don't use them for devices like Moto G, if you have the problem PM and I'll send you an AOSP messenger apk, I'm trying to create a acript that avoid uninstall of specified apps by the user, like the PA Gapps did, but it will take me some more days

Ar-Dinthalion said:
Yes, its known that those Gapps aren't compatible with Dual-Sim services, so please don't use them for devices like Moto G, if you have the problem PM and I'll send you an AOSP messenger apk, I'm trying to create a acript that avoid uninstall of specified apps by the user, like the PA Gapps did, but it will take me some more days
Click to expand...
Click to collapse
Nexus4
Flashed latest Euphoria ROM and your latest built GApps and stuck on black screen forever.
#HIS_(Full)_F-Gapps_5.1.x_150415.zip

Subhojit said:
Nexus4
Flashed latest Euphoria ROM and your latest built GApps and stuck on black screen forever.
#HIS_(Full)_F-Gapps_5.1.x_150415.zip
Click to expand...
Click to collapse
Check out your ROM, the GApps don't have the meanings to kill a phone, try out clean install in your ROM, I test the GApps myself in three devices (own, girlfriend, brother), everyone different and all working perfectly

The only thing which attracted me to this thread was the usage of particle physics terms. LOL

parasthakur37 said:
The only thing which attracted me to this thread was the usage of particle physics terms. LOL
Click to expand...
Click to collapse
Thanks , I know physics are cool xD

My new favorite gapps !!

Ar-Dinthalion said:
Thanks , I know physics are cool xD
Click to expand...
Click to collapse
Quark quark

drive2droad said:
My new favorite gapps !!
Click to expand...
Click to collapse
parasthakur37 said:
Quark quark
Click to expand...
Click to collapse
Hey! Thanks! It's good to have nice feedback, I feel charmed xD

Ar-Dinthalion said:
Hey! Thanks! It's good to have nice feedback, I feel charmed xD
Click to expand...
Click to collapse
Hahaha right

Hi
installed with pleasure on galaxy tab pro 10.1 & rom 5.1 cyano
can these gapps be updated on google play
thanx
regards

@Ar-Dinthalion hi, I have a moto g 2014 and tried to edit the updater-script removing some apps from being deleted but i can't flash my edited version of black hole debloat. I get the following error: Error executing updater binary.
things iv'e tried:
1. signing zip
2. using my rom (CM12.1 official) binary
3. using another rom binary
pd. the unedited version of black hole work's. :good:
this is what i have in the updater-script
Code:
ui_print("");
ui_print("Fermion Gapps for Android 5.1.x");
ui_print("");
ui_print("Package: Debloating Script");
ui_print("Updated: 12-04-2015");
show_progress(1, 15);
ui_print("-Unmounting system partition");
run_program("/sbin/busybox", "umount", "/system");
ui_print("-Mounting system partition");
run_program("/sbin/busybox", "mount", "/system");
show_progress(1, 15);
ui_print("-Sending bloatware to a blackhole");
delete_recursive(
"/system/app/BasicDreams",
"/system/app/Browser",
"/system/app/Camera2",
"/system/app/Calendar",
"/system/app/Calculator",
"/system/app/CMWallpapers",
"/system/app/DownloadProviderUi",
"/system/app/Eleven",
"/system/app/Email",
"/system/app/Exchange2",
"/system/app/FM2",
"/system/app/FMRecord",
"/system/app/Galaxy4",
"/system/app/Gallery2",
"/system/app/HoloSpiralWallpaper",
"/system/app/HTMLViewer",
"/system/app/LatinIME",
"/system/app/LiveWallpapers",
"/system/app/LiveWallpapersPicker",
"/system/app/NoiseField",
"/system/app/PhaseBeam",
"/system/app/PhotoPhase",
"/system/app/PhotoTable",
"/system/app/PicoTts",
"/system/app/SoundRecorder",
"/system/app/STK",
"/system/app/VisualizationWallpapers"
);
delete_recursive(
"/system/priv-app/AudioFX",
"/system/priv-app/CalendarProvider",
"/system/priv-app/CellBroadcastReceiver",
);
show_progress(1, 15);
set_metadata_recursive("/system/addon.d", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/app", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/etc/permissions", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/etc/preferred-apps", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/framework", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/priv-app", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
ui_print("-Unmounting system partition");
run_program("/sbin/busybox", "umount", "/system");
ui_print("");
ui_print("Done debloating your ROM!");
any help is greatly appreciated, thank's

Ar-Dinthalion said:
Yes, its known that those Gapps aren't compatible with Dual-Sim services, so please don't use them for devices like Moto G, if you have the problem PM and I'll send you an AOSP messenger apk, I'm trying to create a acript that avoid uninstall of specified apps by the user, like the PA Gapps did, but it will take me some more days
Click to expand...
Click to collapse
With the last CM12.1 updates Google Messenger become compatible with dual Sim phones... At least with Moto G 2014, that is true...

validatus said:
Hi
installed with pleasure on galaxy tab pro 10.1 & rom 5.1 cyano
can these gapps be updated on google play
thanx
regards
Click to expand...
Click to collapse
Thanks!, Sure! But there is a problem that when the data/app is moved to system/app the OS don't recognise it, you can do it, but before installing the updated zip uninstall them directly from Play Site and it should work
blind_rodro said:
@Ar-Dinthalion hi, I have a moto g 2014 and tried to edit the updater-script removing some apps from being deleted but i can't flash my edited version of black hole debloat. I get the following error: Error executing updater binary.
things iv'e tried:
1. signing zip
2. using my rom (CM12.1 official) binary
3. using another rom binary
pd. the unedited version of black hole work's. :good:
this is what i have in the updater-script
Code:
ui_print("");
ui_print("Fermion Gapps for Android 5.1.x");
ui_print("");
ui_print("Package: Debloating Script");
ui_print("Updated: 12-04-2015");
show_progress(1, 15);
ui_print("-Unmounting system partition");
run_program("/sbin/busybox", "umount", "/system");
ui_print("-Mounting system partition");
run_program("/sbin/busybox", "mount", "/system");
show_progress(1, 15);
ui_print("-Sending bloatware to a blackhole");
delete_recursive(
"/system/app/BasicDreams",
"/system/app/Browser",
"/system/app/Camera2",
"/system/app/Calendar",
"/system/app/Calculator",
"/system/app/CMWallpapers",
"/system/app/DownloadProviderUi",
"/system/app/Eleven",
"/system/app/Email",
"/system/app/Exchange2",
"/system/app/FM2",
"/system/app/FMRecord",
"/system/app/Galaxy4",
"/system/app/Gallery2",
"/system/app/HoloSpiralWallpaper",
"/system/app/HTMLViewer",
"/system/app/LatinIME",
"/system/app/LiveWallpapers",
"/system/app/LiveWallpapersPicker",
"/system/app/NoiseField",
"/system/app/PhaseBeam",
"/system/app/PhotoPhase",
"/system/app/PhotoTable",
"/system/app/PicoTts",
"/system/app/SoundRecorder",
"/system/app/STK",
"/system/app/VisualizationWallpapers"
);
delete_recursive(
"/system/priv-app/AudioFX",
"/system/priv-app/CalendarProvider",
"/system/priv-app/CellBroadcastReceiver",
);
show_progress(1, 15);
set_metadata_recursive("/system/addon.d", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/app", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/etc/permissions", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/etc/preferred-apps", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/framework", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/priv-app", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
ui_print("-Unmounting system partition");
run_program("/sbin/busybox", "umount", "/system");
ui_print("");
ui_print("Done debloating your ROM!");
any help is greatly appreciated, thank's
Click to expand...
Click to collapse
Hi, please PM me and I help you
mundano said:
With the last CM12.1 updates Google Messenger become compatible with dual Sim phones... At least with Moto G 2014, that is true...
Click to expand...
Click to collapse
Great, good to hear that news! Thanks!

thanks for the gapps package update !! would there be a separate package for 5.1.1 or it will be the same as 5.1 ?

Related

[Q] Problem with patching CM10 with opendroid

I'm now using CM10 by tezet.
When I tried to patch the ROM (CM10-20121228-NIGHTLY-milestone2 http://forum.xda-developers.com/showthread.php?t=1827801) with Auto-Patcher http://forum.xda-developers.com/showthread.php?t=1719408
An ERROR appeared.
Here's the log.
Code:
ROOT= /cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/ap
TOOL= /cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/ap/patch_tools.tgz
ROM= /cygdrive/f/Users/lxdluke/Downloads/Programs/CM10-20121228-NIGHTLY-milestone2.zip
ROMX= F:\Users\lxdluke\DOWNLO~1\Programs\CM10-2~1.ZIP
### verify tools ###
/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/cygwin/bin/patch
/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/cygwin/bin/tar
/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/Java/bin/jar
/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/Java/bin/java
/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/cygwin/bin/cpio
### verify ROM ###
### running ./auto_patcher /cygdrive/f/Users/lxdluke/Downloads/Programs/CM10-20121228-NIGHTLY-milestone2.zip openpdroid cm
PATH= /cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/ap/tmp20130610123832:/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/Java/bin:/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/cygwin/bin:/cygdrive/f/Users/lxdluke/Downloads/Programs/ApGPackages/cygwin/usr/sbin
### unzip patch tools ###
### unzip patch patches ###
... result of ROM check: RIL= MotoWrigley3GRIL
### probe rom type ###
#### Standard Build Query ####
# VER= v2.9.8
# OS= cygwin 32bit
# VID= 4.1.2
# PID= openpdroid
# MID= cm_milestone2-userdebug
# RID= cm
# ANDR= 4.1
# BDID= 20121229
# DID= milestone2
# BID= 20130201
Patches are openpdroid/4.1/cm/20130201
### DELETE FILES=
### COPY FILES= system/media/PDroid.jpeg
### JAR FILES= system/framework/framework.jar system/framework/core.jar system/framework/services.jar
### APK FILES= system/app/Mms.apk
### IMG FILES=
### TXT FILES=
### unzip rom ###
### create updater script ###
... using Clockworkmod installer ...
# generated updater-script
ui_print("");
ui_print("");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
ui_print("* *");
ui_print("* * The Auto-Patcher * *");
ui_print("* * * * * *");
ui_print("* * by mateor * *");
ui_print("* *");
ui_print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
ui_print("");
ui_print(" Attention");
ui_print(" ************************************");
ui_print("");
ui_print(" There is nothing that can go wrong here");
ui_print(" that reflashing your ROM won't fix.");
ui_print("");
mount("ext3", "EMMC", "/dev/block/mmcblk1p21", "/system");
package_extract_dir("system", "/system");
set_perm_recursive(0, 0, 0755, 0644, "/system");
set_perm_recursive(0, 0, 0755, 0755, "/system/addon.d");
set_perm_recursive(0, 0, 0755, 0755, "/system/bootmenu/binary/");
set_perm_recursive(0, 0, 0755, 0755, "/system/bootmenu/script/");
set_perm_recursive(0, 0, 0755, 0755, "/system/bootmenu/recovery/sbin/");
set_perm_recursive(0, 0, 0755, 0755, "/system/bootmenu/2nd-boot/sbin/");
set_perm(0, 0, 0755, "/system/bootmenu/2nd-init/init");
set_perm(0, 0, 0755, "/system/bootmenu/2nd-boot/init");
set_perm_recursive(0, 2000, 0775, 0664, "/system/bootmenu/config/");
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(0, 0, 0755, "/system/etc/wifi/hostap_wrapper.sh");
set_perm_recursive(1002, 1002, 0755, 0440, "/system/etc/bluetooth");
set_perm(0, 0, 0755, "/system/etc/bluetooth");
set_perm(1000, 1000, 0640, "/system/etc/bluetooth/auto_pairing.conf");
set_perm(3002, 3002, 0444, "/system/etc/bluetooth/blacklist.conf");
set_perm(1002, 1002, 0440, "/system/etc/dbus.conf");
set_perm(1014, 2000, 0550, "/system/etc/dhcpcd/dhcpcd-run-hooks");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/init.d");
set_perm(0, 2000, 0550, "/system/etc/init.goldfish.sh");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/hcitool");
set_perm(0, 0, 06755, "/system/xbin/librank");
set_perm(0, 0, 06755, "/system/xbin/procmem");
set_perm(0, 0, 06755, "/system/xbin/procrank");
set_perm(0, 0, 06755, "/system/xbin/su");
set_perm(0, 0, 06755, "/system/xbin/tcpdump");
set_perm(0, 0, 0755, "/system/etc/motorola/comm_drv/commdrv_fs.sh");
ui_print(" .");
ui_print(" .");
ui_print(" done!");
### create restore.zip ###
### decompile system files ###
... decompile framework.jar ...
... extract preloaded-classes ...
���: preloaded-classes
... decompile core.jar ...
... decompile services.jar ...
���: system/framework/framework-res.apk
... installing framework files ...
... decompile Mms.apk ...
I: Baksmaling...
I: Loading resource table...
I: Loaded.
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: F:\Users\lxdluke\apktool\framework\1.apk
I: Loaded.
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Done.
I: Copying assets and libs...
### copy patch openpdroid/4.1/cm/20130201 ###
... copying system/media/PDroid.jpeg ...
... overwriting system/media/PDroid.jpeg from openpdroid ...
`patches/openpdroid/4.1/cm/20130201/system/media/PDroid.jpeg' -> `./system/media/PDroid.jpeg'
### delete patch openpdroid/4.1/cm/20130201 ###
### jar patch openpdroid/4.1/cm/20130201 ###
... apply framework.patch ...
Reversed (or previously applied) patch detected! Skipping patch.
6 out of 6 hunks ignored -- saving rejects to file smali/android/view/ViewGroup.smali.rej
... apply preloaded.patch ...
GARBAGE=
GARBAGE= tmp/system/framework/framework.jar.out/smali/android/view/ViewGroup.smali.rej
... apply core.patch ...
GARBAGE=
GARBAGE=
... apply services.patch ...
142 out of 143 hunks FAILED -- saving rejects to file smali/com/android/server/ServerThread.smali.rej
!!! PATCHING FAILED FOR com/android/server/ServerThread.smali !!!
!!! patch error for com/android/server/ServerThread.smali !!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!! error: failed com/android/server/ServerThread.smali in services.jar cannot be remedied
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Can anyone please tell me how to correct it?
tried it several times some months ago. allways the same error as yours. than i read the first post of opd and autopatcher thread. there you can find the solution. -> "it isn't possible to patch quarx's roms yet". tezets is based on quarx's defy rom.
if you want to use opd, you have to use engle_mars's cm10.1. he patched directly the source, cause autopatcher didn't do this job as well.
lulli1 said:
tried it several times some months ago. allways the same error as yours. than i read the first post of opd and autopatcher thread. there you can find the solution. -> "it isn't possible to patch quarx's roms yet". tezets is based on quarx's defy rom.
if you want to use opd, you have to use engle_mars's cm10.1. he patched directly the source, cause autopatcher didn't do this job as well.
Click to expand...
Click to collapse
you mean autopatcher works with engle_mars's cm10.1 ?
---------------------------------------------------------------
update: I have found PDroid had been intergrated in his ROM. Thx for your help.

Updater-script problems

hello all ive been working on my rom but i cant get it working in recovery it says the binary couldnt be read correctly, attached is my working folder zip from kitchen please help look into it i cant figure it out
Rename update-binary.orig to update-binary. That might be the issue mate!
Could you help me to check this problem? Thank you very much!
http://forum.xda-developers.com/showthread.php?t=2390510
Rahulrulez said:
Rename update-binary.orig to update-binary. That might be the issue mate!
Click to expand...
Click to collapse
Hi, I know this has nothing to do with what the OP asked on the thread, but it's related to Updater-Script so here goes:
I've notice a lot of people have been using delete_recursive instead of format command to wipe system.
Why is that? Is it safer to use delete_recursive? Because I'm using Android Kitchen and it creates an Updater-Script with format command.
It's the first time I'm using Android Kitchen though so I'm afraid of testing the zip I made before I'm sure it's safe to use format. Can somebody help me?
PS.: I didn't want to create another thread to ask this so I apologize in advance.
MaKTaiL said:
Hi, I know this has nothing to do with what the OP asked on the thread, but it's related to Updater-Script so here goes:
I've notice a lot of people have been using delete_recursive instead of format command to wipe system.
Why is that? Is it safer to use delete_recursive? Because I'm using Android Kitchen and it creates an Updater-Script with format command.
It's the first time I'm using Android Kitchen though so I'm afraid of testing the zip I made before I'm sure it's safe to use format. Can somebody help me?
PS.: I didn't want to create another thread to ask this so I apologize in advance.
Click to expand...
Click to collapse
It all started with mmc bug that has been presented by ICS source for GS2.
format() command was triggering hard brick.
You can find very good and full explanation of the bug in GS2 section of the forum but here is very short and simple explanation of the bug.
The MMC_CAP_ERASE command (part of format) was writing bunch of zeros in MMC killing the phone.
After kernel source was released we were able to disable that command and it became safer but some devs still use delete_recursive instead of format.
Both command do same and have pretty much same affect but delete_recursive might be few milliseconds slower than format()
Format command is formatting the partition where delete_recursive is deleting everything from partition (folders, subfolders, files etc) and then goes over the partition again to make sure nothing left behind (thus "recursive").
For new install format() command is cleaner, I think.
But if dev has modified his script at some point it will just keep using it till new modification is required. So there may be no need for delete_recursive any more but since it's in script and script is working no one is really looking into it.
Hope this make sense.
agat63 said:
It all started with mmc bug that has been presented by ICS source for GS2.
format() command was triggering hard brick.
You can find very good and full explanation of the bug in GS2 section of the forum but here is very short and simple explanation of the bug.
The MMC_CAP_ERASE command (part of format) was writing bunch of zeros in MMC killing the phone.
After kernel source was released we were able to disable that command and it became safer but some devs still use delete_recursive instead of format.
Both command do same and have pretty much same affect but delete_recursive might be few milliseconds slower than format()
Format command is formatting the partition where delete_recursive is deleting everything from partition (folders, subfolders, files etc) and then goes over the partition again to make sure nothing left behind (thus "recursive").
For new install format() command is cleaner, I think.
But if dev has modified his script at some point it will just keep using it till new modification is required. So there may be no need for delete_recursive any more but since it's in script and script is working no one is really looking into it.
Hope this make sense.
Click to expand...
Click to collapse
Thanks for reserving your time to answer me. Really appreciate it.
I came from a Galaxy S2 before the S4 and I'm aware of the MMC_CAP_ERASE problems.
I just didn't know it was caused by the format command. Thanks for explaining it to me.
I'll keep using delete_recursive from now on.
Here's my log...
Installing '/sdcard/GEM4.3_By:Joeyxc.zip'...
Checking for MD5 file...
I:Cannot find file /sdcard/GEM4.3_By:Joeyxc.zip.md5
Skipping MD5 check: no MD5 file found.
line 4 col 17: syntax error, unexpected STRING, expecting $end
line 5 col 19: syntax error, unexpected STRING, expecting ',' or ')'
2 parse errors
E:Error executing updater binary in zip '/sdcard/GEM4.3_By:Joeyxc.zip'
Error flashing zip '/sdcard/GEM4.3_By:Joeyxc.zip'
Updating partition details...
Please help
Sent from my SGH-I337 using Tapatalk 2
Joeyxc said:
hello all ive been working on my rom but i cant get it working in recovery it says the binary couldnt be read correctly, attached is my working folder zip from kitchen please help look into it i cant figure it out
Click to expand...
Click to collapse
The issue is the format the text is in. Also in addition to renaming update-binary.orig to update-binary, rename update-script to updater-script. Open the updater-script.orig with a text editor and look at the format and compare it to the text you have in 'update-script'. Change the format of the text in 'update-script' to match the format of 'updater-script.orig'. You should be able to notice right away that you will need to add parenthesis', semi-colons, and apostrophes as you are missing all of them. If you need more help let me know, I can look over/help you edit it.
Edit: Come to think about it, you just needed to convert update script to updater-script using kitchen.
Can I ask an updater-script related problem here please.
I write a few CWM utils (see my thread)
Some of these scripts perform a factory reset (wipe /data essentially)
On the GS2, this used to work great, but on the GS4, doing this also wipes the entire internal SD card!
I think this happening because there is a link to sd card in /data/media/0 perhaps.
My question is, how can I perform such a wipe of /data in the updater-script and keep internal SD Card in tact?
I've tried delete_recursive and format
But always, the script ends up wiping the entire SD card along with /data
example of commands I've been using in the updater-script are:
format("ext4", "EMMC", "/dev/block/mmcblk0p29", "0");
mount("ext4", "EMMC", "/dev/block/mmcblk0p29", "/data");
delete_recursive("/data");
I've also tried unmounting /sdcard before attempting one of the above commands:
unmount("/sdcard");
run_program("/sbin/umount", "/sdcard");
(also tried both of these with /data/media/0)
both actually unmounted /sdcard (as I could no longer access it in recovery) but both the format and the delete_recursive command still managed to wipe the entire internal SD card.
If unmounted, I am then unable to get recovery to see the sdcard until the device is rebooted.
I've tried to remount the sdcard to get it back online for the current recovery session in the updater-script using:
mount("vfat", "EMMC", "/dev/block/mmcblk0p1", "/sdcard");
but this doesn't seem to work.
Any pointers or advice would be greatly appreciated as this has been driving me nuts! :silly:
:good:
FWIW, I had issues with data too, I was unable to restore shealth2 since it is preinstalled in /data/app and I would soft-brick everytime I tried flashing it until I finally used the script below with success.
unmount("/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p29", "/data");
mount("ext4", "EMMC", "/dev/block/mmcblk0p16", "/system");
package_extract_dir("system", "/system");
set_perm_recursive(0, 0, 0755, 0644, "/system");
run_program("adb", "install", "-r", "added_files/system/app/HealthContentProvider.apk");
run_program("adb", "install", "-r", "added_files/system/app/SensorService.apk");
package_extract_dir("data", "/data");
set_perm_recursive(1000, 1000, 0771, 0644, "/data/app");
run_program("adb", "install", "-r", "added_files/data/app/SHealth2.apk");
unmount("/system");
unmount("/data");
Sent from my TouchPad using xda app-developers app
Data wiping on S4:
Recent CWM versions have seemed to handle this without issue.
I'm still using my alpha CWM and it handles this case without a problem.
Are you using current recovery repos from CM as well as device repos?
Removed 3 posts as they are not development related.
Please - If you're just downloading/flashing a ROM, not developing or creating it - try that ROM's specific thread.
If one isn't there consider asking in the Q&A for that specific device.
hey guys i know it's been some time no one has replied to this thread, i hope someone can help though... Here is my issue, i am building my own rom from stock SGH-M919V (Galaxy S4..carrier Video Tron) rom using latest android kitchen, i have removed lots of bloatware, removed knox, deodexed the apps..etc.etc. I am ready to build the rom so i do that, then comes the time to flash the new rom created by android-kitchen i am using Philz Touch recovery latest, this is the error i get in recovery:
Code:
Installing update...
format() expects 5 args, got 4
E:Error in /storage/sdcard1/stock.zip
(Status 7)
Installation aborted.
some times i get...format() expects 3 args, got 4...if i try a different setting in recovery.
I know a lot of ppl had this issue before, i just cant find the solution for my phone, model, rom specifically.
Android Kitchen says it needs to convert the update-script to updater-script...so i do what it suggest...ive learn this was the issue i am having...can someone point to the right direction to fix this and to successfully flash my rom?
BTW this is the very first rom i try to bake so i am farely new to this. I would also like to remove the format() command and use delete_recursive() ..how do i implement it ? do i just rename the command ?.
THANKS ! :fingers-crossed:
I am making a rom in cwm but I always get the error status of 0 , help me fill in the updater script correctly?
This is the updater script made from cygwin:
Code:
show_progress(0.1, 0);
format("MTD", "system");
mount("MTD", "system", "/system");
format("MTD", "userdata");
package_extract_dir("system", "/system");
symlink("dumpstate", "/system/bin/dumpcrash");
symlink("debuggerd", "/system/bin/csview");
symlink("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/touchinput");
symlink("toolbox", "/system/bin/playback");
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, 0544, "/system/etc/install-recovery.sh");
set_perm_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor/etc");
set_perm_recursive(0, 0, 0755, 0644, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/firmware");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
set_perm(0, 1000, 0755, "/system/xbin/busybox");
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
set_perm(0, 0, 06755, "/system/xbin/su");
symlink("/system/xbin/su", "/system/bin/su");
show_progress(0.1, 10);
show_progress(0.2, 0);
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "boot"),
delete("/tmp/boot.img"));
show_progress(0.2, 10);
unmount("/system");
The rom is for s3 mini

[GUIDE][Noobs]How to Create your own stock based XPERIA ROM

Hey Guys,
My name is Braa, I’am just a new developer here in the XDA and today I’am going to show you a complete guide on how to make your own “XPERIA” Stock Based ROM.
First of all you have to get the Stock XPERIA Firmware of your device
Let’s get started to build our ROM:
First Step: (Getting the STOCK FTF File of your Device)
1) Get the latest stock FTF Firmware of your device
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
2) Open it using 7-ZIP
3) Now we will be focusing on the most important file “system.sin” Just Extract it to your desktop
4)Now go to the XPERIA Flashtool  Tools  Sin Editor   Choose the system.sin file you have just extracted to your desktop Extract Data
5)Now you will have a file called “system.ext4”
6)Get a tool called “EXT4 Unpacker” then select that file  Extract all the files into a folder
Congrlatiouns you have got your stock device firmware but not in the form of “FTF” instead in the form of “ZIP”
But this was not everything we will now move into more advanced part but don’t panic everything will be explained easily with screenshots so, Let’s GO !
Understanding the System folder you have just extracted
System Folder Contains the Majority of ROM Files, now we have to explain the SYSTEM Folder structure
1. app : contain all the system's app and the odex file of system app
2. bin : contain the command and bin files for the rom
3. vendor: specified vendor system. you have your specific vendor's app, libs, and config files here also contains the Themes (XPERIA 2011-2012 Devices)
4. etc : additional setting and files for the ROM.
5. font : It’s Clear it contains the fonts
6. framework : system's framework files and the odex file for framework
7. lib : drivers, modules, kernel related files for the rom
8. media: media files-ringtones, notification, bootanimation.
10. usr : files needed for keyboard, bluetooth, etc.
11. xbin : additional command and bin files (busybox is usually installed here)
12. build.prop file : Contains your Device default properties
Q)DEODEX VS ODEX
A)Most of custom rom available is deodexed rom while our stock rom is half deodexed rom. I'll try to explain it in most simple way. First of all, we should understand that mostly every app in android consist of three part, *apk files, *dex/odex files, and lib files.
ODEXED rom means that *dex file needed to run the app is extracted from the apk file and placed in same folder with the apk files (/system/app). the positive side, it consume less internal memory and a execute faster. the negative side, it makes the app uncostumizable (cannot apply custom themes) and need more space in system partition.
DEODEXED rom means that *dex file needed to run the app is extracted from the apk file and placed in /data/dalvik-cache. the positive side, the app can be themed (full customizable) and consume less system partition. we could put more app in /system/app in deodexed rom. the negative side, it consume a lot of internal memory. please be cautious with the internal memory space if you use deodexed rom. (NOTE: if you start from stock rom, you may use Kitchen to convert odexed to deodexed rom).
Now if you want a really looking good Ui ROM u will stick into DeOdexing your ROM
Note: What was explained above in the part of ODEX VS DEODEX doesn’t mean that DeOdexing ROM will decrease it’s Performance
Q)How to DeOdex My ROM ?
A)Bro, This could be done using many tools like (Universal DeOdexer or DsiXda Kitchen)
Now I will explain the Dsixda kitchen method
Tools Needed:
Cygwin
JDK
Android Kitchen
Steps:
1)Extract Cygwin.zip  Run Setup.exe  Next  Install from local directory  Set the root directory as it  Set the local package directory as cygwin_packages  Select that reload icon and install all
2)Now Click on Cygwin icon on desktop you will see that commands appear automaticly
3)Now Extract the kitchen Android-Kitchen-0.224.zip then rename it to “kitchen” (without the quotations)
4)Then copy that folder into c:/Cygwin  home  your username folder
5)Open the cygwin and write these commnds
6)Cd kitchen  ./menu
7) Just compress the system folder we have just extracted from the ext4 unpacker into ZIP File
8)Now copy that file to C:\cygwin\home\Your username\kitchen\original_update
9)Open the cygwin  then write the kitchen commands I’ve mentioned above
10)Select “Set up working folder of your ROM”  Press Enter  Select the zip you compressed  It will ask you to add a null boot.img agree to this
11)Select the “Advanced Options”  Select De-Odex files in your ROM  Select “b” DeOdex both folders (Recommended) wait till the process finishes
Updater Script ! (Nightmare to a lot of noobs)
Sorry Guys I can’t help you with this part  even my updater-script in my ROM I forgot how I did it here is it you can base your updater-script on it
Just download it !
WE’VE Done this part !
Modifying your ROM
1)Adding Tweaks
1.1)Adding init.d Support
Adding init.d support means that you can run your favorite scripts and tweaks on your Stock Based ROM
Download the file “enable_init.d.zip” and put all its files inside system folder into your ROM System Folder
1.2)Modifying Build.Prop for more stability
Here’s a lot of Build.prop Tweaks
1. Force launcher into memory
ro.HOME_APP_ADJ=1
2. Raise JPG quality to 100%
ro.media.enc.jpeg.quality=100
3. VM Heapsize; higher RAM, higher hp can be
dalvik.vm.heapsize=48m
4. Render UI with GPU
debug.sf.hw=1
5. Decrease dialing out delay
ro.telephony.call_ring.delay=0
6. Helps scrolling responsiveness
windowsmgr.max_events_per_sec=150
7. Save battery
wifi.supplicant_scan_interval=180
pm.sleep_mode=1
ro.ril.disable.power.collapse=0
8. Disable debugging notify icon on statusbar
persist.adb.notify=0
9. Increase overall touch responsiveness
debug.performance.tuning=1
video.accelerate.hw=1
10. Raise photo and video recording quality
ro.media.dec.jpeg.memcap=8000000
ro.media.enc.hprof.vid.bps=8000000
11. Signal (3G) tweaks
ro.ril.hsxpa=2
ro.ril.gprsclass=10
ro.ril.hep=1
ro.ril.enable.dtm=1
ro.ril.hsdpa.category=10
ro.ril.enable.a53=1
ro.ril.enable.3g.prefix=1
ro.ril.htcmaskw1.bitmask=4294967295
ro.ril.htcmaskw1=14449
ro.ril.hsupa.category=5
12. Net speed tweaks
net.tcp.buffersize.default=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.wifi=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.umts=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.gprs=4096,87380,256960,4096,16384,256960
net.tcp.buffersize.edge=4096,87380,256960,4096,16384,256960
13. Disable blackscreen issue after a call
ro.lge.proximity.delay=25
mot.proximity.delay=25
14. Fix some application issues
ro.kernel.android.checkjni=0
15. Phone will not wake up from hitting volume rocker
ro.config.hwfeature_wakeupkey=0
16. Force button lights on when screen is on
ro.mot.buttonlight.timeout=0
17. Disable boot animation for faster boot
debug.sf.nobootanimation=1
18. Miscellaneous flags
ro.config.hw_menu_unlockscreen=false
persist.sys.use_di ring=0
persist.sys.purgeable_assets=1
dalvik.vm.dexopt-flags=m=y
ro.mot.eri.losalert.delay=1000
Q)How can I add these lines to my build.prop
A)I will tell you
Download a tool called “Notepad++”
Extract the build.prop file from your ROM then right click on it then edit with notepad++
Go to Last line:
Then add
# Tweak Name
Tweak Properties
#
Done
Here’s my build.prop I used in my ROM: its just a sample copy what you want from it
2)Bravia Engine 2 with X-Reality
Download the file of BE-2 then paste it in your ROM then add these lines to build.prop
# X-Reality Engine
ro.service.swiqi2.supported = true
persist.service.swiqi2.enable = 1
#
ro.service.swiqi3.supported = true
persist.service.swiqi3.enable = 1
#
3) Modifying the wallpapers of the ROM
Go to etc\customization\content\com\sonyericsson\wallpaperpicker\wallpapers
Then Add your Wallpapers
4) Modifying the Themes
system\vendor\overlay\framework
Themes are found here
In newer XPERIA Devices Themes are found in /app
5) Adding Supercharger intiries
Just add these lines to your build.prop
# V6 SuperCharger, OOM Grouping & Priority Fixes created by zeppelinrox.
# DO NOT DELETE COMMENTS. DELETING COMMENTS WILL BREAK UNINSTALL ROUTINE!
# BEGIN OOM_MEM_Settings
ro.FOREGROUND_APP_MEM=1536
ro.VISIBLE_APP_MEM=3072
ro.PERCEPTIBLE_APP_MEM=4096
ro.HEAVY_WEIGHT_APP_MEM=20480
ro.SECONDARY_SERVER_MEM=8192
ro.BACKUP_APP_MEM=14080
ro.HOME_APP_MEM=1024
ro.HIDDEN_APP_MEM=10240
ro.EMPTY_APP_MEM=15360
# END OOM_MEM_Settings
# BEGIN OOM_ADJ_Settings
ro.FOREGROUND_APP_ADJ=0
ro.VISIBLE_APP_ADJ=3
ro.PERCEPTIBLE_APP_ADJ=3
ro.HEAVY_WEIGHT_APP_ADJ=5
ro.SECONDARY_SERVER_ADJ=7
ro.BACKUP_APP_ADJ=6
ro.HOME_APP_ADJ=1
ro.HIDDEN_APP_MIN_ADJ=12
ro.EMPTY_APP_ADJ=15
# END OOM_ADJ_Settings
# End of V6 SuperCharged Entries
6) Making your Apptray Transparent
Just Replace the apptray_pane_bg.9.png I provided to your Home.apk in store mode
7) Changing the bootanimation (HDPI)
XPERIA Z1
XPERIA Z2
8) Media not scanned or No pictures found here’s the solution
Download Rescan media root and put it in data folder of your ROM
If you are on 4.1.2 and HDPI Device (Maybe works on XHDPI or MDPI)
So my ROM “Doomsday” is open source for you, it contains full XPERIA Z2 Ui just take the download link from my signature then download it and take what you need from it but don’t forget to give me the proper credits and press thanks for me
Thread will be updated soon :laugh:
Downloads
My Personal ROM Updater-script
My Build.prop
[URL="http://d-h.st/j59"]Doomsday ROM[/URL]
EXT4 Unpacker
X-Reality and BE-2
apptray_pane_bg.9
XPERIA Z1 Bootanimation (HDPI)
XPERIA Z2 Bootanimation (HDPI)
Init.d Support
Why it says, Installation aborted.. I tried 3,4 times to make installation from custom rom. file... but unable to flash by using that rom the ROM.
Error shows this image in background.. (Can not make ScreenShot)
@Eliminator79 ho did you made a working custom rom from the above tutorial?
I have created 15-20 custom rom in different ways from different tutorials from xda, mostly it stops installation with an error. 4-5 times it started phone just for showing start animation ...
I quit....
Right now Installed stock rom back. after wasting 2 days..
Might be an updater-script
aatifaneeq said:
@Eliminator79 ho did you made a working custom rom from the above tutorial?
I have created 15-20 custom rom in different ways from different tutorials from xda, mostly it stops installation with an error. 4-5 times it started phone just for showing start animation ...
I quit....
Right now Installed stock rom back. after wasting 2 days..
Click to expand...
Click to collapse
Might be an updater-script problem
What's the error that comes during installation ?
Status 7 or Status 6 :good:
no status..
it just says
installation abort..
this time is says , aborted status (0)
View attachment 2893076
Here is the updater script code
Code:
show_progress(0.1, 0);
format("MTD", "system");
mount("MTD", "system", "/system");
package_extract_dir("system", "/system");
symlink("dumpstate", "/system/bin/dumpcrash");
symlink("debuggerd", "/system/bin/csview");
symlink("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/chcon");
symlink("toolbox", "/system/bin/setenforce");
symlink("toolbox", "/system/bin/grep");
symlink("toolbox", "/system/bin/runcon");
symlink("toolbox", "/system/bin/touchinput");
symlink("toolbox", "/system/bin/getsebool");
symlink("toolbox", "/system/bin/setsebool");
symlink("toolbox", "/system/bin/restorecon");
symlink("toolbox", "/system/bin/getenforce");
symlink("toolbox", "/system/bin/load_policy");
symlink("toolbox", "/system/bin/cp");
symlink("toolbox", "/system/bin/playback");
symlink("toolbox", "/system/bin/du");
set_perm_recursive(0, 0, 0755, 0644, "/system");
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_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm(0, 2000, 0755, "/system/vendor/lib/hw");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
show_progress(0.1, 10);
show_progress(0.2, 0);
show_progress(0.2, 10);
unmount("/system");
Also replaced, updater script with yours 1, stil same error..
aatifaneeq said:
this time is says , aborted status (0)
View attachment 2893076
Here is the updater script code
Code:
show_progress(0.1, 0);
format("MTD", "system");
mount("MTD", "system", "/system");
package_extract_dir("system", "/system");
symlink("dumpstate", "/system/bin/dumpcrash");
symlink("debuggerd", "/system/bin/csview");
symlink("mksh", "/system/bin/sh");
symlink("toolbox", "/system/bin/chcon");
symlink("toolbox", "/system/bin/setenforce");
symlink("toolbox", "/system/bin/grep");
symlink("toolbox", "/system/bin/runcon");
symlink("toolbox", "/system/bin/touchinput");
symlink("toolbox", "/system/bin/getsebool");
symlink("toolbox", "/system/bin/setsebool");
symlink("toolbox", "/system/bin/restorecon");
symlink("toolbox", "/system/bin/getenforce");
symlink("toolbox", "/system/bin/load_policy");
symlink("toolbox", "/system/bin/cp");
symlink("toolbox", "/system/bin/playback");
symlink("toolbox", "/system/bin/du");
set_perm_recursive(0, 0, 0755, 0644, "/system");
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_recursive(0, 0, 0755, 0555, "/system/etc/ppp");
set_perm_recursive(0, 2000, 0755, 0644, "/system/vendor");
set_perm(0, 2000, 0755, "/system/vendor/lib");
set_perm(0, 2000, 0755, "/system/vendor/lib/hw");
set_perm_recursive(0, 2000, 0755, 0755, "/system/xbin");
show_progress(0.1, 10);
show_progress(0.2, 0);
show_progress(0.2, 10);
unmount("/system");
Click to expand...
Click to collapse
you should set correct code partition in your update script
i mean this lines:
format("MTD", "system");
mount("MTD", "system", "/system");
you can find this lines in another custom roms which correct work on your phone.
just find this lines in that custom rom ( in meta inf folder in that custom rom ) then copy that lines and replace that in your update script
if your custom rom has a kernel , you should find the partition of kernel at the end of update script and replace in end of your update script
finally replace the update binary in that custom rom which correct work on your rom with your update binary.
do this work at the end of your work.means make your rom first then do this work with your rom.zip file
hope can help you
I have also used the working update script downloaded from Eliminator79's 2nd post... but still displaying same error..
Maybe works
aatifaneeq said:
I have also used the working update script downloaded from Eliminator79's 2nd post... but still displaying same error..
Click to expand...
Click to collapse
Replace the whole META-INF folder of your ROM with mine
Strongly will work :good:
Also did this too..also replaced with few other Xperia J roms, not worked. even replaced only apps folder. but in vain..
aatifaneeq said:
I have also used the working update script downloaded from Eliminator79's 2nd post... but still displaying same error..
Click to expand...
Click to collapse
NO bro
just used update binary from another rom which work correct on your phone
but about update script just edit 2 lines that i told you before
find it in update script for another custom rom for your phone and replace with your update script ( just 2 lines )
of course when you build your rom then do this
Thanks for the reply.
I already did this too. but it only shows boot animation , i have waited 10-12 minutes but nothing changed... same story all the time
aatifaneeq said:
Thanks for the reply.
I already did this too. but it only shows boot animation , i have waited 10-12 minutes but nothing changed... same story all the time
Click to expand...
Click to collapse
Give me the META-INF from your custom rom ( which you made it ) and META-INF from other custom roms which correct work on your phone
hamidreza2010 said:
Give me the META-INF from your custom rom ( which you made it ) and META-INF from other custom roms which correct work on your phone
Click to expand...
Click to collapse
Bro, thanks for the reply..
Here are both META-INF folders, both are not working when i replace (delete and paste all new files) system folder.
P.S. Installation only works when i modify app files from Doomsday ROM Jlo v5 ROM, But i also want to change all other system folders, not only app folder.
aatifaneeq said:
Bro, thanks for the reply..
Here are both META-INF folders, both are not working when i replace (delete and paste all new files) system folder.
P.S. Installation only works when i modify app files from Doomsday ROM Jlo v5 ROM, But i also want to change all other system folders, not only app folder.
Click to expand...
Click to collapse
ok just 2 thing:
1- Your roms has custom kernel ?
2- Give me META-INF folders from another normal custom rom not aroma
hamidreza2010 said:
ok just 2 thing:
1- Your roms has custom kernel ?
2- Give me META-INF folders from another normal custom rom not aroma
Click to expand...
Click to collapse
i do not have any other meta inf :|
Well, i found a rom, and using it as base, where i have replaced app, framework folder and installation worked and Phone is working fine.. But when i replace complete system directory, it stopped on boot screen..
about kernal, i am using stock kernal.sin
here is the meta inf that worked only with app/framework folder
thanks dude
Great TUT :highfive: :good: :victory:
Now I get my ROM installed ok
But BIGGEST PROBLEM I FACE! On Rebooting it stucks on splash screen and then it reboots! :'(
Check my updater script!
Help me someone please :'( Been working a lot but this sh*t doesn't resolves!
I use Xperia SP and this is my whole META-INF Folder
Thanks in advance. Anyone who can help me
Meta INF download below :
Tech N You said:
thanks dude
Great TUT :highfive: :good: :victory:
Now I get my ROM installed ok
But BIGGEST PROBLEM I FACE! On Rebooting it stucks on splash screen and then it reboots! :'(
Check my updater script!
Help me someone please :'( Been working a lot but this sh*t doesn't resolves!
I use Xperia SP and this is my whole META-INF Folder
Thanks in advance. Anyone who can help me
Meta INF download below :
Click to expand...
Click to collapse
Probably one of these
1)Framework issue (Both .jar & -res.apk)
2)Modified Wrongly Build.prop
3)Permissions are set wrongly
4)/lib problems
Just check and let me know

[HOWTO] Combined emulated storage for the Nexus S (LVM) [NEW CM11: 20150726-NIGHTLY]

Combined emulated storage for the Nexus S (LVM)
UPDATE! NEW CM11 ROM, version: 20150726-NIGHTLY
This is a guide to make your Nexus S use an internal emulated SDcard, and mount it using MTP (just like the Nexus 4 and newer smartphones)!
In order to do that, we have to enable the Logical volume partitioning (LVM) on our rom and recovery, using this great guide. Kudos to @steven676 because without him, this wouldn't be possible.
The end result is this:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
in a Nexus S running latest CM11 M12
It’s going to be a long run, so take your time. This is a summary of what we are going to do:
Summary:
TAKE A FULL BACKUP OF EVERYTHING, INCLUDING SDCARD! EVERYTHING WILL BE ERASED! WE ABSOLUTELY NEED A TWRP BACKUP!
Create a modified recovery Use my custom built TWRP recovery, which will recognize the logical volumes and use the internal storage as SDcard
Create the specified logical volumes
Reboot into the recovery, and restore the twrp backup
Modify the updater-script of the ROM you want to use and change the partition directories
Create a modified boot image.
Archive the modified boot image inside the rom .zip
Create a modified framework-res.apk
Archive the modified framework-res.apk inside the ROM .zip
Copy the now-ready ROM .zip inside the mounted storage, and install it
Boot into CM11 with ~13GB data+sdcard combined storage!
Requirements:
My git repository: https://github.com/KreAch3R/crespo-lvm-emulated-storage
LVM repository: https://github.com/steven676/android-lvm-mod
A ROM .zip (CM11-M12)
A kernel boot.img (as of M12, I used stock)(Guru kernel)http://forum.xda-developers.com/nexus-s/development/kernel-guru-t2783561
A custom built TWRP recovery (you can download mine from the Downloads post, or build it yourself)
Android SDK tools configured on your PC (ADB running etc)
Android Image Kitchen
Apktool 2 (setup and ready, using this guide and this file (renamed to apktool.jar).
Basic linux, terminal, adb knowledge
This is my first guide, so any help is appreciated! I have used these steps and they worked for me, but YMMV. I will try to help you as much as I can, but you should be aware that using this guide may brick your phone. Please, be patient, read the guide carefully, take any precautions you want, and of course, I cannot be held responsible for whatever happens to your device. You are following this guide with your own risk (DISCLAIMER). Also, please excuse my wrong terminology, if there is any, and correct any mistakes.
So, if you are ready, let's start!
Instructions
BACKUP, BACKUP, BACKUP!
Backup everything you can, we need a nandroid backup, sdcard backup, etc. Try to imagine you have lost your phone, and backup what you would have missed!
[*]USE MY CUSTOM BUILT TWRP RECOVERY
Or, if you want to modify it yourself folllow the instructions:
If you only want to take an existing build of a recovery and modify it to accept and recognize LVM volumes, but you don't care about the internal media storage depicted as sdcard, follow the steps below:
Unpack the recovery image you want using the Android Image Kitchen
Copy the contents of lvm-bin/ in the lvm repository to lvm/ in the ramdisk folder
Copy devices/crespo/lvm.conf to lvm/etc/lvm.conf in the ramdisk folder
Intergrate the changes from my git files
(NOTE: I think fstab.herring and recovery.fstab should be identical to fstab.herring from boot.img, and twrp.fstab should be the only different, - but it is just a theory, not tested)
Repack
Flash using fastboot
If you want to compile your own TWRP build and make it accept LVM, you have to build TWRP from source using @daxxter 's build flags from this post (c/p here for clarity):
BoardConfig.mk (device_samsung_crespo):
Code:
PRODUCT_COPY_FILES += device/samsung/crespo/twrp.fstab:recovery/root/etc/twrp.fstab
DEVICE_RESOLUTION := 480x800
RECOVERY_SDCARD_ON_DATA := true
RECOVERY_GRAPHICS_USE_LINELENGTH := true
BOARD_HAS_NO_REAL_SDCARD := true
TW_NO_USB_STORAGE := true
TW_INTERNAL_STORAGE_PATH := "/data/media"
TW_INTERNAL_STORAGE_MOUNT_POINT := "data"
twrp.fstab
Code:
# mount point fstype device
/system ext4 /dev/lvpool/system
/cache yaffs2 cache
/data ext4 /dev/lvpool/userdata
/misc mtd misc
/boot mtd boot
/recovery mtd recovery
/bootloader mtd bootloader
/radio mtd radio
/efs yaffs2 efs flags=display="EFS";backup=1;canbewiped
You also have to include the other modifications needed for LVM, such as the LVM folder and the necessary changes to init.rc. I suppose you can incorporate them in the building process, possibly doing modifications in the crespo tree files, but I didn't build it this way because I didn't think of it at the time, so the process is undocumented. I just built the modified twrp and then used the above process (with apktool) to make the lvm changes. Gross and ugly, I know, but I learn with all of this, too. Next time will be better.
[*]CREATE SPECIFIED LOGICAL VOLUMES
I created 2 logical partitions on the device, on top of the mmcblk0p1, mmcblk0p2, mmcblk0p3 partitions.
LVs:
/dev/lvpool/system 1G
/dev/lvpool/userdata 13.5G
Gracious command sharing by @RappyBMX :
Code:
# adb shell
# /lvm/sbin/lvm pvcreate /dev/block/mmcblk0p1 /dev/block/mmcblk0p2 /dev/block/mmcblk0p3
# /lvm/sbin/lvm vgcreate lvpool /dev/block/mmcblk0p1 /dev/block/mmcblk0p2 /dev/block/mmcblk0p3
# /lvm/sbin/lvm lvcreate -L 1G -n system lvpool
# /lvm/sbin/lvm lvcreate -L 13G -n userdata lvpool
OLD WAY:
Android OS is supposed to only recognize and mount the first two, (/system and /userdata). SDcard is created and symlinked in the /data/media folder, as per official Google examples.
TWRP Recovery, on the other hand, can mount all three of them, and uses the "media" partition as sdcard storage. I had to hack it like that for now, because I could not build the twrp recovery from source, using the correct make-configs (32bit system only here!), and the current crespo recovery can't recognize the emulated storage correctly, at least as far as I could try.
NOTE #2:
The plan is to build a correctly modified twrp for this crespo configuration when I get to my main PC and ditch the /lvpool/media partition. At this point I should mention that /media/ for a recovery-only partition is a terrible name, but I was following the lvm guide to the point, and I didn’t have time to re-do it just for a name change. If you want to change it, also change it in every .fstab file / mount point you find it.
CURRENT WAY:
Android OS is recognizing and mounting /system and /userdata as /data. The SDcard is created and symlinked in the /data/media folder, as per official Google examples.
Steps:
Boot into the recovery you just created (hope it boots)
Use the LVM guide and give the necessary lvm commands to create the logical volumes (ATTENTION! THIS WILL ERASE EVERYTHING!)
Reboot
Advanced format /system to ext4
Advanced format /data (type "yes")
Full Wipe-factory reset
In general, format everything you can to ext4 to make TWRP recognize them. No harm done, as your device is empty.
Now our phone is ready to take our modified rom.zip, once we build it!
[*]ROM UPDATER-SCRIPT
Open the ROM .zip and navigate to the updater-script. Replace the block partitions with the logical ones (I didn’t mess with ‘EMMC’ tag at all). Example, from this:
Code:
mount("ext4", "EMMC", "/dev/block/platform/s3c-sdhci.0/by-name/userdata ", "/data")
To this:
Code:
mount("ext4", "EMMC", "/dev/lvpool/userdata", "/data")
Save the file.
This is an example of a working updater-script file (the one used in my latest LVM-CM11-M12 rom):
Code:
assert(getprop("ro.product.device") == "crespo" ||
getprop("ro.build.product") == "crespo" ||
abort("This package is for device: crespo; this device is " + getprop("ro.product.device") + "."););
mount("ext4", "EMMC", "/dev/lvpool/system", "/system");
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
set_metadata("/tmp/backuptool.functions", "uid", 0, "gid", 0, "mode", 0644);
run_program("/tmp/backuptool.sh", "backup");
unmount("/system");
show_progress(0.500000, 0);
mount("ext4", "EMMC", "/dev/lvpool/userdata", "/data");
package_extract_file("system/bin/otasigcheck.sh", "/tmp/otasigcheck.sh");
package_extract_file("META-INF/org/cyanogenmod/releasekey", "/tmp/releasekey");
set_metadata("/tmp/otasigcheck.sh", "uid", 0, "gid", 0, "mode", 0755);
run_program("/tmp/otasigcheck.sh");
sha1_check(read_file("/tmp/releasekey"),"7241e92725436afc79389d4fc2333a2aa8c20230") && abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
unmount("/data");
format("ext4", "EMMC", "/dev/lvpool/system", "0", "/system");
mount("ext4", "EMMC", "/dev/lvpool/system", "/system");
package_extract_dir("recovery", "/system");
package_extract_dir("system", "/system");
symlink("../bin/fsck.f2fs", "/system/bin/dump.f2fs");
symlink("../xbin/su", "/system/bin/su");
symlink("Roboto-Bold.ttf", "/system/fonts/DroidSans-Bold.ttf");
symlink("Roboto-Regular.ttf", "/system/fonts/DroidSans.ttf");
symlink("busybox", "/system/xbin/[", "/system/xbin/[[",
"/system/xbin/adjtimex", "/system/xbin/arp", "/system/xbin/ash",
"/system/xbin/awk", "/system/xbin/base64", "/system/xbin/basename",
"/system/xbin/bbconfig", "/system/xbin/blkid", "/system/xbin/blockdev",
"/system/xbin/brctl", "/system/xbin/bunzip2", "/system/xbin/bzcat",
"/system/xbin/bzip2", "/system/xbin/cal", "/system/xbin/cat",
"/system/xbin/catv", "/system/xbin/chattr", "/system/xbin/chcon",
"/system/xbin/chgrp", "/system/xbin/chmod", "/system/xbin/chown",
"/system/xbin/chroot", "/system/xbin/chvt", "/system/xbin/clear",
"/system/xbin/cmp", "/system/xbin/comm", "/system/xbin/cp",
"/system/xbin/cpio", "/system/xbin/crond", "/system/xbin/crontab",
"/system/xbin/cut", "/system/xbin/date", "/system/xbin/dc",
"/system/xbin/dd", "/system/xbin/deallocvt", "/system/xbin/depmod",
"/system/xbin/devmem", "/system/xbin/df", "/system/xbin/diff",
"/system/xbin/dirname", "/system/xbin/dmesg", "/system/xbin/dnsd",
"/system/xbin/dos2unix", "/system/xbin/du", "/system/xbin/echo",
"/system/xbin/ed", "/system/xbin/egrep", "/system/xbin/env",
"/system/xbin/expand", "/system/xbin/expr", "/system/xbin/false",
"/system/xbin/fbsplash", "/system/xbin/fdisk", "/system/xbin/fgconsole",
"/system/xbin/fgrep", "/system/xbin/find", "/system/xbin/findfs",
"/system/xbin/flash_lock", "/system/xbin/flash_unlock",
"/system/xbin/flashcp", "/system/xbin/flock", "/system/xbin/fold",
"/system/xbin/free", "/system/xbin/freeramdisk", "/system/xbin/fstrim",
"/system/xbin/fsync", "/system/xbin/ftpget", "/system/xbin/ftpput",
"/system/xbin/fuser", "/system/xbin/getenforce", "/system/xbin/getopt",
"/system/xbin/getsebool", "/system/xbin/grep", "/system/xbin/groups",
"/system/xbin/gunzip", "/system/xbin/gzip", "/system/xbin/halt",
"/system/xbin/head", "/system/xbin/hexdump", "/system/xbin/hwclock",
"/system/xbin/id", "/system/xbin/ifconfig", "/system/xbin/inetd",
"/system/xbin/insmod", "/system/xbin/install", "/system/xbin/ionice",
"/system/xbin/iostat", "/system/xbin/ip", "/system/xbin/kill",
"/system/xbin/killall", "/system/xbin/killall5", "/system/xbin/less",
"/system/xbin/ln", "/system/xbin/losetup", "/system/xbin/ls",
"/system/xbin/lsattr", "/system/xbin/lsmod", "/system/xbin/lspci",
"/system/xbin/lsusb", "/system/xbin/lzcat", "/system/xbin/lzma",
"/system/xbin/lzop", "/system/xbin/lzopcat", "/system/xbin/man",
"/system/xbin/matchpathcon", "/system/xbin/md5sum", "/system/xbin/mesg",
"/system/xbin/mkdir", "/system/xbin/mke2fs", "/system/xbin/mkfifo",
"/system/xbin/mkfs.ext2", "/system/xbin/mkfs.vfat",
"/system/xbin/mknod", "/system/xbin/mkswap", "/system/xbin/mktemp",
"/system/xbin/modinfo", "/system/xbin/modprobe", "/system/xbin/more",
"/system/xbin/mount", "/system/xbin/mountpoint", "/system/xbin/mpstat",
"/system/xbin/mv", "/system/xbin/nanddump", "/system/xbin/nandwrite",
"/system/xbin/nbd-client", "/system/xbin/netstat", "/system/xbin/nice",
"/system/xbin/nmeter", "/system/xbin/nohup", "/system/xbin/nslookup",
"/system/xbin/ntpd", "/system/xbin/od", "/system/xbin/openvt",
"/system/xbin/patch", "/system/xbin/pgrep", "/system/xbin/pidof",
"/system/xbin/ping", "/system/xbin/pipe_progress", "/system/xbin/pkill",
"/system/xbin/pmap", "/system/xbin/poweroff", "/system/xbin/printenv",
"/system/xbin/printf", "/system/xbin/ps", "/system/xbin/pstree",
"/system/xbin/pwd", "/system/xbin/pwdx", "/system/xbin/rdate",
"/system/xbin/rdev", "/system/xbin/readlink", "/system/xbin/realpath",
"/system/xbin/renice", "/system/xbin/reset", "/system/xbin/resize",
"/system/xbin/restorecon", "/system/xbin/rev", "/system/xbin/rm",
"/system/xbin/rmdir", "/system/xbin/rmmod", "/system/xbin/route",
"/system/xbin/run-parts", "/system/xbin/runcon", "/system/xbin/rx",
"/system/xbin/sed", "/system/xbin/selinuxenabled", "/system/xbin/seq",
"/system/xbin/sestatus", "/system/xbin/setconsole",
"/system/xbin/setenforce", "/system/xbin/setfiles",
"/system/xbin/setkeycodes", "/system/xbin/setsebool",
"/system/xbin/setserial", "/system/xbin/setsid", "/system/xbin/sh",
"/system/xbin/sha1sum", "/system/xbin/sha256sum",
"/system/xbin/sha3sum", "/system/xbin/sha512sum", "/system/xbin/sleep",
"/system/xbin/smemcap", "/system/xbin/sort", "/system/xbin/split",
"/system/xbin/stat", "/system/xbin/strings", "/system/xbin/stty",
"/system/xbin/sum", "/system/xbin/swapoff", "/system/xbin/swapon",
"/system/xbin/sync", "/system/xbin/sysctl", "/system/xbin/tac",
"/system/xbin/tail", "/system/xbin/tar", "/system/xbin/taskset",
"/system/xbin/tee", "/system/xbin/telnet", "/system/xbin/telnetd",
"/system/xbin/test", "/system/xbin/tftp", "/system/xbin/tftpd",
"/system/xbin/time", "/system/xbin/timeout", "/system/xbin/top",
"/system/xbin/touch", "/system/xbin/tr", "/system/xbin/traceroute",
"/system/xbin/true", "/system/xbin/ttysize", "/system/xbin/tune2fs",
"/system/xbin/umount", "/system/xbin/uname", "/system/xbin/uncompress",
"/system/xbin/unexpand", "/system/xbin/uniq", "/system/xbin/unix2dos",
"/system/xbin/unlzma", "/system/xbin/unlzop", "/system/xbin/unxz",
"/system/xbin/unzip", "/system/xbin/uptime", "/system/xbin/usleep",
"/system/xbin/uudecode", "/system/xbin/uuencode", "/system/xbin/vi",
"/system/xbin/watch", "/system/xbin/wc", "/system/xbin/wget",
"/system/xbin/which", "/system/xbin/whoami", "/system/xbin/xargs",
"/system/xbin/xz", "/system/xbin/xzcat", "/system/xbin/yes",
"/system/xbin/zcat");
symlink("libGLESv2.so", "/system/lib/libGLESv3.so");
symlink("logcat", "/system/bin/lolcat");
symlink("mksh", "/system/bin/sh");
symlink("mount.exfat", "/system/bin/fsck.exfat",
"/system/bin/mkfs.exfat");
symlink("pigz", "/system/xbin/unpigz");
symlink("toolbox", "/system/bin/cat", "/system/bin/chcon",
"/system/bin/chmod", "/system/bin/chown", "/system/bin/clear",
"/system/bin/cmp", "/system/bin/cp", "/system/bin/date",
"/system/bin/dd", "/system/bin/df", "/system/bin/dmesg",
"/system/bin/du", "/system/bin/getenforce", "/system/bin/getevent",
"/system/bin/getprop", "/system/bin/getsebool", "/system/bin/grep",
"/system/bin/hd", "/system/bin/id", "/system/bin/ifconfig",
"/system/bin/iftop", "/system/bin/insmod", "/system/bin/ioctl",
"/system/bin/ionice", "/system/bin/kill", "/system/bin/ln",
"/system/bin/load_policy", "/system/bin/log", "/system/bin/ls",
"/system/bin/lsmod", "/system/bin/lsof", "/system/bin/md5",
"/system/bin/mkdir", "/system/bin/mkswap", "/system/bin/mount",
"/system/bin/mv", "/system/bin/nandread", "/system/bin/netstat",
"/system/bin/newfs_msdos", "/system/bin/notify", "/system/bin/printenv",
"/system/bin/ps", "/system/bin/r", "/system/bin/readlink",
"/system/bin/renice", "/system/bin/restart", "/system/bin/restorecon",
"/system/bin/rm", "/system/bin/rmdir", "/system/bin/rmmod",
"/system/bin/route", "/system/bin/runcon", "/system/bin/schedtop",
"/system/bin/sendevent", "/system/bin/setconsole",
"/system/bin/setenforce", "/system/bin/setfattr", "/system/bin/setprop",
"/system/bin/setsebool", "/system/bin/sleep", "/system/bin/smd",
"/system/bin/start", "/system/bin/stop", "/system/bin/swapoff",
"/system/bin/swapon", "/system/bin/sync", "/system/bin/top",
"/system/bin/touch", "/system/bin/umount", "/system/bin/uptime",
"/system/bin/vmstat", "/system/bin/watchprops",
"/system/bin/wipe");
set_metadata_recursive("/system", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/addon.d", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/bin", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/bin/app_process", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:zygote_exec:s0");
set_metadata("/system/bin/clatd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:clatd_exec:s0");
set_metadata("/system/bin/debuggerd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:debuggerd_exec:s0");
set_metadata("/system/bin/dhcpcd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:dhcp_exec:s0");
set_metadata("/system/bin/dnsmasq", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:dnsmasq_exec:s0");
set_metadata("/system/bin/drmserver", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:drmserver_exec:s0");
set_metadata("/system/bin/hostapd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:hostapd_exec:s0");
set_metadata("/system/bin/installd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:installd_exec:s0");
set_metadata("/system/bin/keystore", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:keystore_exec:s0");
set_metadata("/system/bin/mediaserver", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:mediaserver_exec:s0");
set_metadata("/system/bin/mksh", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:shell_exec:s0");
set_metadata("/system/bin/mtpd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:mtp_exec:s0");
set_metadata("/system/bin/netcfg", "uid", 0, "gid", 3003, "mode", 02750, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/bin/netd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:netd_exec:s0");
set_metadata("/system/bin/ping", "uid", 0, "gid", 0, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:ping_exec:s0");
set_metadata("/system/bin/pppd", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:ppp_exec:s0");
set_metadata("/system/bin/racoon", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:racoon_exec:s0");
set_metadata("/system/bin/rild", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:rild_exec:s0");
set_metadata("/system/bin/run-as", "uid", 0, "gid", 2000, "mode", 0750, "capabilities", 0xc0, "selabel", "u:object_r:runas_exec:s0");
set_metadata("/system/bin/sdcard", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:sdcardd_exec:s0");
set_metadata("/system/bin/servicemanager", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:servicemanager_exec:s0");
set_metadata("/system/bin/surfaceflinger", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:surfaceflinger_exec:s0");
set_metadata("/system/bin/vold", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:vold_exec:s0");
set_metadata("/system/bin/wpa_supplicant", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:wpa_exec:s0");
set_metadata_recursive("/system/etc/dhcpcd", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:dhcp_system_file:s0");
set_metadata("/system/etc/dhcpcd/dhcpcd-run-hooks", "uid", 1014, "gid", 2000, "mode", 0550, "capabilities", 0x0, "selabel", "u:object_r:dhcp_system_file:s0");
set_metadata_recursive("/system/etc/init.d", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/etc/init.d", "uid", 0, "gid", 0, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/etc/install-cm-recovery.sh", "uid", 0, "gid", 0, "mode", 0544, "capabilities", 0x0);
set_metadata_recursive("/system/etc/ppp", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0555, "capabilities", 0x0, "selabel", "u:object_r:ppp_system_file:s0");
set_metadata("/system/recovery-from-boot.p", "uid", 0, "gid", 0, "mode", 0644, "capabilities", 0x0);
set_metadata("/system/vendor", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/vendor/bin", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:gpsd_exec:s0");
set_metadata("/system/vendor/bin", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/bin/pvrsrvinit", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:pvrsrvinit_exec:s0");
set_metadata("/system/vendor/etc", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/firmware", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/lib", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/lib/egl", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/vendor/lib/hw", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/xbin", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/librank", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/procmem", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/procrank", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/su", "uid", 0, "gid", 0, "mode", 06755, "capabilities", 0x0, "selabel", "u:object_r:su_exec:s0");
show_progress(0.200000, 0);
delete("/system/bin/otasigcheck.sh");
show_progress(0.200000, 10);
package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh");
package_extract_file("system/bin/backuptool.functions", "/tmp/backuptool.functions");
set_metadata("/tmp/backuptool.sh", "uid", 0, "gid", 0, "mode", 0755);
set_metadata("/tmp/backuptool.functions", "uid", 0, "gid", 0, "mode", 0644);
run_program("/tmp/backuptool.sh", "restore");
delete("/system/bin/backuptool.sh");
delete("/system/bin/backuptool.functions");
show_progress(0.200000, 10);
package_extract_file("boot.img", "/tmp/boot.img");write_raw_image("/tmp/boot.img", "boot");
show_progress(0.100000, 0);
unmount("/system");
[*]MODIFY BOOT.IMG
Unpack boot.img
Copy the contents of lvm-bin/ in the git repository to lvm/ in the ramdisk folder.
2)Copy devices/crespo/lvm.conf to lvm/etc/lvm.conf in the ramdisk folder.
Intergrate the changes for the following files: fstab.herring, init.herring.rc, init.herring.usb.rc, default.prop
Repack
[*]UPDATE ROM .ZIP W/ NEW BOOT.IMG
Open the ROM .zip again and drag ‘n’ drop the kernel boot.img inside. It should replace the other one.
[*]MODIFY FRAMEWORK-RES.APK
Extract the .apk from the ROM .zip
Install the framework to apktool [apktool if ...]
Decode the framework-res.apk [apktool d ...]
Intergrate the changes
Build the .apk [apktool b ...]
Open simultaneously the created apk and the unmodified one. Drag ‘n’ drop the changed file from the created one to the unmodified. Save the unmodified file. Be careful to use the now-modified-previously-unmodified .apk from now on.
TIP: DO NOT use spaces in the apktool directories. Keep it simple to avoid errors.
[*]UPDATE ROM .ZIP W/ NEW FRAMEWORK-RES.APK
Open the ROM .zip again, drag ‘n’ drop the new framework-res.apk inside /system/framework, and save the file.
[*]INSTALLATION
Copy the modified ROM .zip inside the mounted USB storage. Install it using the recovery.
[*]BOOT
Let’s hope that everything went as planned and now you are rocking a Nexus S with a ~13GB combined internal storage! MTP should work, too.
Downloads
My TWRP, BOOT, ROM files, if you want to use them (MOVED TO AFH):
AFH LINK IS DOWN WITH NO LOCAL BACKUPS, SORRY
Current Download: CM11-20150726-NIGHTLY ROM (08/2015)
CM11-20150726-NIGHTLY ROM
Here is a CM11-M11 ROM File (11/2014) I found lying around:
CM11-M11-LVM-emulatedSD-guru101.zip
NEW FILE!: custom built 2.8.4.0 TWRP
@daxxter 's custom built TWRP 2.8.0.0 recovery (modifed by me for ext4)
CM11-M9 ROM Files (9/2014)
Mediafire links:
TWRP Recovery
BOOT img
CM11-M9 ROM
So, this is it. I hope I covered all edges, and did not make any mistakes (it is a big guide). Please let me know if something is wrong, or you have any suggestions or advice.
did the partition is compatible with art?can i install much app in art mode?
Hi!
I'm trying to follow your guide but i'm struck with the twrp recovery, i can boot in the twrp but the recovery doesn't mount any partition and i can't lunch the lvm commands from the other thread (i got "permission denied"). So i made successfully to the lvm partitions with the modded clockwork recovery, format the usb storage, copy the twrp backup and the reflash the modded twrp but even after that the twrp recovery won't mount anything and won't find the backup.
I'll attach my twrp img, can you post yours or help me someway?
cshnz said:
did the partition is compatible with art?can i install much app in art mode?
Click to expand...
Click to collapse
I have not tried ART at all, sorry. You can install many apps using the Dalvik runtime, though, just like any other phone.
Zeratul91 said:
Hi!
I'm trying to follow your guide but i'm struck with the twrp recovery, i can boot in the twrp but the recovery doesn't mount any partition and i can't lunch the lvm commands from the other thread (i got "permission denied"). So i made successfully to the lvm partitions with the modded clockwork recovery, format the usb storage, copy the twrp backup and the reflash the modded twrp but even after that the twrp recovery won't mount anything and won't find the backup.
I'll attach my twrp img, can you post yours or help me someway?
Click to expand...
Click to collapse
Hello!
Your twrp.img looks fine! I couldn't understand if you managed to actually create the lvm partitions though. Did you get past this "permission denied" error?
If you are using Linux, try:
Code:
adb kill-server
sudo adb start-server
In Windows try to launch it using administrator privileges
Also, after "adb shell" you can try to "su".
Code:
adb shell
su
If you think you managed to create the lvs successfully, use this command:
Code:
#/lvm/sbin/lvm lvs
to actually see what you have created.
Did you use the same partitions names as the guide? If you changed something, you also change it in all the fstabs, too.
I flashed your recovery, and you are right, no partition is mounted. Re-flashed back to mine and everything works. I can't find any difference though! I will keep searching. For now wait 5 mins for the upload.
I have started uploading my twrp.img, my boot.img and my ROM .zip, to help you test things, I didn't think of that earlier. I will post the links ASAP.
Hello!
Your twrp.img looks fine! I couldn't understand if you managed to actually create the lvm partitions though. Did you get past this "permission denied" error?
If you are using Linux, try:
Code:
adb kill-server
sudo adb start-server
In Windows try to launch it using administrator privileges
Also, after "adb shell" you can try to "su".
Code:
adb shell
su
If you think you managed to create the lvs successfully, use this command:
Code:
#/lvm/sbin/lvm lvs
to actually see what you have created.
Did you use the same partitions names as the guide? If you changed something, you also change it in all the fstabs, too.
I flashed your recovery, and you are right, no partition is mounted. Re-flashed back to mine though and everything works. I can't find any difference though! I will keep searching. For now wait 5 mins for the upload.
I have started uploading my twrp.img, my boot.img and my ROM .zip, to help you test things, I didn't think of that earlier. I will post the links ASAP.
Click to expand...
Click to collapse
I created the partitions with the names and sizes you said using the modded clockwork from the steven676's guide, I lunched #/lvm/sbin/lvm lvs under clockwork and everything was right and i formatted the 1gb media partition as FAT. TWRP wouldn't anything, not even mount the usb storage, and the adb shell would give me "~ # ←[6n" and permission denied with every command
Zeratul91 said:
I created the partitions with the names and sizes you said using the modded clockwork from the steven676's guide, I lunched #/lvm/sbin/lvm lvs under clockwork and everything was right and i formatted the 1gb media partition as FAT. TWRP wouldn't anything, not even mount the usb storage, and the adb shell would give me "~ # ←[6n" and permission denied with every command
Click to expand...
Click to collapse
Let's take this one step at a time. Grab the twrp image from the third post and test it. I can't understand what I forgot to include to the instructions. Testing now.
UPDATE: I think I found the culprit. Are you using Linux or Windows? your "lvm/sbin'lvm" file didn't have executing permissions.
Code:
cd /ramdisk/lvm/sbin
chmod +x lvm
Once I changed that, the twrp recovery worked. I don't know why yours was different from mine, I didn't have to change that.
KreAch3R said:
Let's take this one step at a time. Grab the twrp image from the third post and test it. I can't understand what I forgot to include to the instructions. Testing now.
UPDATE: I think I found the culprit. Are you using Linux or Windows? your "lvm/sbin'lvm" file didn't have executing permissions.
Code:
cd /ramdisk/lvm/sbin
chmod +x lvm
Once I changed that, the twrp recovery worked. I don't know why yours was different from mine, I didn't have to change that.
Click to expand...
Click to collapse
Unfortunately I'm on windows :S
BRB I'm going to try with your files
EDIT
I flashed your twrp, now i can use lvm commands and i created successfully the partitions:
Code:
C:\android-sdk-windows\platform-tools>adb shell
~ # ←[6n/lvm/sbin/lvm lvs
/lvm/sbin/lvm lvs
File descriptor 8 (/dev/__properties__) leaked on lvm invocation. Parent PID 120
: /sbin/sh
File descriptor 9 (socket:[1993]) leaked on lvm invocation. Parent PID 120: /sbi
n/sh
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
media lvpool -wi-ao--- 1.00g
system lvpool -wi-a---- 552.00m
userdata lvpool -wi-a---- 13.00g
Now i should format the 1gb media to fat, but usb storage mount does nothing and i still get "unable to mount" error in the twrp log
Zeratul91 said:
Unfortunately I'm on windows :S
Click to expand...
Click to collapse
I guess Windows created the permission error, then.
Zeratul91 said:
I flashed your twrp, now i can use lvm commands and i created successfully the partitions:
...
Now i should format the 1gb media to fat, but usb storage mount does nothing
Click to expand...
Click to collapse
I don't know if that is going to work in Windows, but try to go to Disk Management, and see if your usb storage is seen. It shouldn't popup a "new removable media" detected, it has to be formatted first.
In Lubuntu, I had to go to the "Disks" program, and locate the usb storage there.
Zeratul91 said:
and i still get "unable to mount" error in the twrp log
Click to expand...
Click to collapse
Unable to mount what? /system or /data?
KreAch3R said:
I guess Windows created the permission error, then.
I don't know if that is going to work in Windows, but try to go to Disk Management, and see if your usb storage is seen. It shouldn't popup a "new removable media" detected, it has to be formatted first.
In Lubuntu, I had to go to the "Disks" program, and locate the usb storage there.
Unable to mount what? /system or /data?
Click to expand...
Click to collapse
Ok i managed to do the trick, i did a manual wipe from twrp then i rebooted the recovery and successfully mounted all the partitions, then I adb pushed your rom and simply flashed it and it booted with the single virtual partition . Now i copying all my stuff back again on the phone and i will try to flash the euroskank build i modded
Zeratul91 said:
Ok i managed to do the trick, i did a manual wipe from twrp then i rebooted the recovery and successfully mounted all the partitions, then I adb pushed your rom and simply flashed it and it booted with the single virtual partition . Now i copying all my stuff back again on the phone and i will try to flash the euroskank build i modded
Click to expand...
Click to collapse
I am glad! Good job.:good: Report back if everything is working correctly (or not ).
KreAch3R said:
I am glad! Good job.:good: Report back if everything is working correctly (or not ).
Click to expand...
Click to collapse
After the flash the rom would boot (the first boot takes very long) but most of the apps like camera crash and the MTP usb is somehow broken... I suppose I also messed up the framework-res.apk mod :crying:...
I attached the modded framework
Zeratul91 said:
After the flash the rom would boot (the first boot takes very long) but most of the apps like camera crash and the MTP usb is somehow broken... I suppose I also messed up the framework-res.apk mod :crying:...
I attached the modded framework
Click to expand...
Click to collapse
I have a working camera and MTP. Does this happen to my ROM, too? If it doesn't, that something is off in your edits. Did you make the appropriate boot changes to the euroskank boot.img? I don't know if the Guru boot .img is compatible.
Please share the unmodified framewok-res.apk from the euroskank build to let me help you. Did you follow the drag 'n' drop procedure?
EDIT The framework-res.apk you attached is not modded:
Code:
<storage android:mountPoint="/storage/sdcard0" android:storageDescription="@string/storage_usb" android:primary="true" android:allowMassStorage="true" android:maxFileSize="4096" />
KreAch3R said:
I have a working camera and MTP. Does this happen to my ROM, too? If it doesn't, that something is off in your edits. Did you make the appropriate boot changes to the euroskank boot.img? I don't know if the Guru boot .img is compatible.
Please share the unmodified framewok-res.apk from the euroskank build to let me help you. Did you follow the drag 'n' drop procedure?
Click to expand...
Click to collapse
Your rom works fine and guru is compatible (i used your boot.img), I used android multitool to decompile and recompile the apk then i used 7zip to copy androindmanifest.xml and resources.arsc from the old apk to the new
Zeratul91 said:
Your rom works fine and guru is compatible (i used your boot.img), I used android multitool to decompile and recompile the apk then i used 7zip to copy androindmanifest.xml and resources.arsc from the old apk to the new
Click to expand...
Click to collapse
Ah, I see. Android Image Kitchen has a windows version, why don't you try with that, too, to eliminate differences between our setups?
Nevertheless, using your setup (android multitool), try to just copy storage_list.xml from the new apk to the old one, and use this file.
The second attached framework-res.apk is still unmodded:
Code:
<?xml version="1.0" encoding="utf-8"?>
<StorageList
xmlns:android="http://schemas.android.com/apk/res/android">
<storage android:mountPoint="/storage/sdcard0" android:storageDescription="@string/storage_usb" android:primary="true" android:allowMassStorage="true" android:maxFileSize="4096" />
</StorageList>
KreAch3R said:
Ah, I see. Android Image Kitchen has a windows version, why don't you try with that, too, to eliminate differences between our setups?
Nevertheless, using your setup (android multitool), try to just copy storage_list.xml from the new apk to the old one, and use this file.
The second attached framework-res.apk is still unmodded:
Code:
<?xml version="1.0" encoding="utf-8"?>
<StorageList
xmlns:android="http://schemas.android.com/apk/res/android">
<storage android:mountPoint="/storage/sdcard0" android:storageDescription="@string/storage_usb" android:primary="true" android:allowMassStorage="true" android:maxFileSize="4096" />
</StorageList>
Click to expand...
Click to collapse
Sorry I attached the same file, my pc is full of frameworks at this point lol...
I used android image kitchen to mod the twrp img but as you have seen windows is no good to do this kind of stuff :S
BTW seems I made it :good:, I hope no geek reads this:
I opened with 7zip your rom and the untouched euroskank and I drag'n'dropped updater-script, boot.img and storagelist.xml to the latter and... it works!
Zeratul91 said:
Sorry I attached the same file, my pc is full of frameworks at this point lol...
I used android image kitchen to mod the twrp img but as you have seen windows is no good to do this kind of stuff :S
BTW seems I made it :good:, I hope no geek reads this:
I opened with 7zip your rom and the untouched euroskank and I drag'n'dropped updater-script, boot.img and storagelist.xml to the latter and... it works!
Click to expand...
Click to collapse
For reference only, Android Image Kitchen shouldn't be responsible for the "Permissions denied" error, it has to do with the Windows filesystem.
After all, well done! Enjoy your new storage! I will try to start a FAQ from our encounter, and I will include your tip!
I'm on slim rom with ART enabled and this lvm mod was working...now i can enjoying so much apps in ART mode...thanks to dev @steven676 and @KreAch3R for make some magic

[MT6582]Most Epic Rom Ever [MERE] [MICROMAX] [A120]

MERE ROM FOR MICROMAX A120
FEATURES:
*KitKat Based
*Aosp Icons
*Sound Settings
*Better Ram Management
*Network Monitor
*Listview Animation
*Volume Rocker Wake switch
*Shutdown Animation switch
*Performance Control
*Proximity Gestures
*Multiuser Support
*App Privacy
*Advanced Reboot Menu
*Updated and Fixed Gapps
*Ios Fonts
Screenshots:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
INSTRUCTION TO FLASH MERE ROM ON FOTA MMX
1. You must be on stock mmx jellybean or fota mmx kitkat.
2. Boot into recovery. I personally prefer PHILZ.
3. If you are on philz, select clean to install a new rom. If you are not using philz simply wipe/data, wipe/system in any other recovery.
4. Browse to the merefota.zip location in your sd card and install it.
5. Reboot. We are done!
DOWNLOAD LINK : MERE FOTA
Credits :
* Team EPIC for developing MERE
* @umangleekha & @Siddhesh.K15 .
ROM OS Version: 4.4.x KitKat
ROM Kernel: Linux 3.4.x (STOCK)
Version Information
Status: FINAL
Current Beta Version: 1.51
Final Release Date: 2015-01-12
Created 2015-01-08
Last Updated 2015-01-12
Mere rom for STOCK micromax
INSTRUCTION TO FLASH MERE ROM ON MMX STOCK
1. You must be on Stock Kitkat mmx_06. You can download it from here.
2. Download CTR recovery from here and flash it with sp flash tool.
3. Boot into recovery and go to Wipe Menu and click on Wipe Data-Factory Reset.
4. Now select Install zip and browse to the location where you have MERE ROM zip and install it.
5. Reboot your device & enjoy full aosp experience with MERE rom.
Download Link: MERE ROM
Hit thanks if you want me to bring more such roms for our device
Mere rom for wiko rainbow
INSTRUCTION TO FLASH MERE ROM ON WIKO RAINBOW
1. You must be on wiko rainbow kitkat before flashing this ROM.
2. Boot into recovery and wipe/data & /system.
3. Browse your sd card for mere rom zip and install it.
4. Reboot & enjoy!
Note: Do not flash DOLBY mod, DSP manager is inbuilt in the latest version.
DOWNLOAD LINK: Go here
DOLBY MOD FOR MERE
1. Download from here.
2. Boot into recovery and simply flash it, then reboot.
3. Enjoy Dolby sound on your device.
Note: FOR MERE ROM ONLY
Credits: @umangleekha for this mod.
Hit thanks if you want me to bring more such roms for our device
my device is myphone agua rio (s5501) version with 4gb of storage and running Edmhar's Kitkat Deodexed. can i flash this directly to my device? Thanks.
cheeze.keyk said:
my device is myphone agua rio (s5501) version with 4gb of storage and running Edmhar's Kitkat Deodexed. can i flash this directly to my device? Thanks.
Click to expand...
Click to collapse
No, its for different base.
or i need to flash the mmx fota before flashing your rom?
cheeze.keyk said:
or i need to flash the mmx fota before flashing your rom?
Click to expand...
Click to collapse
First, its not my rom. It's Team Mere's creation. So full credits to them for developing such a beautiful rom. I simply ported it.
Second, i am not sure whether micromax fota works on rio or not. Better consult senior devs of your rio group.
Good work, but found a bug.
Wifi internet connection lost when switching between wifi ap (2 routers, same SSID, same security and password, different channel.)
This works well in any other ROM. Never happened to me.
Another thing. Because you used wiko rainbow DarkL zip?
You need to modify the script !!
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
delete_recursive("/system/app");
delete_recursive("/system/priv-app");
delete_recursive("/system/framework");
delete_recursive("/system/media");
package_extract_dir("system", "/system");
[COLOR="Red"]set_perm_recursive(0, 0, 0666, 0666, "/data/data/de.robv.android.xposed.installer/conf/modules.list");[/COLOR]
set_perm_recursive(0, 0, 0777, 0777, "/system/etc/init.d");
set_perm_recursive(0, 0, 0777, 0777, "/system/xbin/busybox");
run_program("/sbin/umount", "/system");
[COLOR="Red"]run_program("/sbin/mount", "/data");
package_extract_dir("data", "/data");[/COLOR]
delete_recursive("/data/dalvik-cache");
[COLOR="Red"]run_program("/sbin/umount", "/data");[/COLOR]
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
show_progress(0.1, 10);
ui_print("[*] Flashing partition: BOOT");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "bootimg"),
delete("/tmp/boot.img"));
assert(package_extract_file("logo.bin", "/tmp/logo.bin"),
write_raw_image("/tmp/logo.bin", "logo"),
delete("/tmp/logo.bin"));
show_progress(0.2, 10);
unmount("/system");
The red lines can be deleted
moonrotation said:
Good work, but found a bug.
Wifi internet connection lost when switching between wifi ap (2 routers, same SSID, same security and password, different channel.)
This works well in any other ROM. Never happened to me.
Another thing. Because you used wiko rainbow DarkL zip?
You need to modify the script !!
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
delete_recursive("/system/app");
delete_recursive("/system/priv-app");
delete_recursive("/system/framework");
delete_recursive("/system/media");
package_extract_dir("system", "/system");
[COLOR="Red"]set_perm_recursive(0, 0, 0666, 0666, "/data/data/de.robv.android.xposed.installer/conf/modules.list");[/COLOR]
set_perm_recursive(0, 0, 0777, 0777, "/system/etc/init.d");
set_perm_recursive(0, 0, 0777, 0777, "/system/xbin/busybox");
run_program("/sbin/umount", "/system");
[COLOR="Red"]run_program("/sbin/mount", "/data");
package_extract_dir("data", "/data");[/COLOR]
delete_recursive("/data/dalvik-cache");
[COLOR="Red"]run_program("/sbin/umount", "/data");[/COLOR]
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
show_progress(0.1, 10);
ui_print("[*] Flashing partition: BOOT");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "bootimg"),
delete("/tmp/boot.img"));
assert(package_extract_file("logo.bin", "/tmp/logo.bin"),
write_raw_image("/tmp/logo.bin", "logo"),
delete("/tmp/logo.bin"));
show_progress(0.2, 10);
unmount("/system");
The red lines can be deleted
Click to expand...
Click to collapse
i will look into that wifi problem soon. & Yes, i used wiko rainbow dark l script. I was too lazy to edit it. I will fix it soon.
users like you always motivate me. Thanks for pointing out mistakes. :good:
moonrotation said:
Good work, but found a bug.
Wifi internet connection lost when switching between wifi ap (2 routers, same SSID, same security and password, different channel.)
This works well in any other ROM. Never happened to me.
Another thing. Because you used wiko rainbow DarkL zip?
You need to modify the script !!
Code:
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
delete_recursive("/system/app");
delete_recursive("/system/priv-app");
delete_recursive("/system/framework");
delete_recursive("/system/media");
package_extract_dir("system", "/system");
[COLOR="Red"]set_perm_recursive(0, 0, 0666, 0666, "/data/data/de.robv.android.xposed.installer/conf/modules.list");[/COLOR]
set_perm_recursive(0, 0, 0777, 0777, "/system/etc/init.d");
set_perm_recursive(0, 0, 0777, 0777, "/system/xbin/busybox");
run_program("/sbin/umount", "/system");
[COLOR="Red"]run_program("/sbin/mount", "/data");
package_extract_dir("data", "/data");[/COLOR]
delete_recursive("/data/dalvik-cache");
[COLOR="Red"]run_program("/sbin/umount", "/data");[/COLOR]
run_program("/system/xbin/busybox", "--install", "-s", "/system/xbin");
show_progress(0.1, 10);
ui_print("[*] Flashing partition: BOOT");
assert(package_extract_file("boot.img", "/tmp/boot.img"),
write_raw_image("/tmp/boot.img", "bootimg"),
delete("/tmp/boot.img"));
assert(package_extract_file("logo.bin", "/tmp/logo.bin"),
write_raw_image("/tmp/logo.bin", "logo"),
delete("/tmp/logo.bin"));
show_progress(0.2, 10);
unmount("/system");
The red lines can be deleted
Click to expand...
Click to collapse
Actually he used my rom's updater script, the xposed config file permission line should be removed also the data extract line can be removed but data mount and unmount line is requied because i'm wiping dalvik-cache in updater script.
umangleekha said:
Actually he used my rom's updater script, the xposed config file permission line should be removed also the data extract line can be removed but data mount and unmount line is requied because i'm wiping dalvik-cache in updater script.
Click to expand...
Click to collapse
You're right, I did not see well.
mr-illusionist said:
i will look into that wifi problem soon. & Yes, i used wiko rainbow dark l script. I was too lazy to edit it. I will fix it soon.
users like you always motivate me. Thanks for pointing out mistakes. :good:
Click to expand...
Click to collapse
Here a test of your rom with Xpro kernel v2, and same kernel DarkL rom.
You can see 0,00 B. I use Greenify. I have no idea if it may be the culprit.
This ROM seems interesting, I will surely try this one.
Can someone confirm, if this ROM is pre-rooted?
kool_sandy said:
This ROM seems interesting, I will surely try this one.
Can someone confirm, if this ROM is pre-rooted?
Click to expand...
Click to collapse
Not pre rooted
So, how to root it? I rooted it using kingoroot.
Sent from my Oneplus One
kool_sandy said:
So, how to root it? I rooted it using kingoroot.
Sent from my Oneplus One
Click to expand...
Click to collapse
Well, flash root zip from the attached blog. It can be flashed over any kitkat based rom (mediatek) http://www.androiddevs.net/mediatek-rooting-issue-fix-kitkat-roms/
Thx bro, well try this soon!
Sent from my Oneplus One
umangleekha said:
Actually he used my rom's updater script, the xposed config file permission line should be removed also the data extract line can be removed but data mount and unmount line is requied because i'm wiping dalvik-cache in updater script.
Click to expand...
Click to collapse
I have share this ROM to so many friends BEC i lov this ROM
Hi,
I ported for myself this rom (Gionee P3/Walton Primo GF) but i have a bug: PlayStore refuse to connect. I also port MERE 1.51 flareS from the original developers site and i have the same problem. Do you have any ideea how to solve this bug?
Latest Mere (V1.51) will be updated for wiko base today. Stay tuned!
Full ROM this time.

Categories

Resources