[Script][Tool][Windows][4.4]Convert Any Rom to Full F2FS - Nexus 7 Android Development

This is a Windows Batch Script/Tool to make any 4.4 based ROM to full F2FS compatibility !! This tool can convert any existing ROM from ext4 to Full F2FS Compatibility in a few clicks !! All tools necessary for conversion included in the batch file itself !!
Basic Info
What is F2FS?
F2FS (Flash-Friendly File System) is a flash file system created by Kim Jaegeuk at Samsung for the Linux operating system kernel. The motive for F2FS was to build a file system that from the start takes into account the characteristics of NAND flash memory-based storage devices (such as solid-state disks, eMMC, and SD cards), which are widely used in computer systems ranging from mobile devices to servers.
What is All-F2FS?
We used F2FS only for /data. It was simply because we have only to flash a compatible Kernel and Format /data partition. With All-F2FS we use F2FS for all partitions and we need a compatible ROM
DISCLAIMER
Code:
*I am Not responsible for any bricked devices,SD cards or thermonuclear attacks.
*Please do some research about what you are doing before you use the tool.
*YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you. Hard. A lot.
Current Device Compatibility
Code:
1. Nexus 4 ( Mako )
2. Nexus 7 2012 Edition ( Grouper)
Prerequisites
Code:
1. A Mako/Grouper
2. Any 4.4 based ROM with [B][U]busybox [/U][/B]installed
3. Proper F2FS Compatible Recovery and Partition Zip from
[URL="http://forum.xda-developers.com/showthread.php?t=2678140"]http://forum.xda-developers.com/showthread.php?t=2678140[/URL]
4. Any Windows version and my batch script
Features
Code:
1. One Click F2FS Conversion Process
2. All tools included in the Zip file itself
3. Changes only the relevant parts of your updater-script keeping the rest unmodified
4. Compatible boot.img included in the ROM itself
5. Single script for both Nexus 4/ Nexus 7 ( 2012)
6. Error conditions at many places so a noob cant go wrong
***Special note for Stock ROM users***
Code:
The script requires busybox and since stock roms dont have busybox the repacked ROM wont boot up.
In such a case the best option is try out any other AOSP based ROM
Instructions
Code:
1. Unpack the Zip file you downloaded from Link Below
2. Run F2FS Convertor.bat
3. Select your device
4.Place the Zip in the Extract /Input directory when prompted
5. The script will Unpack your ROM
6. Select option 11 for boot.img supplied with the script or option 12 for cm boot.img and 13 for any other F2FS compatible boot.img
7. Repack your ROM
8. Check NEW F2FS ROM directory for the Repacked ROM
9. Flash and Enjoy
10.Cleanup the working directory cleanup.bat
Download Links
1) English
2) German (Thanks to @mikaole)
Changelog
Code:
V1 : Initial Release
Credits
Code:
@legolas93 For bringing F2FS to Nexus and also for providing the boot.img for the script
[user=4439521]@mikaole[/user] For the German Translations and extensive testing
[user=2002216]@jolinnard[/user] For the amazing F2FS kernels he is providing
[user=4544860]@osm0sis[/user] For his amazing Android Image Kitchen.The cleanup.bat script is taken from his tool.
[user=3325155]@fishears[/user] For helping out on the kernel side.
[user=5501864]@USBhost[/user] For being the lone tester for the N7 ( 2012 )
[user=4450732]@CallMeAldy[/user] For the CM trick and his compilation thread
And all other beta testers !! Sorry if I forgot anyone from the list !!
Screenshots in the Next Post
Hit the Thanks button if you Like My Work

Reserved

Lol where were you weeks ago when we needed you most? Thanks for this work, but I wish I had something to flash just to try it. Right now SlimKat is working wonderfully as is.
Thanks for doing this for the community. [emoji106]
Sent from my Nexus 7 using Tapatalk

SkOrPn said:
Lol where were you weeks ago when we needed you most? Thanks for this work, but I wish I had something to flash just to try it. Right now SlimKat is working wonderfully as is.
Thanks for doing this for the community. [emoji106]
Sent from my Nexus 7 using Tapatalk
Click to expand...
Click to collapse
All the best things, take time to come

SkOrPn said:
Lol where were you weeks ago when we needed you most? Thanks for this work, but I wish I had something to flash just to try it. Right now SlimKat is working wonderfully as is.
Thanks for doing this for the community. [emoji106]
Sent from my Nexus 7 using Tapatalk
Click to expand...
Click to collapse
Its just 3 weeks ago things started to build up for f2fs for mako !! I created this script primararily for my Mako dont own a grouper !! Took me two weeks to polish the script !! Basically wanted to make kernels compatible too but after trying hard had to give it up !!

Do I get this right: I can use this script to convert the latest CM 11 nightly to F2FS compatibility? And what if the kernel changes in the nightly? Has the included kernel the fixes for the recently changed ram disk?

NABENDU1 said:
Its just 3 weeks ago things started to build up for f2fs for mako !! I created this script primararily for my Mako dont own a grouper !! Took me two weeks to polish the script !! Basically wanted to make kernels compatible too but after trying hard had to give it up !!
Click to expand...
Click to collapse
I was just poking fun at ya, nothing rude was intended. I am very happy to see something like this take place. Now we have something to do the next time our favorite ROM gets released.
We just need about 100 more devices to get supported and this may take off with the manufacturers themselves. Then I will consider all smart devices up to that point one large 10 year long beta test. Lmao
Sent from my Nexus 7 using Tapatalk

So this won't work on the Galaxy Note II ...... wish it would lol

master.peterm said:
So this won't work on the Galaxy Note II ...... wish it would lol
Click to expand...
Click to collapse
If you can link me to its thread which can make it fully f2fs compatible I'll be more than glad to help !!
SkOrPn said:
I was just poking fun at ya, nothing rude was intended. I am very happy to see something like this take place. Now we have something to do the next time our favorite ROM gets released.
We just need about 100 more devices to get supported and this may take off with the manufacturers themselves. Then I will consider all smart devices up to that point one large 10 year long beta test. Lmao
Sent from my Nexus 7 using Tapatalk
Click to expand...
Click to collapse
I had no hard feelings or stuff on you or anybody !! Just that wanted to inform you about why my script was released so late !! And ya that's exactly my intention to make flashing Roms easy !! I mean changing manually isnt always gr8 especially when you flash on a daily basis like I do
edisso10018 said:
Do I get this right: I can use this script to convert the latest CM 11 nightly to F2FS compatibility? And what if the kernel changes in the nightly? Has the included kernel the fixes for the recently changed ram disk?
Click to expand...
Click to collapse
No idea I don't own a grouper so I don't test it at all !! @USBhost gave this boot.img to me and I included it in my script !! I think he could explain this better

Hey, I've been trying to troubleshoot for about 30 minutes but I simply cannot get the script to repack the ROM.
Here are the issues I'm running into:
1) When I am instructed to place the original ROM zip in EXTRACT/INPUT there is no INPUT subfolder.
That was easy enough though. I simply made one, placed the zip in, and everything seemed to move forward fine.
However:
2) During repacking, the script runs into a few errors. Rather than describing them here, I will post pictures of them below.
{
"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"
}
The end result:
I can't find a repacked ROM in any of the folders or subfolders.
Any ideas about where I went wrong?

Note this does not convert the kernel to f2fs you have to flash a custom All-F2FS kernel

Oh, I thought it did that? Can we please have that included into this script? Just put your favorite f2fs kernel into a folder and let it include it into your new f2fs rom? That would be nice...

SkOrPn said:
Oh, I thought it did that? Can we please have that included into this script? Just put your favorite f2fs kernel into a folder and let it include it into your new f2fs rom? That would be nice...
Click to expand...
Click to collapse
If I get some time, I may try to put together a bat file to do this. Should be able to just extract both zips, merge the kernel library modules into the system folders in the ROM zip, and replacing the boot image. The whole system folder gets extracted recursively so the kernel files go with it, and zip it back up. This program fixes the updater-script.
Sent from my SCH-I545 using Tapatalk

icarianecho said:
Hey, I've been trying to troubleshoot for about 30 minutes but I simply cannot get the script to repack the ROM.
Here are the issues I'm running into:
1) When I am instructed to place the original ROM zip in EXTRACT/INPUT there is no INPUT subfolder.
That was easy enough though. I simply made one, placed the zip in, and everything seemed to move forward fine.
However:
2) During repacking, the script runs into a few errors. Rather than describing them here, I will post pictures of them below.
The end result:
I can't find a repacked ROM in any of the folders or subfolders.
Any ideas about where I went wrong?
Click to expand...
Click to collapse
Its not that you went wrong it's my script which is calling the wrong directories !! I had faced the same problem with my mako script in its early days but after changing a few things here and there it was gone !! Bdw I'll hook you up to a test script hopefully by today evening and I think you should be good to go
Edit : Others report it as working !! Might be you doing something wrong on your end ! Bdw you should extract all my folders in d F2FSROMCONVERTOR folder !! Name change or anything will effect the script to through errors
And ya the v3 test version is d same as the released version as far as I remember

