Rescue Package
This tool allows you to completely safely pimp your rom.
It will backup all your original system files and create a flashable zip containing them. This way, if some tweak cause problems, simply flash your Rescue Package to remove all modifications made by Pimp My Rom while leaving all your apps & data intact.

Universal Init.d Support
Enable init.d support with absolutely ANY kernel.
This tool is the first completely universal method for granting init.d support, for the simple reason that everything happens on the app side.
Pimp My Rom will detect when your device is rebooted and execute your init.d scripts automatically, acting just like a kernel with init.d support would.
This tool also gives you a way to quickly manage your int.d scripts. Edit, delete & run scripts at the touch of a button!

Pimp My CPU
A beautifully designed interface that gives you full control over your processor :

- Call Ring Delay : Define the interval of time in seconds between the dialing and the ringing
- Proximity Sensor Delay : Define the delay between your sensor's detection and the screen being lit off/back-on
- In-Call Volume Steps : Define the maximum amount of volume steps while in call. Only working on froyo & gingerbread (Android 2.2.x & 2.3.x)
- SMS/MMS Retry Timer : Define the amount of automatic retries when an SMS or MMS fails to be sent as well as the delay between those retries
- AMR Wideband : improve in-call audio quality by enabling Adaptive Multi-Rate encoding

[LIST][*] Hotfix for the Network & Internet section FC when the current wifi scan interval value couldn't be detected by the app

Alpha v3.1 (16/12/2012)

Added Wifi Scan Interval control to the Network & Internet section, set the interval in seconds between which the system automatically checks for available wifi networks. A high value will save more battery, a low value will help if your wifi disconnects often.

Fixed Init.d support verification process that was returning false everytime in v3.0

Fixed Hardware Acceleration enabler tweak that was commented-out by mistake in v3.0

Fixed Purgeable Assets toggle state not being saved

Fixed SYN Attack protection checkbox state not being saved

Minor text modification

For older changelogs, see post #4 of this thread

Quote:

Quote:

Pimp My Rom works on maybe 99.99% of the android devices, these are only the ones users confirmed workingRemember that results might differ on the same device, depending on the rom, kernel and recovery

Here you'll find featured articles about Pimp my Rom that were published on different famous android/high-tech websites.If you published one or read one that's not on the list, please tell me so I can add it.

Android, like any other Linux system, has a built-in task killer, called the LowMemoryKiller (a.k.a LMK).
The LMK analyses the RAM usage of all applications in real-time, and when the system has too many apps open, or too much RAM consumption, the LMK will start killing apps to free-up some memory.

To determine which app to kill first, the LowMemoryKiller distinguishes 10 categories of apps, which are called the Out-Of-Memory (OOM) Priorities.
As the name implies, the LMK will create a kind of ordered list based on the determined priority of the apps.

Those categories are as follow :

Foreground App

Visible App

Secondary Server

Backup App

Home App

Hidden app

Empty App

Perceptible App

Heavy-Weight App

Content Provider App

For each of these categories, Pimp my Rom will modify the memory threshold for LMK to start killing processes and adjust the priority of the categories to match three preset levels of multitasking :

Low : Your device will be able to handle less opened apps at once, but consume less RAM and less battery

Mid : An average good level of both Multitasking and not too much RAM drain/Battery drain

High : Your device will be able to handle a big bunch of opened apps at once without being killed

The OOM settings in PmR also takes care of the ADJ, but I might add a separate 3 levels radiogroup for ADJ too

¤ Minfree Values :

The LowMemoryKiller isn't only about OOM groupings, the Minfree values are very important as well :
The Minfree module of the Low Memory Killer is here to set the minimum amount of free RAM that should always be available.
If the free RAM level goes below the Minfree value, the the LMK starts killing apps (based on the OOM priorities, remember ? )

In other terms, if the LMK is the gun for killing apps, then the Minfree module is the trigger ^^

Again, PmR will allow you to choose between 3 preset levels (for the purpose of clarity for the user, the levels are inverted from the actual values. i.e : High Level in the app wil set a low minfree value, allowing for more multitasking) :

Low : The minimum amount of free Ram (minfree) will be set high, allowing apps to get killed by the LMK quickly. = Not much multitasking, but good battery/less lags as you always have a good amount of free ram

Mid : Balanced Level, good multitasking, not much lags and average battery

High : Big multitasking hog

¤ zRam (Zero Capacitor Ram) :

Taken from Wikipedia :
zRam is an experimental (staging) module of the Linux kernel. It was previously called "compcache". zRam increases performance by avoiding paging on disk and instead uses a compressed block device in RAM in which paging takes place until it is necessary to use the swap space on the hard disk drive. Since using RAM is faster than using disks, zRam allows Linux to make more use of RAM when swapping/paging is required, especially on older computers with less RAM installed.

To make it simple, zRam allows to virtually increase the amount of RAM your device has by using the Swap spaces in your device memory.
This is mostly profitable for low-end devices that come with few ram (512mb generally).

PmR offers 2 levels :

64 mb : virtually adds 64mb of RAM

128mb : virtually adds 128mb of RAM

zRam settings requires a kernel that includes this module.

I hope these little explanations will help you understand how to use those settings, and help you find the right combination for your device and use

DNS and ppp0 tweaks for faster name-resolution, which means faster connections to websites.

ø New Tweaks selection screen : GPS Configuration

==> Choose between 79 countries (and 5 continents) of gps.conf files: those files are essential for the accuracy and lock-speed of your device's gps. (Thanks to gangsterjoop for the files)

ø New Adblock file of over 200 000 hosts ! (100x more than before) (Thanks to BSDgeek_Jake for the host file) --> added to extra features screen

ø New init.d scripts :

Move Dalvik-cache to /cache to increase data storage