NABENDU1 said:
Its not that you went wrong it's my script which is calling the wrong directories !! I had faced the same problem with my mako script in its early days but after changing a few things here and there it was gone !! Bdw I'll hook you up to a test script hopefully by today evening and I think you should be good to go
Click to expand...
Click to collapse
I tired a bit different method but was not working for me !! Tried android image kitchen to extract the boot.img made a compatible zImage of my kernel and copied the modied zImage to that of the unpacked boot.img from android image kitchen !! Then changed the fstab and repacked but the same still won't boot !!
If you can help me get this working with kernels I'll be much more happy

NABENDU1 said:
I tired a bit different method but was not working for me !! Tried android image kitchen to extract the boot.img made a compatible zImage of my kernel and copied the modied zImage to that of the unpacked boot.img from android image kitchen !! Then changed the fstab and repacked but the same still won't boot !!
If you can help me get this working with kernels I'll be much more happy
Click to expand...
Click to collapse
That's exactly what I tried
---------- Post added at 01:42 AM ---------- Previous post was at 01:32 AM ----------
I wonder if you just replaced the boot.IMG from the ROM with the kernel's boot.img
Would that boot
---------- Post added at 02:03 AM ---------- Previous post was at 01:42 AM ----------
It works!!! Cheer !!

Amazing tool lml
Enviado desde mi Nexus 7 mediante Tapatalk

Carbon ROM 4/24/2014 with the M-kernel
---------- Post added at 04:01 AM ---------- Previous post was at 03:29 AM ----------
icarianecho said:
Hey, I've been trying to troubleshoot for about 30 minutes but I simply cannot get the script to repack the ROM.
Here are the issues I'm running into:
1) When I am instructed to place the original ROM zip in EXTRACT/INPUT there is no INPUT subfolder.
That was easy enough though. I simply made one, placed the zip in, and everything seemed to move forward fine.
However:
2) During repacking, the script runs into a few errors. Rather than describing them here, I will post pictures of them below.
The end result:
I can't find a repacked ROM in any of the folders or subfolders.
Any ideas about where I went wrong?
Click to expand...
Click to collapse
F2FSROMConvetorV3
this one works for me

I tried using this tool to build a omni verison and a cyanogenmod version, both the latest nightly. On each build I get the message " Type Password to Decrypt ..."
Also the recovery provided does not boot up after flashing it using fastboot. The recovery from http://forum.xda-developers.com/nexus-4/orig-development/recovery-rom-kernel-f2fs-05-04-14-t2706825 is working

joefso said:
I tried using this tool to build a omni verison and a cyanogenmod version, both the latest nightly. On each build I get the message " Type Password to Decrypt ..."
Also the recovery provided does not boot up after flashing it using fastboot. The recovery from http://forum.xda-developers.com/nexus-4/orig-development/recovery-rom-kernel-f2fs-05-04-14-t2706825 is working
Click to expand...
Click to collapse
You flashed a MAKO recovery onto your Grouper? I did not know that would work
EDIT: Never mind me, I see that you have a mako and trying to convert your Omni to it.

Related

Epic 4g MIUI Builder v1.1.1 (Windows Only Application)

In a nutshell, this program is designed to allow the MIUI rom to be built more easily. Since there are updates quite often and the process of updating the rom can be tedious for the developers, I decided to help out where I could and create this application.​
Instructions
Download a rom of a similar phone from the http://roms.miui.us/ website. The Fascinate should be a good one, and the Nexus S and Nexus S 4g might also work.
Launch the MIUI Builder
In the "MIUI Source Zip File" section, browse to the freshly downloaded rom
Put in a build version (usually the version of MIUI being built)
In the "Build User" put in some name (could use your xda name)
In the "MIUI Destination Zip File" browse to where you would like the CWM flashable rom to be saved
Optionally, you can choose a kernel to use, if you don't want to use the default kernel
NotesNote1: More kernels can be manually added to the kernels directory (Default C:/Program Files/MIUI Builder/kernels/). You just need to make sure they are CM7 compatible kernels. Also, the base is the miui_port_ns.zip, so you can swap files out in there if you want, but that zip will probably get wiped every time you update this application. (This is currently removed, but I plan to add it back in shortly)
Note 2: Fascinate builds currently boot and have data. NS4g builds are still causing issues. Also, before you flash anything that this creates, please do a CWM backup.​
Prerequisites
Windows PC
.net 3.5 or greater
Java Development Kit (JDK)
Change LogVersion 1.0.0 - Initial Release
Basic Functionality
Version 1.0.1
Added splash screen
Fixed permissions issue on windows 7 PCs
Version 1.0.2 - Initial Public Release - 11/25/2011
Added ability to choose a different kernel
Version 1.0.3 - 11/25/2011
Fixed build.prop issue when using the nubernel kernel
Provided a cleaner and more informative error message when there is an issue unzipping (seems to only occur with things zipped on *nix)
Version 1.0.4 - 11/27/2011
Fixed issue with /system/lib/ which was pointed out by xboxfanj
Rom built with default kernel has been tested and proven to boot when using the latest (1.11.25) fascinate build
Version 1.0.5 - 12/3/2011
Fixed issue that would not allow you to use a different kernel than stock
Fixed some attributes in the build.prop - might make some things work a little better, but I dunno what those will be
Made the build version field shorter
Fixed issue with the NFC stuff not being removed
Added optional CM7 kernel from the 11/24 build
Fixed issue when building from Nexus S or Nexus S 4G
Fixed issue with writing over an already existing zip file
Fixed issue with part of the build.prop dissapearing
Version 1.0.6 - 12/9/2011
Fixed build.prop issues (mainly issues with certain kernels)
Fixed carrier name issues
Fixed issue with framework.jar and data not working
Version 1.0.7 - 12/22/2011
Updated GoSMS
MMS fix as long as you use GoSMS
Application will remember the build user name and file system chosen
Ability to choose if you want a startup sound as well as the mp3 file itself
MTD support with ability to choose EXT4 or MTD.
Removed ability to choose a kernel for now, but it might be added back in later
Version 1.0.8 - 12/22/2011
Should now have working 911 (I'm not 100% on this though)
Replaced latest CM7 kernel, which wasn't working, with the Beta 6 MIUI kernel
Version 1.1.0 - 4/7/2012 (Dropbox Mirror)
Updating to MIUI V4
Verified SMS and MMS work when built from a Fascinate Rom
Version 1.1.1 - 4/8/2012 (Dropbox Mirror)
Fixed annoying blank message boxes with just an OK button
Version 1.1.2 - WIP
Add advanced reboot menu
Add phantom VM fix
Any suggestions would be appreciated.
If you managed to come across a bug, which at this point wouldn't surprise me, let me know and I will try to fix it as soon as possible.
Oh and of course, the usual jargon that I am not responsible if you somehow managed to mess up your phone or for that matter your computer. This software has been tested on windows 7 and windows 8 and hasn't caused any issues after instillation.​
Future Hopes and Dreams: (may never get accomplished but would be nice)
Multi-thread C# application
Create a java version, so that the program will be cross platform compatible
Thanks
bxfxf - Got the initial instructions from him
xboxfanj - For testing it some and helping keep MIUI on the epic4g alive. Also, providing instructions for MTD.
Nubecoder - For nubernel kernel
ugothakd for providing the default EXT4 kernel
Marcusant for getting MIUI V4 to its current awesomness
CM7 Team for CM7 Kernel
Everyone else who makes this community what it is, including but not limited to ACS, Bonzai and CM7 teams.
Found a bug. Here's the screenshot:
{
"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"
}
Death259 said:
MIUI Builder (Windows Only Application)
In a nutshell, this program is designed to allow the MIUI rom to be built more easily. Since there are updates quite often and the process of updating the rom can be tedious for the developers, I decided to help out where I could and create this application.
Instructions:
Download a rom of a similar phone from the http://roms.miui.us/ website. The Fascinate should be a good one, and the Nexus S and Nexus S 4g might also work.
Launch the MIUI Builder
In the "MIUI Source Zip File" section, browse to the freshly downloaded rom
Put in a build version (usually the version of MIUI being built)
In the "Build User" put in some name (could use your xda name)
In the "MIUI Destination Zip File" browse to where you would like the CWM flashable rom to be saved
Optionally, you can choose a kernel to use, if you don't want to use the default kernel
Note: More kernels can be manually added to the kernels directory (Default C:/Program Files/MIUI Builder/kernels/). You just need to make sure they are CM7 compatible kernels. Also, the base is the miui_port_ns.zip, so you can swap files out in there if you want, but that zip will probably get wiped every time you update this application.
Note 2: I tested one rom that was built with the default kernel, and it flashed just fine, but it wouldn't boot. This could potentially be solved by flashing the RFS to EXT4 or EXT4 to RFS zips. With that in mind, before you flash anything that this creates, please do a CWM backup.
Prerequisites:
Windows PC
.net 3.5 or greater
Java Development Kit (JDK)
Change Log
Version 1.0.0 - Initial Release
Basic Functionality
Version 1.0.1
Added splash screen
Fixed permissions issue on windows 7 PCs
Version 1.0.2 - Initial Public Release - 11/25/2011
Added ability to choose a different kernel
Any suggestions would be appreciated.
If you managed to come across a bug, which at this point wouldn't surprise me, let me know and I will try to fix it as soon as possible.
Oh and of course, the usual jargon that I am not responsible if you somehow managed to mess up your phone or for that matter your computer. This software has been tested on windows 7 and windows 8 and hasn't caused any issues after instillation.
Thanks:
bxfxf - Got the initial instructions from him
xboxfanj - For testing it some and helping keep MIUI on the epic4g alive
Nubecoder - For nubernel kernel which is currently the only included optional kernel (p.s. If you want me to remove your kernel I can)
Everyone else who makes this community what it is, including but not limited to ACS, Bonzai and CM7 teams.
Click to expand...
Click to collapse
Please give credit to ugothakd too. His kernel is the default one.
Sent from my SPH-D700 using Tapatalk
xBTx said:
Found a bug. Here's the screenshot:
Click to expand...
Click to collapse
same thing wit me
ns4g build didn't give any errors.. but the fascinate did.
xBTx said:
Found a bug. Here's the screenshot:
Click to expand...
Click to collapse
Ahh... that issue, have a nicer solution in the next version. For now, extract the zip manually, and then rezip it with the built in windowszipping functionality to rezip it.
xboxfanj said:
Please give credit to ugothakd too. His kernel is the default one.
Sent from my SPH-D700 using Tapatalk
Click to expand...
Click to collapse
Whoops! Problem solved!
Death259 said:
MIUI Builder (Windows Only Application)
In a nutshell, this program is designed to allow the MIUI rom to be built more easily. Since there are updates quite often and the process of updating the rom can be tedious for the developers, I decided to help out where I could and create this application.
Instructions:
Download a rom of a similar phone from the http://roms.miui.us/ website. The Fascinate should be a good one, and the Nexus S and Nexus S 4g might also work.
Launch the MIUI Builder
In the "MIUI Source Zip File" section, browse to the freshly downloaded rom
Put in a build version (usually the version of MIUI being built)
In the "Build User" put in some name (could use your xda name)
In the "MIUI Destination Zip File" browse to where you would like the CWM flashable rom to be saved
Optionally, you can choose a kernel to use, if you don't want to use the default kernel
Note: More kernels can be manually added to the kernels directory (Default C:/Program Files/MIUI Builder/kernels/). You just need to make sure they are CM7 compatible kernels. Also, the base is the miui_port_ns.zip, so you can swap files out in there if you want, but that zip will probably get wiped every time you update this application.
Note 2: I tested one rom that was built with the default kernel, and it flashed just fine, but it wouldn't boot. This could potentially be solved by flashing the RFS to EXT4 or EXT4 to RFS zips. With that in mind, before you flash anything that this creates, please do a CWM backup.
Prerequisites:
Windows PC
.net 3.5 or greater
Java Development Kit (JDK)
Change Log
Version 1.0.0 - Initial Release
Basic Functionality
Version 1.0.1
Added splash screen
Fixed permissions issue on windows 7 PCs
Version 1.0.2 - Initial Public Release - 11/25/2011
Added ability to choose a different kernel
Any suggestions would be appreciated.
If you managed to come across a bug, which at this point wouldn't surprise me, let me know and I will try to fix it as soon as possible.
Oh and of course, the usual jargon that I am not responsible if you somehow managed to mess up your phone or for that matter your computer. This software has been tested on windows 7 and windows 8 and hasn't caused any issues after instillation.
Thanks:
bxfxf - Got the initial instructions from him
xboxfanj - For testing it some and helping keep MIUI on the epic4g alive
Nubecoder - For nubernel kernel which is currently the only included optional kernel (p.s. If you want me to remove your kernel I can)
ugothakd for providing the default kernel
Everyone else who makes this community what it is, including but not limited to ACS, Bonzai and CM7 teams.
Click to expand...
Click to collapse
This is pretty damn cool
sent from my, ya know cm7 epic
Uploade version 1.0.3, all changes are listed in the OP.
Jesus, stop quoting the entire op...
Awesome job.
Sent from my SPH-D700 using Tapatalk
marcusant said:
Jesus, stop quoting the entire op...
Awesome job.
Sent from my SPH-D700 using Tapatalk
Click to expand...
Click to collapse
Jesus can do whatever He wants,it's almost His birthday.
Seriously, though thanks from all of us non-dev miui lovers. Can't wait to see the results.
I'll stay off now and leave this thread for you developers.
Sent from my SPH-D700 using xda premium
Bug:
Applying fix for cdma data in framework.jar, this shows.
The system cannot find the file specified.
This happens on both the fascinate and the crespo4g files.
btw, for your sig, that says "I'm pretty sure that MIUI is pronounced meeooee and not M.I.U.I," it's actually my-you-eye or me-you-eye.
iwasaperson said:
Bug:
Applying fix for cdma data in framework.jar, this shows.
The system cannot find the file specified.
This happens on both the fascinate and the crespo4g files.
Click to expand...
Click to collapse
What OS are you on? If you are on windows 7 or 8 then you might try running as administrator.
im on windows 7 x64, and i AM administrator (thats the only active account on the computer).
iwasaperson said:
im on windows 7 x64, and i AM administrator (thats the only active account on the computer).
Click to expand...
Click to collapse
Aight, you might be administrator, but due to how permissions are done in windows 7 you might still have to run as administrator. So, try right clicking on the shortcut and selecting run as administrator.
curious
so my builds built perfectly, i tried optional kernel, and stock, i also tried rts and ext4 settings, and my builds wont boot!
they flash just fine, no errors on zipping, but for some silly reason they are stuck on the flash screen?
im an avid flasher, i flash roms daily, and im stumped.
and for all you trollers out there yes i wiped, data, wiped cache, and dalvik.
otherwise the process was flawless, you think its because of the recent 11.25 build?
i havent yet tried to build a 11.17 build.
your thoughts death? thanks again for all the heard work
Running as Administrator didn't help at all. I tried the GSM crespo, the CDMA crespo, and the fascinatemtd build, all 1.11.25.

[GB/ICS] SGS4G ROM Installer (Oct 13, 2012)

{
"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"
}
an AROMA based Touch UI Recovery Installer
As seen on Valhalla Black Edition and Team Acid AOKP​
Please tell me if you're going to use this in your ROMs just so I know who is using it . Thank you.
This is for ROM chefs only, not for regular users. Regular users, you will see this in all your ROMs soon .
All the instructions below refer to the files in META-INF/com/google/android
You can change the splash image by replacing aroma/splash.png (make sure it's a PNG though)
As mentioned in the installation instructions, make sure your ROM's zip file matches that of Valhalla Black Final's for best results.
Full touch screen support
Allows for a typical install, using default settings
Allows the user to customize the ROM installation
Allows the chef to customize the user experience
Support for different themes/skins
Installs Busybox
Installs kernel if you desire
Installs modem if you desire
No need to check mounts, the installer properly mounts the partitions for you.
No need to format partitions, the installer can wipe them for you.
Download and extract the installer zip file
Edit aroma/installer.default.prop to set your ROM's information
Rename installer.default.prop to installer.prop
Edit aroma-config and updater-script to your liking
Extract your current ROM's zip
Delete your ROM's META-INF folder
Put the new SGS4G CWM Rom Installer's META-INF and tools folders in your ROM's root
Make sure your ROM's file structure matches that of AOKP Unofficial by TeamAcid, unless you know what you're doing
Create a new zip file
Flash away and test!
If you use this tool you have to link back to this thread and give me credit using the link. Example:
My ROM uses the SGS4G ROM Installer by FBis251
http://forum.xda-developers.com/showthread.php?t=1481228
installer.zip
Installer on GitHub
You can download installer.zip from the link above to get the latest version of the installer files to package into your own rom.
Octoboer 13, 2012
Remove touchscreen calibration fix /data extract bug
-- With aroma 2.55+ touchscreen calibration is no longer necessary
-- /data packages should get extracted properly after a /data restore
Updated to latest AROMA binary (2.56)
-- Much more stable binary in ICS recovery!
---- The newest binary hasn't crashed on me yet during testing unlike the older version (2.50) that was included in the last version of the SGS4G Installer.
Here is the AROMA changelog since the last version included in the SGS4G Installer
EDELWEIS - 2.56 - BUILD 121004-031
Fix capacitive button
Remove calibration tools
EDELWEIS - 2.55 - BUILD 121003-030
Completely new Input/Touchscreen Handler - Thanks to agrabren from TWRP
Remove all calibration need. calibtool(), calibrate() and calibrate_matrix() won't do anything now.
EDELWEIS - 2.51 - BUILD 120810-026
Supported Galaxy Nexus Touch Screen - And maybe other devices now supported
Click to expand...
Click to collapse
July 18, 2012
ICS public release
May 25, 2012
Fixed bug that wouldn't mount partitions
-- Added support for mounting /efs
Added /efs partition info to installer.default.prop
Fixed a bug that would cause redbend_ua to restart the phone while flashing
-- (Thanks to itzik2sh from xda-developers for the fix)
Updated efs-backup
Now only checks whether /efs is empty
-- Will be compatible with devices that don't use an nv_data.bin
May 23, 2012
Updated scripts for easier porting
-- aroma-config and updater-script now uses information from installer.prop
-- porting to new devices will now be a lot easier because of this
Updated efs-backup script
--Backups now only take up ~560kB of space, compared to 6.3mB before!
Added colors to the installation confirmation screen
May 2, 2012
Changed to using installer.prop file for controlling all the variables
-- Chefs no longer need to edit the main AROMA script
-- AROMA checks if the installer.prop file exists to prevent users who flash the zip from messing up their phones
Added an installation option confirmation screen to make sure users know what options were selected
April 15, 2012
Updated to aroma-2.00-120414-A7
Now checking for phone version using a kernel check. Should prevent Froyo users from installing a GB ROM
Fixed a bug that would always do a free space check even when the user didn't try to do a /data backup
Now doing a /data restore before the kernel flash. Some ROMs caused the phone to reboot once the kernel flashed which means the /data restore never happened.
March 11, 2012
Updated AROMA binary to 2.0a4
Changed busybox version back to busybox v1.19.0.git
Now using aroma's TrueType font support
-- Installer uses the rom's default font (DroidSans)
Updated ROM information screen
Reboot prompt moved to the end of the installation
Updated Agreement to add formatting
Added efs-backup script which makes a backup of the efs partition
-- Saved under /sdcard/aroma-backup
Now has UTF-8 and RTL support!
March 3, 2012
Forced installation of busybox
Updated busybox to bonsai's version v1.17.1 (2010-08-12 23:44:34 CDT)
Fixed a bug that wouldn't allow the data backup and restore scripts to run
Moved mke2fs.conf to tools directory
Updated the sdcard free space check for /data backup
-- Will now only warn users when they selected the backup option in customized installs
March 3, 2012
Cleaned up a lot of the aroma-config code for easier reading
Deleted duplicate busybox binary
Deleted changelog.txt since no one used it
Added .gitignore
Updated busybox binary to version 1.19.4
Added monospace font
Now using the latest aroma nightly Version 1.62 build 120303-030
Using the latest themes from the nightly
Added a check to disallow /data backup when there isn't enough free sdcard space
-- Added a warning for the user to know the backup isn't going to happen
Updated touchscreen calibration values
Now displays filesystem and ROM information on the same screen
-- Added sdcard filesystem information
Reboot no longer done in the updater-script
Changed symlinks in updater-script to use busybox for more functions
Feb 12, 2012
Added aroma theme support. Check aroma/themes/
Added three themes, sense, MIUI and ICS (default ICS)
Added MIUI icons
Added filesystem (disk free/total and percentage used) information viewbox
Added ext4 format from bonsai's installer script.
-- Now does a full ext4 format and tuning before the install
Now allows choice of splash animation instead of static splash screen
Removed a lot of whitespace from aroma-config
Removed options to do wipes since the format takes care of this
Added data backup option
Now using bonsai backup. Left compression enabled for minimal sd storage usage.
Backup may take up to 10 minutes to complete!
Removed color.prop (no longer needed due to themes)
Changed checking for SGH-T959V to allow you to continue in case there is no ROM installed.
Feb 5, 2012
Edited updater script to output all installer options to one prop file
Now using variables in aroma-config for easier writing of the final options.prop file
Cleaned up updater-script to only use one .prop file
Fixed a bug that would make the wipe /data dialog come up even when deselected in the customized install
The script will now ask the user if they want to reboot their phones in all instances before the install gets going.
Now using Roboto font
Added color.prop file to control theme colors
Updated the wording on the install type chooser
Click to expand...
Click to collapse
FB
I was just gonna thank you for this over on Black thread. Glad you got this out for folks. Slick very slick. Who needs ROM manager(mangler) when you're around. So thanks to you and everyone else who worked on it.
I just used this a few hours ago I installed the black final rom with touch screen features is cool!
Sent from my SGH-T959V using XDA Premium App
FB, I will be using it for the next edition of AOSP Style coming out soon. I have already built mos of the rom and its installer, but I needed verification.
airfluip1 said:
FB, I will be using it for the next edition of AOSP Style coming out soon. I have already built mos of the rom and its installer, but I needed verification.
Click to expand...
Click to collapse
Sounds good. Just follow the OP if you'd like. I'm sure you already looked through the scripts. You should theme the installer to make it look like your ROM .
airflip if u are using my rom as a base its already in there .... which u asked me to use so.....
FB, I just flashed Raver's final and everything flashed fine then when the installer was done it showed an error having to do with not finding a path for something. I was going to re do it and copy the error down but now the phone is stuck at the T-Mo screen and it won't go into recovery with the button combo. I'm going to Odin it in the morning and re-flash and see if it throws the error again and I'll let you know.
bswann said:
FB, I just flashed Raver's final and everything flashed fine then when the installer was done it showed an error having to do with not finding a path for something. I was going to re do it and copy the error down but now the phone is stuck at the T-Mo screen and it won't go into recovery with the button combo. I'm going to Odin it in the morning and re-flash and see if it throws the error again and I'll let you know.
Click to expand...
Click to collapse
Same error on my sgs4g I think it was a temp file error, didn't affect my rom booting though.
Sent from my Glacier using xda premium
bswann said:
FB, I just flashed Raver's final and everything flashed fine then when the installer was done it showed an error having to do with not finding a path for something. I was going to re do it and copy the error down but now the phone is stuck at the T-Mo screen and it won't go into recovery with the button combo. I'm going to Odin it in the morning and re-flash and see if it throws the error again and I'll let you know.
Click to expand...
Click to collapse
If it happens again, hit save log and send that to me. I'd really like to see it.
Gr8 job FB - thank you very much.
We'll probably also use it in our next version
10x
Thanks Guys!!!(Raver,FB)
FBis251 said:
If it happens again, hit save log and send that to me. I'd really like to see it.
Click to expand...
Click to collapse
FB, awesome work man. Lovin it. I had an error on my install but the ROM installed fine and booted fine. I made a log anyway so I could send it to you. Maybe it can be of some use.
alon2 said:
Gr8 job FB - thank you very much.
We'll probably also use it in our next version
10x
Click to expand...
Click to collapse
Awesome, don't forget to post here if you have any usage questions. I wound up taking out a lot of the comments for space, but I learned the syntax of the AROMA functions pretty well.
putsometrebleinit said:
FB, awesome work man. Lovin it. I had an error on my install but the ROM installed fine and booted fine. I made a log anyway so I could send it to you. Maybe it can be of some use.
Click to expand...
Click to collapse
Yes I'd love to see that.
airfluip1 said:
Thanks Guys!!!(Raver,FB)
Click to expand...
Click to collapse
No problem. I'm guessing it's working fine?
Cool very very neat. Never seen this on a phone before
Sent from my SGH-T959V using xda premium
FBis251 said:
Awesome, don't forget to post here if you have any usage questions. I wound up taking out a lot of the comments for space, but I learned the syntax of the AROMA functions pretty well.
Yes I'd love to see that.
No problem. I'm guessing it's working fine?
Click to expand...
Click to collapse
You are right. I am making this installer so customizable, from kernel to bootanimation.
airfluip1 said:
You are right. I am making this installer so customizable, from kernel to bootanimation.
Click to expand...
Click to collapse
I'm gonna release an update soon. You should look into it once I'm done since I simplified the updater-script portion of it.
What do you mean by "soon" because i may release 4.0 tomorrow. I just need to test my new features.
I'm doing final testing of the installer so in about an hour.
Feb 5, 2012
Edited updater script to output all installer options to one prop file
Now using variables in aroma-config for easier writing of the final options.prop file
Cleaned up updater-script to only use one .prop file
Fixed a bug that would make the wipe /data dialog come up even when deselected in the customized install
The script will now ask the user if they want to reboot their phones in all instances before the install gets going.
Now using Roboto font
Added color.prop file to control theme colors
Updated the wording on the install type chooser
Panicking right now because I can't seem to PM you FB.
I hope I don't come off as a stickler for details, but there's just a single typo in what is the 6th screenshot posted in the OP. It's for the option where you can choose to Wipe Data.
"...another ROM. Don't select if you want to keep your ap"
I'm assuming it was supposed to say "apps."
Just wanted to make note of it as I saw that Raver updated the contents in the aroma folder within the META-INF directory for his Valhalla Black rom. I was just thinking the typo might've been updated or something somehow.

[APP] Flash Image GUI - Flash Kernels and Recoveries from normal Android mode!

Description:
This android application, FlashImageGUI, is basically a GUI interface for the linux binary, flash_image provided by google in AOSP for loading custom kernels and recovery images onto the phone.
This app allows the flashing of kernels and custom recovery images in normal android mode!
Current Device Support:
Full Kernel, Logo and Recovery flashing: Samsung Moment, Transform, Intercept and Acclaim - the s3c6410 series of devices
Full Kernel (Anykernel and boot.img) Flashing and Recovery (zip file or image) flashing: HTC One XL, One S, EVO 4G LTE, EVO 3D CDMA and GSM, Amaze, Vivid/Holiday, EVO 4G, EVO Shift, Nexus 4, Nexus 10, Nexus 7, Samsung Google Galaxy Nexus (GSM & CDMA), Nexus S/Nexus S 4G & LG Optimus
Full Kernel (zImage) Flashing: Samsung Epic
Check application version for updates
Credits for HTC One XL Testing:
Special Thanks to: dorkboy69 and DvineLord
Old tester thread
Credits:
birbeck for the usual random java guidance, slushpupie for his previous java guidance, dodgejcr for extreme amounts of testing, and one_love_420 and shift for some great graphics!
testers: JT-, couga6442, happytweak and many others I might have forgot in the furry of three days I built the initial app from scratch.!
Thanks to SDX
Background:
flash_image (bmlwrite) is an extremely useful utility for flashing custom kernels, boot logos (so far ONLY Samsung devices) and recoveries. This binary has made it possible to easily flash all these items and is used almost everywhere behind the scenes (i.e. in custom recoveries, packaged into kernel /sbin, etc).
Custom Recovery
Supports both CWM and TWRP!
Future Support:
Will continue to test kernels as they are released to ensure compatibility!
Install Directions:
Install process is the same as any other .apk. Download to computer and adb push or mount sdcard on computer and copy over or download directly to the phone. Use any file manager, adb, connectbot/terminal emulator to install.
My preferred method, maybe a bit more technical: ./adb install c:\downloads\FlashImageGUI.apk
Download Locations
Market (99 cents!): Flash Image GUI
Release version (free): Flash Image GUI
Contact:
Any questions, comments, concerns, or issues, please post in this thread or send me an email! Thanks for all the help and support!
FAQ:
Q: Will this app support a marketplace to pick and chose kernels from?
A: No. Use Kernel Manager!
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"
}
Feedback:
Please post any helpful feedback. I'm always looking to improve the application!
HTC Unlock - User Guides for Flash Image GUI!!
HTC Unlock - Users Guide for ROMs with a Kernel (boot.img file):
1) Unlock using Official HTC method
2) Load this application, Flash Image GUI, onto the device, either through the Market or the link provided in this OP.
3) Download ROM .zip file to the sdcard on the device.
4) Open up Flash Image GUI, select Browse and select the ROM .zip file, downloaded to /sdcard in the previous step.
5) Flash Image GUI will provide a warning, reminding that the ROM .zip file will *need* to be flashed in the custom recovery afterward.
6) Flash Image GUI will index the full ROM .zip file searching for the kernel and kernel modules. Once located, the Flash Image button should be enabled.
7) Select the Flash Image button and Flash Image GUI will load the kernel modules and kernel from inside the ROM zip file.
8) Select reboot recovery.
9) Inside the custom recovery, wipe cache and dalvik-cache (consult specific ROM directions) then load/flash the ROM zip file.
10) Reboot to normal Android mode and all should work including Wifi!
HTC Unlock - Users Guide for flashing ONLY a Kernel (zip file):
1) Make sure the selected Kernel is compatible with the currently loaded ROM. If not, this will result in a lot of frustration!!! See troubleshooting steps below.
2) Download kernel zip file to /sdcard.
3) Open Flash Image GUI, browse and select kernel zip file, downloaded/loaded to sdcard in previous step.
3) Flash Image GUI will validate the kernel zip file is contains the minimum required files
4) Select the Flash Image button and Flash Image GUI will load the kernel and the kernel modules from the source kernel zip file.
5) Reboot
Basic Troubleshooting:
Troubleshooting after Rebooting:
First step, when experiencing issues flashing is to RE FLASH the files again. Many times, re flashing again will clear up any issues.
If not, as a courtesy, I've provided general guidelines and suggestions below.
If the device is not booting, the majority of the time, this is not related to Flash Image GUI and therefore outside the scope of this application and thread. Generally, the root cause is due to user error in flashing a bad kernel or wrong kernel/ROM combination. Please refer to other threads/posts to learn more about the specific device limitations imposed by the HTC unlock process and generally accepted practices of recovering from a mistake.
Issue #1: If the device hangs or reboots while on the splash screen, the kernel (or packaged ramdisk in the kernel) is NOT compatible with your device!!!
Solution for #1: 1) Boot into fastboot. 2) Load the custom recovery (Command: fastboot boot c:\downloads\recovery.img). 3) Flash a known good kernel or restore a previously known good nandroid backup
Issue #2: If the device hangs or reboots while on the boot animation, the ROM is likely NOT compatible with the kernel!!!
Solution for #2: 1) Boot into fastboot. 2) Load the custom recovery. 3) Flash a known good ROM/kernel combination either from a zip file or restore from a known good nandroid backup.
Sweet, that was quicker then expected.
Going to do a video review on this in a few hours.
Thank you dev for your hard work
Sent from my HTC One X using Tapatalk 2
Awesome app thanks for all your work
Sent from my One X using Tapatalk 2
Here is a video if you guys want to see it in action, I didnt know at the time but you can select the rom from the app and it will extract and install the boot.img for you so you dont have to extract anything like i did in my video.
http://www.youtube.com/watch?v=EP5dX23aZ1M
review
XsMagical said:
Here is a video if you guys want to see it in action, I didnt know at the time but you can select the rom from the app and it will extract and install the boot.img for you so you dont have to extract anything like i did in my video.
http://www.youtube.com/watch?v=EP5dX23aZ1M
Click to expand...
Click to collapse
Great video!
dorkboy69 said:
Great video!
Click to expand...
Click to collapse
Thank you, Ill get better with time lol.
Will this work on other android devices?
I'm using Sony and figuring on how to enable this feature!!!
Add the epic 4g??
Sent from my SPH-D700 using xda app-developers app
Allen Hu said:
Will this work on other android devices?
I'm using Sony and figuring on how to enable this feature!!!
Click to expand...
Click to collapse
henslo said:
Add the epic 4g??
Sent from my SPH-D700 using xda app-developers app
Click to expand...
Click to collapse
Go to the market and look at the supported devices list people
Sent from my HTC One XL using Tapatalk 2
[APP] Flash Image GUI
joeykrim main thread, you can also catch him on freenode in #gen-dev
Allen Hu said:
Will this work on other android devices?
I'm using Sony and figuring on how to enable this feature!!!
Click to expand...
Click to collapse
Haven't had any knowledgable Sony testers. If you are familiar with ADB and a custom recovery, send me a PM and we can setup a time to test. Thanks!
henslo said:
Add the epic 4g??
Sent from my SPH-D700 using xda app-developers app
Click to expand...
Click to collapse
Partial support, as indicated in the application and in the market. Tricky situation with that kernel being in two partitions. I didn't own the device and didn't have a tester with enough time to work out the kinks. If you're familiar with ADB and a custom recovery, send me a PM and we can coordinate testing. Thanks!
I'm loving this app I haven't used it for a ROM yet just kernels bit it makes it a breeze I bought 2 of them ( one for me on my account and one for the misses on hers)
Sent from my One X using XDA Premium HD app
---------- Post added at 09:22 PM ---------- Previous post was at 09:19 PM ----------
I do have one request if possible can it have the ability to flash apps and what not
Sent from my One X using XDA Premium HD app
This app is sweeeet! :good: Sure saves a lot of hassle.
What exactly happens when you try to load a ROM zip and the app tries to zero in on the boot.img ? I see it loads a few lib files and finally flashes the boot.img as opposed to just pointing the app to the extracted boot.img and letting it flash it?
This makes switching Roms a breeze on the Hox 2.20 users that have to use fastboot for boot.img. This is a great and time saving app. Thanks Joey!!!
Sent from my One X using xda premium
ripnhack said:
I'm loving this app I haven't used it for a ROM yet just kernels bit it makes it a breeze I bought 2 of them ( one for me on my account and one for the misses on hers)
Sent from my One X using XDA Premium HD app
---------- Post added at 09:22 PM ---------- Previous post was at 09:19 PM ----------
I do have one request if possible can it have the ability to flash apps and what not
Sent from my One X using XDA Premium HD app
Click to expand...
Click to collapse
Appreciate the support and positive feedback! Could you provide more detail along with your feature request? Perhaps could you link to an example set of "apps" you want the ability to flash? The more detail the better I can research and provide a good reply.
metalhead2791 said:
This app is sweeeet! :good: Sure saves a lot of hassle.
What exactly happens when you try to load a ROM zip and the app tries to zero in on the boot.img ? I see it loads a few lib files and finally flashes the boot.img as opposed to just pointing the app to the extracted boot.img and letting it flash it?
Click to expand...
Click to collapse
Great question. I suppose I should provide more information around this process in a FAQ or some type of supportive documentation.
Due to common HTC kernel standards, the WiFi module, as well as a few other modules are loaded externally, meaning they are separate files from the boot.img. Some manufacturers compile WiFi and other modules into the kernel zImage file which is a large portion of the boot.img file.
Flash Image GUI loads not only the boot.img file, but also loads the associated modules to ensure, if just a kernel is flashed, WiFi will work when the device is rebooted. In dealing with ROM .zip files, if the user promptly reboots to the custom recovery and flashes the same ROM .zip, the modules will be loaded twice and this makes the FIG feature more a safety feature than a necessity. In the case the user doesn't flash the ROM .zip from the custom recovery, for whatever reason, this process ensures WiFi will work with the kernel preventing any WiFi not working issues.
Hope that makes sense and provides a little more background!
cmky8132 said:
This makes switching Roms a breeze on the Hox 2.20 users that have to use fastboot for boot.img. This is a great and time saving app. Thanks Joey!!!
Sent from my One X using xda premium
Click to expand...
Click to collapse
Appreciate the feedback and support!
So if Im switching ROMs... going from sense to aosp. I flash boot img using app, enter recovery, wipe data and system and flash rom? Would it delete what I just did with boot.img?
Sent from my One X using Tapatalk 2
InflatedTitan said:
So if Im switching ROMs... going from sense to aosp. I flash boot img using app, enter recovery, wipe data and system and flash rom? Would it delete what I just did with boot.img?
Sent from my One X using Tapatalk 2
Click to expand...
Click to collapse
Short answer: No
Longer answer: The boot.img is essentially a kernel and a ramdisk that following android's standards and is stored in a partition labeled as "boot", on most devices. Wiping the partition labeled "data" and "system" and copying over the ROM which goes into "system" will not delete the "boot" partition.
Hope that makes sense. Thanks for the support!
Thanks bro! Trying to help my buddy with flashing ROMs on the fly since his computer pooped on him haha.. awesome job on this app.
Sent from my One X using Tapatalk 2
joeykrim said:
Appreciate the support and positive feedback! Could you provide more detail along with your feature request? Perhaps could you link to an example set of "apps" you want the ability to flash? The more detail the better I can research and provide a good reply.
Great question. I suppose I should provide more information around this process in a FAQ or some type of supportive documentation.
Due to common HTC kernel standards, the WiFi module, as well as a few other modules are loaded externally, meaning they are separate files from the boot.img. Some manufacturers compile WiFi and other modules into the kernel zImage file which is a large portion of the boot.img file.
Flash Image GUI loads not only the boot.img file, but also loads the associated modules to ensure, if just a kernel is flashed, WiFi will work when the device is rebooted. In dealing with ROM .zip files, if the user promptly reboots to the custom recovery and flashes the same ROM .zip, the modules will be loaded twice and this makes the FIG feature more a safety feature than a necessity. In the case the user doesn't flash the ROM .zip from the custom recovery, for whatever reason, this process ensures WiFi will work with the kernel preventing any WiFi not working issues.
Hope that makes sense and provides a little more background!
Appreciate the feedback and support!
Click to expand...
Click to collapse
Thanks for the response some apps would be the android 4.2 camera with the gallery the 4.2 keyboard with emoji heres a link to a few http://forum.xda-developers.com/showthread.php?t=1970625
maybe custom boot & down animations (i usually disable mine but others may enjoy it)
That's all i can think of off the top of my head i hope that helps