Bind-mount dalvik-cache to allow a device to boot without sdcard (useful for devices with damaged internal sdcard)

Touchscreen responsiveness improvement tweaks

ø New Enable/Disable features :

Disable and Re-Enable Android logger

Disable Gentle Fair Sleepers

Disable New Fair Sleepers

Disable Normalized Sleeper

ø Rewritten every single init.d script :

This allowed me to realize many of them were not working, so I added a lot of missing values, and fixed a countless number of errors, redundant values and typos. So there should be some big improvement on the effects of init.d tweaks.
I also set an order of execution of init.scripts to avoid conflicts.

ø Removed themes and S-Voice

The S-Voice flaw that allowed other devices to use it appears to be patched and it was heavy, and themes were heavy and not really useful, you can download a countless number of them for free on the market

ø Changed installer theme to Sense

I realized that the options subtitles were not readable with ics theme, so most of the tweaks effects explainations were hidden.

ø Pimp My Rom will now come in two versions :

One will include the latest version of Aroma (with touchscreen working out-of-the-box, but issues on some devices) and One using Aroma v2.51 (With touchscreen calibration, and this version appears to fix the weird texture/ghost-input/moving screen/vibration issues people have with some devices with aroma v2.56)

ø Major code clean-up, various bugfixes

Re-organized and cleaned-up both aroma-config and updater-script
Fixed the way the installation process input displays sections and sub-sections
Fixed some tweaks getting installed instead of others when they shouldn't, and some other bugs

I'm pretty sure I forgot some stuff, I'll add it when it comes back in mind

Flash your Rom & apply the tweaks and options you want to be included in your preset

Create a /data folder at the root of your Rom's zip package, and in this folder create a /app folder (so you now have a /data/app path

Download this version of the PmR apk and place it in the freshly created /data/app folder in your Rom's zip(this is the playstore-signed version, which will allow your users to receive OTA updates as if they installed it from the playstore)

Grab the following files from your device and place them at the corresponding locations in your Rom's zip package :(If some of those files are missing on your device, don't worry, this simply means they are not needed in your preset)

Note : this does not include the Apps & Mods section, except for the Adblock & OpenVPN Support

Create the following path of folders in your Rom's zip : /data/data/com.androguide.pimp.my.rom/shared_prefs/

On your device, navigate to /data/data/com.androguide.pimp.my.rom/shared_prefs and copy all the content of this folder to your Rom's zip freshly created /data/data/com.androguide.pimp.my.rom/shared_prefs/ folder

Open your Rom zip's /system/build.prop in a text editor

Now open your device's /system/build.prop in a text editor, and copy everything from the first occurence of "### Pimp my Rom : xxx" to the end of the file, then paste it at the end of your Rom's build.prop (Do not forget to save the modifications)

Ok, now we have added all the required assets for Pimp my Rom and your custom preset, let's pass-on to the updater-script modifications in order to install those assets properly and set the right permissions to them.

In your Rom's zip package, navigate to /META-INF/com/google/android and open updater-script in a text editor

Copy the following lines near the end of the file, but before "unmount("/system");" :

Code:

ui_print("Installing Pimp my Rom with a custom preset...");
package_extract_dir("data", "/data");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/init.d");
set_perm_recursive(0, 0, 0771, 0660, "/data/data/com.androguide.pimp.my.rom/shared_prefs");
set_perm(0, 0, 0644, "/data/app/com.androguide.pimp.my.rom-1.apk");
set_perm(0, 0, 0644, "/system/etc/hosts");
set_perm(0, 0, 0755, "/system/etc/install-recovery.sh"); <<< Do NOT include this line if you didn't activate init.d through PmR in your preset
set_perm(0, 0, 0755, "/system/bin/entropy-gen"); <<< Do NOT include this line if you didn't use the Entropy Generator in your preset
set_perm(0, 0, 0755, "/system/xbin/rngd"); <<< Do NOT include this line if you didn't use the Entropy Generator in your preset
set_perm(0, 0, 0755, "/system/xbin/openvpn"); <<< Do NOT include this line if you didn't activate OpenVPN support in your preset
ui_print("Done installing Pimp my Rom - by [email protected]");

very good work! will i can to install this on my LG Optimus Hub whit CM 7 rom (android 2.3.7)?

Thanks for your kind words,

This has been designed mainly for ics & jb roms, but you can still try on gb, just make sure you do NOT select gapps/inverted gapps and themes.
The tweaks, extra apps and extra features should work properly.

In fact, the easiest way for you would be to Select "Stock-based Rom" option in the first screen, so the script won't display gapps and themes options. I will rename "Stock-based rom" option to "Stock and Gingerbread roms" in next update, thanks for the idea.

Please make sure you post your results, so I can add your device to the confirmed devices list if it worked properly.

very good work! will i can to install this on my LG Optimus Hub whit CM 7 rom (android 2.3.7)?

Thanks for your kind words,

This has been designed mainly for ics & jb roms, but you can still try on gb, just make sure you do NOT select gapps/inverted gapps and themes.
The tweaks, extra apps and extra features should work properly.

In fact, the easiest way for you would be to Select "Stock-based Rom" option in the first screen, so the script won't display gapps and themes options. I will rename "Stock-based rom" option to "Stock and Gingerbread roms" in next update, thanks for the idea.

Please make sure you post your results, so I can add your device to the confirmed devices list if it worked properly.

i am going to test it on my p500 lg optimus one and i am bit shock with the size but i will install it anyways

Actually it is big because it contains everything the script needs for all different types of roms, but it won't actually install 170mb of stuff on your device...unless you choose to^^
You choose what to install, the main heavy stuff are the gapps and inverted gapps (which will only work with jb). I'll make a light version (gapps-free) soon, might be a good idea.

XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality.Are you a developer? | Terms of Service