[CWM] [STOCK] Deodexed | Odexed DDMD1 | UNIVERSAL GY KERNEL SUPPORT

DEODEXED/ODEXED DDMD1​
You can use this ROM as base for your ROM, Just PM me with a link to the thread!
This is the "FULL ROM" not just the /app and /framework folder. :highfive:
Click to expand...
Click to collapse
FEATURES:
Latest Busybox (Completely Symlinked).
Latest Indian firmware.
Rooted with latest Superuser.
No scrolling bug (as in DDLK2).
Fully stock, no changes in UI.
Now works with any kernel.
Bugless & Rock Solid Stock Build.
The successor of DDLK2.
INCLUDED KERNEL DETAILS:
Latest DDMD1 Kernel
DOWNLOADS:
Deodexed DDMD1
Odexed DDMD1
Mod Edit: Link removed due to using pay per click's site Mirror - File Repository[/URL]
CREDITS:
Samsung
Evanlocked
SamFirmware
dsixda Kitchen
nolinuxnoparty
d3cka
zalzondabuzz
RiddlerA
SCREENSHOTS:
Lidroid Toggles:
{
"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"
}
Settings Mod:
Evolution X4 Statusbar:
4 Way Boot Menu:
ADDONS & PATCHES:
Swipe To Remove Notifications
All Kernel Fix (Call, IMEI, etc.) (MD5: 1EBAE85470D1ECF388A358241B1096A4)
Evolution X4 StatusUI
4 Way Boot Menu
Lidroid Toggles
Settings with embedded QuickPanel Options
For Deodex:
Rename to Settings.apk
Push to /system/app
Set permissions r w- r-- r--
Reboot!
For Odex:
Rename to Settings.apk
Push to /system/app
Remove Settings.odex from /system/app
Set permissions r w- r-- r--
Reboot!
INSTALLATION:
Newbies:
Flash DDMD1 Stock ROM via Odin.
Reboot in Recovery.
Flash Temporary CWM.
Wipe Data & Cache.
Flash ROM.
Advanced users:
Reboot into CWM.
Format system, cache and data.
Mount all partitions.
Flash ROM.
ADDITIONAL INFORMATION:​​
Know why you should "even" think of using the odexed version.
WHAT IS AN ODEX FILE?
In Android file system, applications come in packages with the extension .apk. These application packages, or APKs contain certain .odex files whose supposed function is to save space. These ‘odex’ files are actually collections of parts of an application that are optimized before booting. Doing so speeds up the boot process, as it preloads part of an application. On the other hand, it also makes hacking those applications difficult because a part of the coding has already been extracted to another location before execution.
THEN COMES DEODEX
Deodexing is basically repackaging of these APKs in a certain way, such that they are reassembled into classes.dex files. By doing that, all pieces of an application package are put together back in one place, thus eliminating the worry of a modified APK conflicting with some separate odexed parts.
In summary, Deodexed ROMs (or APKs) have all their application packages put back together in one place, allowing for easy modification such as theming. Since no pieces of code are coming from any external location, custom ROMs or APKs are always deodexed to ensure integrity.
HOW THIS WORKS
For the more geeky amongst us, Android OS uses a Java-based virtual machine for running applications, called the Dalvik Virtual Machine. A deodexed, or .dex file contains the cache used by this virtual machine (referred to as Dalvik-cache) for a program, and it is stored inside the APK. An .odex file, on the other hand, is an optimized version of this same .dex file that is stored next to the APK as opposed to inside it. Android applies this technique by default to all the system applications.
Now, when an Android-based system is booting, the davlik cache for the Davlik VM is built using these .odex files, allowing the OS to learn in advance what applications will be loaded, and thus speeds up the booting process.
By deodexing these APKs, a developer actually puts the .odex files back inside their respective APK packages. Since all code is now contained within the APK itself, it becomes possible to modify any application package without conflicting with the operating system’s execution environment.
ADVANTAGES & DISADVANTAGES
The advantage of deodexing is in modification possibilities. This is most widely used in custom ROMs and themes. A developer building a custom ROM would almost always choose to deodex the ROM package first, since that would not only allow him to modify various APKs, but also leave room for post-install theming.
On the other hand, since the .odex files were supposed to quickly build the dalvik cache, removing them would mean longer initial boot times. However, this is true only for the first ever boot after deodexing, since the cache would still get built over time as applications are used. Longer boot times may only be seen again if the dalvik cache is wiped for some reason.
For a casual user, the main implication is in theming possibilities. Themes for android come in APKs too, and if you want to modify any of those, you should always choose a dedoexed custom ROM.
Prevent this thread from dying.
Rate this thread ★★★★★
Press "Tip us?"
Press thanks
Post in this thread (I am not asking you to spam!)
Click to expand...
Click to collapse
At last.Deodexed version is up!
Please upload it Asap
No longer switching to old Stock ROM's because of GNU Kernel, Hells Fusion Kernel, etc. not working!
NOTE: The problem why DDMD1 was not so commonly used is that if you flash a custom kernel other than the one provided with this, then you can't call anyone and IMEI is not displayed.... That is due to some changes in new libs and it is now fixed by flashing the lib provided in OP.
NOTE: To fix all Call & IMEI Problem, you need to flash the above (posted in OP) fix!
NOTE: According to some reports, that although network problems are fixed with above patch, IMEI does not appear with custom kernels. This error should not have occurred if you have followed EXACT instructions as in OP.​
Thread Changelogs:
CURRENT:
18-09-2013 WEDNESDAY
--------------------------------------
Added 4 Way Boot Menu to Addons.
OLD:
05-07-2013 FRIDAY
--------------------------------------
Added ODEXED | DEODEXED DDMD1 (no addons till now)
06-07-2013 SATURDAY
--------------------------------------
Added ADDONS - Lidroid Toggles, QuickPanel Settings, Swipe To Remove
08-07-2013 MONDAY
--------------------------------------
Removed Swipe 2 Remove. (Bootloop)
19-08-2013 MONDAY
--------------------------------------
Added Broadcom Radio Interface Layer fix.
boot.img
Do you guys have kernel of ddmd?
I need it for r&d.
CharsiBabu said:
Do you guys have kernel of ddmd?
I need it for r&d.
Click to expand...
Click to collapse
The above package also contains the DD MD1 kernel.
You may download and extract it.
low on data pack
Yash98 said:
The above package also contains the DD MD1 kernel.
You may download and extract it.
Click to expand...
Click to collapse
If I could, I would've downloaded the entire package.
But since I can't, I simply asked for it.
nvm.
Another thing,
can you provide me link to update 4 source?
Because i can't find it on their official page.
Link:-
http://opensource.samsung.com/reception/receptionSub.do?method=search&searchValue=5360
Its not yet released
(source)
Here is your boot.img
CharsiBabu said:
If I could, I would've downloaded the entire package.
But since I can't, I simply asked for it.
nvm.
Another thing,
can you provide me link to update 4 source?
Because i can't find it on their official page.
Link:-
http://opensource.samsung.com/reception/receptionSub.do?method=search&searchValue=5360
Click to expand...
Click to collapse
Can I ask you a question?
What would you do with the RamDisk?
The ODIN firmware(zip)package you've provided contains only one .tar.md5 file, but not separated PDA/MODEM/CSC files we've seen in earlier packages(DDLA2,DDLC2,DDLK2, and so on) and this cannot be flashed via ODIN. Even after checking a guide on XDA on how to use ODIN( I know how to use ODIN but I was confused when I found this only one file) and it fails to flash via ODIN. Later I flashed DDMD1 using this one. Please check the firmware package you've provided.
l0lh4rd said:
The ODIN firmware(zip)package you've provided contains only one .tar.md5 file, but not separated PDA/MODEM/CSC files we've seen in earlier packages(DDLA2,DDLC2,DDLK2, and so on) and this cannot be flashed via ODIN. Even after checking a guide on XDA on how to use ODIN( I know how to use ODIN but I was confused when I found this only one file) and it fails to flash via ODIN. Later I flashed DDMD1 using this one. Please check the firmware package you've provided.
Click to expand...
Click to collapse
Then how did I flash it?
Bro, that 1 .tar.md5 is to be put in PDA section and then start flashing.
You'll be suprised when it works!
You are right, but that was believed some time back
Like for example when you download ODIN flashable kernel .tar, do you get all the three tar's: PDA/CSC/MODEM ?
Yash98 said:
Then how did I flash it?
Bro, that 1 .tar.md5 is to be put in PDA section and then start flashing.
You'll be suprised when it works!
You are right, but that was believed some time back
Click to expand...
Click to collapse
Doesn't work
EDIT: Anyways I don't want to bother you with my problems( latest one: can't flash any custom kernels; might be due to new ramdisk as mentioned by member: Nitzz). Nice work
[REVERTED BACK TO OLD BASEBAND; FORGOT TO PROVIDE LOGCAT ]
Bro, if you want I can PM you the three PDA/CSC/MODEM .tar.md5 files by splitting this package, what say?.
Yash98 said:
Bro, if you want I can PM you the three PDA/CSC/MODEM .tar.md5 files by splitting this package, what say?.
Click to expand...
Click to collapse
No thanks but I already got from this thread http://forum.xda-developers.com/showthread.php?t=2335690&highlight=ddmd1 (thread closed but links not removed )
Yash98 said:
Bro, if you want I can PM you the three PDA/CSC/MODEM .tar.md5 files by splitting this package, what say?.
Click to expand...
Click to collapse
Nice idea :thumbup:
PM me too!
aniket.lamba said:
Nice idea :thumbup:
PM me too!
Click to expand...
Click to collapse
Here: http://www.mediafire.com/download/023udvzhhrgnb4z/S5360_DDMD1_ODDMD1_DDMD1.zip
Please report me if it is not 3 package!
l0lh4rd said:
Doesn't work
EDIT: Anyways I don't want to bother you with my problems( latest one: can't flash any custom kernels; might be due to new ramdisk as mentioned by member: Nitzz). Nice work
[REVERTED BACK TO OLD BASEBAND; FORGOT TO PROVIDE LOGCAT ]
Click to expand...
Click to collapse
yo yo!
m back..
yeah just read my thread..
latest firmwares support either my kernel or latest stock kernel..
what are the problems u all are facing?
Update Changelog:
Added Mirror
Update Changelog:
Added Swipe 2 Remove
Added Settings mod
Updated Credits
Can anybody provide me the latest stock kernal of ddmd1??
Sent from my room using sgy evo-x4//
I m always there to help.

Droid Dual Boot Tool - The Ultimate Dual Boot Wizard by ACRD Team

Droid Dual Boot Tool - The Ultimate Dual Boot Wizard by ACRD Team
{
"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"
}
Android Core Research & Development Team (ACRDT)
Proudly Presents You The
Droid Dual Boot Tool​
Introduction
We from the Android Core Research & Development Team (ACRDT) are glad to present you this “Droid Dual Boot Tool”, which does all the necessary steps to make your device dual boot. All you have to do is flash the zips as mentioned below. The main focus of this tool to help all Android Users to understand and have dual boot OS in their smartphone in a user friendly manner. This tool takes all the coding, so with a single click of mouse you can have dual boot. Awesome Right!! Keep Reading...
This Whole Concept was a Big Gigantic Hack by ACRD Team.
**Neither Device Manufacturer’s nor Android . Let It Like this.**
How it works?
Normally when you boot your phone, the kernel (or boot.img) file loads all the files from all partitions like /system, /data, /cache, /firmware…etc. So to have Dual Boot you need to edit the boot.img of the CustomROM such that it loads all the files from the /system2, /data2
To Achieve that We Partition the Device using Parted Commands in Zips ..We Uses Intelligent OpenRecoveryScript Commands To Flash them Automatically..In a Order Wise..
In a Short way I'm Explaining How this Stuff works.. our current rom which was in /system /data .we back up that rom .Our Script flash this Boot-To-Secondary_BackUp_Rom.zip this contains a modified recovery.& boot when we restores the rom it'll sent to /system2 & /data2 . Now what happens is our current rom is moved to secondary partitions.. Now /system /data are empty right so we can install our custom roms there ..
Check Out this Video & Zips If you want to know about how our Intelligent code Executes..
Dual Boot Mechanism (youtube)​
Why Dual Boot?
We Say If You Are A Custom Rom Lover..And An Enthusiast One to Try Out Roms..!!
To Try Out Every Rom..You Have To BackUp Your Current Rom And Flash It And Again Restore Your Old Rom..Seems Headache Process RIght..No Worries We Are Here For You..You Are In The Right Place With This 99% You Will Dual Boot Your Device..You Can Keep One Rom As Permanent And Try Out Other Roms With Out Touching First Rom.
Warning….!
Your warranty will be void, but for Xiaomi device you can get it back when you flash the ROM via EDL (Downlaod) Mode.
We Are Not Responsible For Damaged Ext-Cards,Corrupted emmc Chips, & Loss Of Data.
However, We'll Help You If you find any problem
Please Make a Full Nandroid Backup Of your Rom in External SD Card & Have a Full Copy Of Your Internal Data to your Ext-Card / Laptop.
Don’t try if BOOTLOADER is Locked. (You need to unlock it first)
Your System Performance Wont get Degraded..We Are Not using Both Roms Simultaneously ..We Are Just Switching From One Rom To Other Rom by Flashing Modified Boot.img Every Time..
Requirements
Our ultimate Tool & App..
MIUI /Current Rom “boot.img”.or it's Flashable Rom Zip
Custom ROM Marshmallow(CM,Mokee,etc) “boot.img”.or it's Flashable Rom Zip
TWRP Recovery Must Be Flashed To recovery Partition
An External Micro Sd Card.. With Minimum Free Space 8-10GB.
A Cup Of Hot Coffee / Ramen
Our Ultimate Tool Looks Like This
Our Ultimate App Looks Like This
DroidDual Boot Tool Majorly Contains Four Parts.
1. Wizard -: Used To Dual Boot Your Device
2. Tool -: Used To unpack/repack boot & recovery image files (For Advanced Users)
3. Donations - : Your Efforts Are Most Appreciable For us To Continue Our Work For All Android Devices. For Further Details Regarding Donation Kindly Contact Us. See You In Donation Page
4. AboutUs -: It’s Your Courtesy To Know About Us
How To Use This Ultimate Tool
Step 1 -: Select The Custom rom zip which you are going to install. Either Select The zip or it's boot.img
Step 2 -: Now Select your Custom TWRP Recovery.img in the Second Browse
Step 3 -: Here’s the Main Part. Now What You Have to do is .
- You need to pick up the boot.img from your current ROM i.e.
- Either you select the current rom zip . (“Which Is Flashed Already In your Device”) or select the boot.img from Your current rom zip
- OR If You Don't Have Your Current rom zip.. you can use these app From PlayStore To backup your Current bootpartition. (boot.img)
Rashr Open the app>Click On backup>Kernel backup>filename.img BackUpFile.img is Located In
Step 4 -: Once All the above *.img's / *.zips was selected . Select your device Then click start wizard It'll automatically does the necessary patches for your device & opens the folder.
Keywords:
1. Boot-To-Secondary_BackUp_Rom.zip = This Zip Is used to boot into Your Rom WHICH IS RESTORED VIA RECOVERY.This Zip Contains the patched recovery & patched boot.
2. Boot-To-Primary_Custom_Rom.zip = This Zip Is used to boot into cutom rom.This zip contains normal TWRP recovery & your Selected Custom rom Boot.img file.
3. /sdcard1 = Ext-card / Micro sd card
The Opened Folder Usually look Like This.
Flashing Process
Step 1 -: Paste that Folder Into Your Ext-Card Root Folder.. Like This
Note:: Always The path of DualBoot Folder & Sub Folders In Ext-card Root Folder (/sdcard1/DualBoot/AboveFolders/**.zip)has to Be Maintained..Otherwise No Flashing Will Work..
Step 2 -: Copy the Custom Rom Which you want to install And paste It in Install This Rom Folder..Check the Above picture..
I Assume you have done all Backup Of Internal & Cust EFS,Persist,Firmware Partitions​
Step 3 -: Install Our DualBootManagerApp..You Can Find it in DualBoot Foder .Click On Wizard-->Click Create Partitions…Like Below..Now The Magic Starts..It Took Around 20 Min. Don’t Interrupt the process… Now Enjoy Your Coffee / Ramen
That’s it Guys..With In Three Steps..you Are in DualBoot.. Once the Above Process Done Perfectly You’ll Be Again Boot back to Your Current Rom..Again Use Our App..To Switch between Os’s..
Check Out These Videos..If you want .For How to Flash..
Dual Boot Flashing (youtube)
Switch Os's​It's Dead Easy..Use our App go to SwitchOs’s..Select Your Desired OS..
Flashing Part Revert back to Normal​1. Take A BackUp of your Internal..and Rom use Switch os To boot into particular Os And take a Copy & backup Of Respective os’s..Like Which os Backup you want..
2. Use Our App Wizard--> Remove Partitions.. Once All Done You’ll Rebooted Into Recovery..
3. There restore Your Rom. Or install new zips What Ever You Want….
Check Out this video If you Want. For Revert back to Normal.
Revert Back To Normal (youtube)
Check Out the FAQ (MUST)
Make Sure To Check Out The Help & About Us Tabs In our Tool.. Where You Can Find The More In a Crystal Clear way About The Procedures..​1. What I have to do.If I want to change (Flashing New) custom roms?
A) Simply Follow Step 1 & Step 2 In How to use Dual boot wizard. Then Click Start Wizard..Then You’ll Get New Boot-To-Primary_Custom_Rom.zip In /DualBoot/2-SwitchOS..Copy That Zip And paste It In Your Micro-Sdcard..The Path Should Be Like /sdcard1/DualBoot/2-SwitchOS/ Paste The New File In here …Use our App to Switch to Primary os..Then Reboot to recovery..There flash Your new Custom Rom zip..
NOTE If you Are Changing(Flashing New) Custom Roms .Then You have to do the above process. Then Only Your Device Will boot into that particular Custom rom.You have to do this every time When Ever You Are Changing Custom Rom. The Main Purpose Of This Zips is to Switch between Custom rom to secondary (backUp) Rom. If You Didn’t change the boot.img while installing new rom.you cannot switch between roms.
2. If you Face Any Error Which Cant Be resolved..
A) Flash A full rom via edl mode. (Download Mode)
3) How to change(Flashing new) secondary(backup) rom.if i get any new update..
A) Changing the backup rom which was in /system2 /data2 was lenthy..it is like a permanent rom..I mean it's not easily changable ..if u want to change it no matter what..Here's one way.Use the wizard tool again from the beginning by browsing your new update rom in secondary os.then copy the new files in ext-card "DualBoot" folder..Then Start Remove partition process then Install Your updated rom.. there in that rom do what ever changes you want.Install Our App.Then Start the flashing process like from the beggining...
4) What Do i have to do if i want to flash any xposed or dolby or super su or any zips in any rom..
A) No Worries just Flash Them Normally as usual in recovery.. If it didn't work then report us.we'll look in that
5) When Will We Get This Awesome Tool & App For Our Other Xiaomi Devices...
A) As For now, It is For All Redmi 3S Varients..Soon..In the Next Release..We'll Include 2 More Devices..But We Need Your Support ..If You think We Are Affordable .You Can Show Us Your Support via Donations..Until Then .Stay Tuned With Our Forum...
Credits
Android Core Research & Development Team.
Justify Born Shadap (@justzzshadz),
Sai Tyson (Tyson),
Yuventius Hadinata Irgianto (Silfox),
Are The Developers of Droid Dual BootTool
Specific Device Testers
Thanks To m4mohit For Banner Editing
Humble Thanks to Our Donators. (Help Us to Serve You Better)
XDA:DevDB Information
Droid Dual Boot Tool, Tool/Utility for the Xiaomi Redmi 3S
Contributors
SILF0X, Tyson12
Version Information
Status: Stable
Current Stable Version: 1.1
Stable Release Date: 2017-02-28
Created 2017-02-22
Last Updated 2017-02-28
DOWNLOAD LINK :
DROID DUAL BOOT TOOL V.1.1
Change log :
V.1
- Initial Released
V.1.1
- Added Dual Boot Manager.apk
- Added MobiKwik
- Added "Open Folder"
- Change some documentation
- Change some filename (due android limitation)
"More devices will add soon on next update. Stay tuned with us"
RESERVED
Thank you So much for Developing this tool. I will test this tool to install 2 ROMs
m4mohit said:
Thank you So much for Developing this tool. I will test this tool to install 2 ROMs
Click to expand...
Click to collapse
Thanks you mohit for the banners.
Not gonna using MIUI and LineageOS same time but thanks you for this developing for our device !
hiimpig1 said:
Not gonna using MIUI and LineageOS same time but thanks you for this developing for our device !
Click to expand...
Click to collapse
Thanks bro
SILF0X said:
Thanks you mohit for the banners.
Click to expand...
Click to collapse
My Pleasure
Updated : Dual Boot Switcher
SILF0X said:
Updated : Dual Boot Switcher
Click to expand...
Click to collapse
anyone tried its working or has bugs?
This isn't easy job. Good job bro..
Any one try. And working ???
Download is there in .exe format where is the .apk file
Is it system based or android.
Gud job there.
But if we had a menu while boot up to select any ROM to start that will be osm.
bhim768 said:
Download is there in .exe format where is the .apk file
Is it system based or android.
Click to expand...
Click to collapse
Dear user the apk was in the tool.. Once the tool extracts the zips.. In the output folder you Can See Apk..
you can Try It With Out Any Worries..it was tested & Working Fine.. Please follow the instructions as mentioned
Thanks
---------- Post added at 06:53 PM ---------- Previous post was at 06:51 PM ----------
adityaon said:
Gud job there.
But if we had a menu while boot up to select any ROM to start that will be osm.
Click to expand...
Click to collapse
Sure We'll try our best to Implement It.. Thanks For the feedback..
---------- Post added at 06:54 PM ---------- Previous post was at 06:53 PM ----------
immy28 said:
Any one try. And working ???
Click to expand...
Click to collapse
you can Try It With Out Any Worries..it was tested & Working Fine.. Please follow the instructions as mentioned
You Can Check out the videos for your conformation..
Thanks
---------- Post added at 06:55 PM ---------- Previous post was at 06:54 PM ----------
cc6691 said:
anyone tried its working or has bugs?
Click to expand...
Click to collapse
Dear User ..
you can Try It With Out Any Worries..it was tested & Working Fine.. Please follow the instructions as mentioned
you Can Check out the videos for your conformation
Thanks
---------- Post added at 06:56 PM ---------- Previous post was at 06:55 PM ----------
javhusin2 said:
This isn't easy job. Good job bro..
Click to expand...
Click to collapse
Dear User
Thanks For the Feedback..Feel Free To Try it & Ask Any Queries Regarding This...
Thanks
Please add support for zenfone 2 laser
Or make a guide on how to add support for other devices
dont try this if your /data is encrypted
it wont work
Jure_aleksic said:
dont try this if your /data is encrypted
it wont work
Click to expand...
Click to collapse
can i use this on another device?
cc6691 said:
can i use this on another device?
Click to expand...
Click to collapse
Jure_aleksic said:
dont try this if your /data is encrypted
it wont work
Click to expand...
Click to collapse
Dear user
It's not like that, your whole /data will be repartitioned
So it's independent of data encryption.
You can try this with out worries
Thanks
Regards
SaiTyson
---------- Post added at 03:43 AM ---------- Previous post was at 03:42 AM ----------
cc6691 said:
can i use this on another device?
Click to expand...
Click to collapse
Sorry the initial stage was meant fit for Redmi3S Variants
Soon it'll be released for other devices
Thanks
Regards
SaiTyson
Hi,I have some problems. When I added a new ROM ,then my screen lock was in error. Even if I draw the correct pattern, it will still show a pattern error.How can I fix it ?

Categories

Resources