☠ [APK][Tweaks & Mods] █ PIMP MY ROM █ BETA v1.0 {Any Device // Any Rom} ☠

Search This thread

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
☠ [APK][Tweaks & Mods] █ PIMP MY ROM █ BETA v1.0 {Any Device // Any Rom} ☠

NEW : Check-out the Dedicated Pimp my Rom website (still under construction) :
http://www.pimpmyrom.org
Subscribe to the Newsletter to be Notified when a New Update is Released!


pmrsmaller.png

Network & Internet
  • Wifi Scan interval in seconds
  • TCP Congestion Algorithm selection
  • Media streaming tweaks
  • Use Google DNS servers
  • Enable/Disable HSUPA
  • Protect against SYN attacks by hardening your TCP stack
  • Avoid Time-Wait state
  • Block all redirects
  • Block source-routing
  • Various IPv4 tweaks

Multitasking
  • 3 presets of OOM Groupings (lom/mid/high)
  • 3 presets of Minfree values (low/mid/high)
  • 2 presets of zRam compression (64mb/128mb)
  • Adjust Dalvik VM to new OOM & Minfrees
  • Adjust kernel to new OOM & Minfrees
  • Renice low consumption processes to a softer value

Dalvik VM
  • VM Heap Size selection
  • VM Heap Growth-limit selection
  • VM Heap Start Size selection
  • Optimization Flags selection, any combination of verification, optimization & register mapping
  • Force dex optimization on /data only
  • Enable/Disable Just in Time Compiler (JIT)
  • Enable/Disable JNI Error Checking
  • Enable/Disable bytecode verification for Dalvik


Kernel
  • Governor tweaks
  • I/O Scheduler tweaks
  • Disabling I/O stats
  • Enable/Disable Vertical Synchronization (Vsync)
  • Disable Normalized Sleepers
  • Disable New-Fair Sleepers
  • Disable Gentle-Fair Sleepers

Toggle Android Features
  • Hardware Acceleration
  • Force GPU rendering
  • Surface Dithering
  • Purgeable Assets
  • 16bit Transparency
  • Kernel JNI Error Checking
  • Android Logger
  • Locking launcher in memory

Telephony
  • Call Ring Delay
  • Proximity Sensor delay
  • In-Call amount of volume steps
  • SMS & MMS retry timer if failed sending
  • SMS & MMS amount of retries if failed sending
  • Enable/Disable AMR Wideband (a.k.a HD Voice)

Touchscreen & Display
  • Amount of fingers recognized by the screen (multitouch)
  • Minimum amount of time between 2 touch events (Pointer Duration)
  • Maximum amount of events per second WindowsManager can handle
  • SurfaceFlinger's minimum velocity
  • SurfaceFlinger's maximum velocity
  • Enable/Disable FPS Capping

Miscellaneous
  • Optimize sqlite3 databases at each boot
  • I/O Tweaks for ext4 file-systems
  • Internal & External sdcard tweaks
  • Zipalign all apks at each boot
  • Various battery saving tweaks
  • Various camera quality tweaks
  • Raising jpg quality to 100%
  • Enable quickpoweron



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 :
  • Minimum & maximum CPU frequencies management
  • Overclocking if your kernel supports it
  • Governors management
  • Schedulers management
  • Voltage control


Density Changer
Safely modify your display's density in 3 easy steps.


Entropy Generator
A graphical user interface for the Random Number Generator Daemon (RNGD) binary.
Independently set :
  • Feed Interval
  • Feed Timeout
  • Amount of Random bytes
  • Fill-watermark
  • Kernel random read wakeup threshold
  • Kernel random write wakeup threshold


Dual Bootanimations
Allows you to have 2 different bootanimations which will alternatively be displayed, one boot each.


Lock Apps in Memory
Bypass Android's built-in task killer by locking any installed application in memory, including system apps!


Navigation Bar Toggle
Self-explanatory, toggle the navigation bar on & off


Gps Configuration
Choose between 79 countries + 5 continents of gps.conf files:
Having the right gps.conf file for your country is esssential for the accuracy and lock-speed of your gps)

Code:
   Africa 
   Asia 
   Europe 
   North America 
   Oceania 
   South America

   Angola 
   Argentina 
   Australia 
   Austria 
   Bangladesh 
   Belarus 
   Belgium 
   Bosnia & Herzegovina 
   Brazil 
   Bulgaria 
   Cambodia 
   Canada 
   Chile 
   China 
   Costa-Rica 
   Croatia 
   Czech Republic 
   Denmark 
   El Salvador 
   Estonia 
   Finland 
   France 
   Germany 
   Greece 
   Guatemala 
   Hong-Kong 
   Hungary 
   India 
   Indonesia 
   Iran 
   Ireland 
   Israel 
   Italy 
   Japan 
   Korea 
   Kyrgyzstan 
   Latvia 
   Lithuania 
   Luxembourg 
   Macedonia 
   Madagascar 
   Malaysia 
   Mexico 
   Moldova 
   Netherlands 
   New Caledonia 
   New Zealand 
   Norway 
   Oman 
   Pakistan 
   Panama 
   Philippines 
   Poland 
   Portugal 
   Qatar 
   Republic of Serbia 
   Romania 
   Russian Federation 
   Saudi Arabia 
   Singapore 
   Slovakia 
   Slovenia 
   South Africa 
   Spain 
   Sri Lanka 
   Sweden 
   Switzerland 
   Taiwan 
   Tanzania 
   Thailand 
   Turkey 
   Ukraine 
   United Arab Emirates 
   United Kingdom 
   United States of America 
   Uzbekistan 
   Venezuela 
   Vietnam 
   Yugoslavia


Device Hidden Menu
Access your device's hidden settings without having to dial weird and hard to remember codes




Download & install some popular mods without flashing anything!

Pimp My Beats
A full-blown audio mod containing :
  • Modified DSPManager
  • Beats Audio binaries, libs, framework & other assets
  • Dolby Mobile binaries, libs, framework & other assets
  • SRS binaries, libs, framework & other assets


Bravia Engine 2
Install the very popular Bravia Engine 2 by Sony on any device with the touch of a button!


xLoud & ClearAudio+
Install the popular xLoud audio enhancement, along with the brand new ClearAudio+ engine and equalizer.


Sony Album
Install the Sony Gallery & Photo Editor app for a full Sony media experience


OpenVPN Support
Add OpenVPN support to your device and surf the web safely




Pimp My Rom comes with its own set of Settings.
Those allow you to :
  • Select among 12 different transition animations to apply independently to each section of the app
  • Select the type of reboot used by the "Reboot Required" Notification (Hot reboot/Normal reboot)
  • Clear all the app's preferences



Currently, the only option included i this section allows you to have the "PIMPED" prefix before your Rom's name in Settings/About





Make sure to always have a nandroid backup before applying tweaks
  • Make a nandroid backup
  • Download the app
  • Install it like you would with any apk
  • Click the rescue package section in the app and create a new Rescue Package
  • Choose and apply the tweaks you want, make sure you read the descriptions and instructions in-app






BETA v1.0(29/04/2013)

Changelog available at : http://pimpmyrom.org/blog-beta1.php


Alpha v3.3 (18/12/2012)
  • Added a new Tool : Density Changer. Allows you to modify your device's LCD density easily and safely, avoiding the usual playstore compatibility issues after dpi changes
  • Fixed Voltage Control set-on-boot function


Alpha v3.2 (17/12/2012)
  • New Telephony Tweaks section (all values are automatically detected) :

    - 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
  • Improved the Camera Quality tweak (in the Miscellaneous section) by adding more build.prop modifications :

    - Set maximum capture resolution to 8 megapixels (ro.media.capture.maxres)
    - Set panorama resolution to 3264x1840 (ro.media.panorama.defres)
    - Set panorama frames resolution to 1280x720 (ro.media.panorama.frameres)
    - Enabled VideoModes (ro.camcorder.videoModes)
    - Set video media encoder maximum fps to 65 (ro.media.enc.hprof.vid.fps)

    Alpha v3.1.1 (17/12/2012)
    • 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




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

      - Acer Liquid Metal (codename ?)

      - Asus Infinity (TF700)

      - Asus Eee Pad (TF101)

      - Asus Transformer Pad (TF300T)

      - Cube U30GT-H (Chinese Tab)

      - Google-Asus Nexus 7 (Grouper)

      - HP Touchpad (codename ?)

      - HTC Amaze (codename ?)

      - HTC Desire C (codename ?)

      - HTC Desire S (S510E)

      - HTC Desire HD (codename ?)

      - HTC Desire Z (codename ?)

      - HTC Droid Incredible (codename ?)

      - HTC Evo 3D (codename ?)

      - HTC Evo 4G (Supersonic)

      - HTC Explorer (A310e)

      - HTC HD2 (T9193)

      - HTC Incredible S (S710e)

      - HTC MyTouch 4G Slide (codename ?)

      - HTC One V (Primo)

      - HTC One X (Endeavour)

      - HTC Thunderbolt (ADR6400L)

      - HTC Tattoo (Click)

      - HTC Vision (T-mobile G2)

      - Huawei Ascend (g300)

      - Huawei Honor (U8660)

      - Huawei U8030 (codename ?)

      - Huawei u8800pro (codename ?)

      - Le Pan II Tablet (codename ?)

      - LG Eclypse (C800)

      - LG G2x (P999 DW)

      - LG Optimus Black (codename ?)

      - LG optimus one (P500)

      - LG Optimus 3D (P920)

      - LG Optimistic V (VM670)

      - Motorola Atrix 2 (MB865)

      - Motorola Atrix 4G (MB860)

      - Motorola Bravo (MB520)

      - Motorola Defy (codename?)

      - Motorola Droid X (MB810)

      - Motorola Droid 2 (DW2E)

      - Motorola Photon Q (codename ?)

      - Motorola Triumph (Virgin Mobile model)

      - Samsung Galaxy Ace + (S7500)

      - Samsung Galaxy Nexus (i9250)

      - Samsung Galaxy Nexus 4G (Verizon)

      - Samsung Nexus S (i9020)

      - Samsung Nexus S (SCLCD - i9023)

      - Samsung Galaxy Exhibit 4g (Ancora)

      - Samsung Galaxy Gio (S5660)

      - Samsung Galaxy Note (N7000)

      - Samsung Galaxy Note 2 LTE (N7105)

      - Samsung Galaxy Note 10.1 (N8000)

      - Samsung Galaxy Player 5 (YP-G70)

      - Samsung Galaxy S (I9000)

      - Samsung Galaxy S Advance (I9003)

      - Samsung Galaxy S Plus (I9001)

      - Samsung Galaxy S2 (i9100)

      - Samsung Galaxy S2 (T-Mobile T989)

      - Samsung Galaxy S2 (AT&T i777)

      - Samsung Galaxy S2 (SHW M250k)

      - Samsung Galaxy S2 Epic 4g Touch (SPH-D710)

      - Samsung Galaxy S3 (I9300)

      - Samsung Galaxy S3 (ATT 1747)

      - Samsung Galaxy S3 (T-Mobile)

      - Samsung Galaxy Tab (P1000)

      - Samsung Galaxy Tab 2 - 7.0 (P3100)

      - Samsung Galaxy Tab 7.7 3G (P6800)

      - Samsung Galaxy Tab 7.7 Wifi (P6810)

      - Samsung Galaxy Tab 7.7 Verizon (i815)

      - Samsung Galaxy Tab 8.9 (p7300)

      - Samsung Galaxy Tab 10.1 Wifi (P5110)

      - Samsung Galaxy Y (S5360)

      - Sony Live with Walkman (WT19)

      - Sony Xperia Arc S (LT18i)

      - Sony Xperia Mini (ST15i)

      - Sony Xperia Neo (codename ?)

      - Sony Xperia Neo V (codename ?)

      - Sony Xperia P (LT22i)

      - Sony Xperia Play (R800i)

      - Sony Xperia Ray (ST18i)

      - Sony Xperia Sola (MT27i)

      - Sony Xperia U (ST25i)

      - Toshiba Thrive (codename ?)

      - Test it on your other devices and report your results here please !



      - amarullz for Aroma Installer

      - ...Awesome... for Beats Audio

      - ImbaWind for Adrenaline Boost

      - Rizal Lovins for Sony Walkman apps

      - blunttedsmurf for Hulu+ hacked

      - pikachu01 for his Thunderbolt scripts

      - The AOKP Team for some of their source-code

      - gangsterjoop for All countries gps.conf files

      - Whitson Gordon from Lifehacker.com for the Thread top image.

      - Pocketnow.com for the awesome PmR presentation video

      - Papa Smurf151 for his friendly help and some tweaks found in his SmurfedOut Script

      - dj_stikes & Boxer145 for Translating PmR to Spanish (Aroma Version)

      - android1234567 for correcting my spelling mistakes

      - iurkin for correcting and helping me understand my java mistakes

      - prabs99 for donating

      - neckbonest for donating

      - Timusonchik for donating

      - beckzz for donating

      - effooh for donating

      - chrisrotolo for donating

      - mutiny for donating

      - domics for donating

      - edwardolavarrieta1 for donating

      - azdavef for donating

      - Wim de Klerk for donating

      - chuckenheimer for his donation on Flattr

      - Nicholas Shake for donating a high performance server that serves your in-app downloads much faster, and allows me to have a full development environment everywhere I go via vnc.

      - Each and Every users who provided constructive feedback to help improving this project to its current state



      If you like this project, please rate the thread 5 stars & Newsworthy
 
Last edited:

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
Further Help

Here are some further explanations of some PmR options :


Multitasking Section

¤ OOM groupings :
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
 
Last edited:

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
Guide for rom developers who want to implement pmr in their builds

Older Changelogs

v2.1.2

- Fixed conflicting tweaks that caused bootloops and/or were breaking network on some devices
~ Please report if these kind of issues persist ~

- Made the package lighter by removing some unused left-over files from previous versions



- Fixed missing chmod script which was preventing init.d scripts from running

- Possible fix for the apps that aren't installed properly on some devices




  • Introducing a new tweaks selection screen : Pimp my Kernel
  • --> Tweak 6 of the most common CPU Governors : Ondemand//OndemandX//Interactive//SmartassV2//Lulzactive//Conservative
  • --> Tweak your default I/O Scheduler & Disable I/O Stats
  • --> Disable & Re-Enable VSync
  • --> Disable Normalized Sleeper // Gentle Fair Sleepers // New Fair Sleeper (just moved, was already there before)
  • -->Misc. Kernel Tweaks : Disable kernel error checking (already there before) // Sysctl kernel msgmin & msgmax tweak
  • Added an option to revert Adblocking
  • Fixed the issue where beats audio and walkman options would be displayed for gb roms when it shouldn't
  • Various bugfixes (a few swapped selections and unworking tweaks)
  • Removed the extra apps screen, this wasn't really matching the mainline of this project, since you can grab those apps from the market. Plus this makes the whole package lighter.
  • Switched to miui installer theme
ø New Tweaks selection screen : Multitasking

==> Choose between :

  • 4 levels of OOM Priorities
  • 4 levels Minfree settings
  • 2 levels of ZRAM compression
  • Tweak your kernel and dalvik cache to behave well and be stable on hard multitasking conditions


ø New Tweaks selection screen : Networks & Internet

==> Security tweaks :
  • Reinforce your TCP/IP Stacks to make them resist to SYN attacks which cause a DoS (Denial of Service) on your device. Now those lame-ass blackhat hackers won't harm you with this.
  • Block redirects : auto website redirections will be blocked
  • Block source-routing : source-routing can be used to hack into your device as it allows full tracing of packets.

==> Stability & Speed tweaks :
  • Increase the buffer and queue size of each tcp socket to give more stability on high broadband consumption conditions
  • Allow the system to re-use the Sockets on TIME-WAIT state. In clear time-wait causes memory-loading, memory-loading causes internet lagg, internet lagg sucks.
  • Various IPv4 protocol speed tweaking scripts using sysctl
  • 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




Developer's Guide on Implementing PmR in your Roms




1) Implementing PmR with a custom preset & playstore OTA updates working
  1. Flash your Rom & apply the tweaks and options you want to be included in your preset
  2. 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
  3. 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)
  4. 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)
    Code:
    - /system/etc/init.d/99Pimp_my_Rom
    - /system/etc/init.d/98Entropy
    - /system/etc/init.d/S90zipalign
    - /system/etc/init.d/04dual_bootanim
    - /system/etc/install-recovery.sh
    - /system/etc/hosts
    - /system/bin/entropy-gen
    - /system/xbin/rngd
    - /system/xbin/openvpn
    Note : this does not include the Apps & Mods section, except for the Adblock & OpenVPN Support
  5. Create the following path of folders in your Rom's zip : /data/data/com.androguide.pimp.my.rom/shared_prefs/
  6. 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
  7. Open your Rom zip's /system/build.prop in a text editor
  8. 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.

  1. In your Rom's zip package, navigate to /META-INF/com/google/android and open updater-script in a text editor
  2. 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");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't activate init.d through PmR in your preset[/B][/COLOR]
    set_perm(0, 0, 0755, "/system/bin/entropy-gen");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't use the Entropy Generator in your preset[/B][/COLOR]
    set_perm(0, 0, 0755, "/system/xbin/rngd");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't use the Entropy Generator in your preset[/B][/COLOR]
    set_perm(0, 0, 0755, "/system/xbin/openvpn");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't activate OpenVPN support in your preset[/B][/COLOR]
    ui_print("Done installing Pimp my Rom - by Androguide.fr@xda");


2) Adding a Pimp my Rom entry to your Rom's Settings.apk - Coming Soon
 
Last edited:

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
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.

Regards.
 

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
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.

Regards.
 

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
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 :D

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.

Thanks for trying, let us know how it goes on your device and rom.

EDIT : Light Version uploading right now (31mb)
 
Last edited:

terdek

Senior Member
Jun 6, 2012
93
14
I tried to install...but the installer duration was very fast so i think that it didn't install anything.
How can i control that all is ok?

Inviato dal mio LG-E510 con Tapatalk 2
 

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
I tried to install...but the installer duration was very fast so i think that it didn't install anything.
How can i control that all is ok?

Inviato dal mio LG-E510 con Tapatalk 2

You can go to /system/etc/init.d and look at the bunch of files there, these are some of the tweaks. You can also open /system/build.prop and look at the end of the file if the tweaks are there.
Also, if you chose to install some extra apps, then it's easy to see if they were installed or not.

Another simple way to know is to read the installation process output, i.e : if it says "installation XX tweak", then the installation of this tweak was successful, otherwise it wouldn't output it.
If the installation process just said something like :
Code:
>>> Setting up installation....
>>> Mounting partitions
>>> Cleaning process
and then said it was finished, then there is a problem in the script that I need to fix.

If possible, please post your install log here (choose "save log" option at the end of the installation process).

Either way, thanks for the feedback.


same here with the first one not the light version cause i am running on rashed cm10
Same thing as above to verify if the installation went right.
The light version works with any rom too, it just doesn't include gapps and themes.
 
Last edited:

terdek

Senior Member
Jun 6, 2012
93
14
Ah, i understand. So it didn't install anything because in folder init.d there are nothing.

Inviato dal mio LG-E510 con Tapatalk 2
 

terdek

Senior Member
Jun 6, 2012
93
14
No, i'm set tweaks on, but later the are nothing in init.d folder and nothing in build.prop

Inviato dal mio LG-E510 con Tapatalk 2
 

terdek

Senior Member
Jun 6, 2012
93
14
Ok but i don't know how i done it. Sorry for my english

Inviato dal mio LG-E510 con Tapatalk 2
 

Androguide.fr

Account currently disabled
Jul 21, 2012
2,056
7,236
GB
meettomy.site
Ok but i don't know how i done it. Sorry for my english

Inviato dal mio LG-E510 con Tapatalk 2

No problem man. To get the install log do the following :

- Reflash Pimp My Rom
- Select several options/tweaks etc...
- After the end of the installation there will be a "Save logs" button (at the place of the back button)
- Click on that button
- Click on the "Finish" button
- The log will now be on you sdcard or internal sdcard, check both.

The file should be named something like "PIMP_MY_ROM-v1.4-Universal.zip.log", attach it here.

Thanks
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1355
    ☠ [APK][Tweaks & Mods] █ PIMP MY ROM █ BETA v1.0 {Any Device // Any Rom} ☠

    NEW : Check-out the Dedicated Pimp my Rom website (still under construction) :
    http://www.pimpmyrom.org
    Subscribe to the Newsletter to be Notified when a New Update is Released!


    pmrsmaller.png

    Network & Internet
    • Wifi Scan interval in seconds
    • TCP Congestion Algorithm selection
    • Media streaming tweaks
    • Use Google DNS servers
    • Enable/Disable HSUPA
    • Protect against SYN attacks by hardening your TCP stack
    • Avoid Time-Wait state
    • Block all redirects
    • Block source-routing
    • Various IPv4 tweaks

    Multitasking
    • 3 presets of OOM Groupings (lom/mid/high)
    • 3 presets of Minfree values (low/mid/high)
    • 2 presets of zRam compression (64mb/128mb)
    • Adjust Dalvik VM to new OOM & Minfrees
    • Adjust kernel to new OOM & Minfrees
    • Renice low consumption processes to a softer value

    Dalvik VM
    • VM Heap Size selection
    • VM Heap Growth-limit selection
    • VM Heap Start Size selection
    • Optimization Flags selection, any combination of verification, optimization & register mapping
    • Force dex optimization on /data only
    • Enable/Disable Just in Time Compiler (JIT)
    • Enable/Disable JNI Error Checking
    • Enable/Disable bytecode verification for Dalvik


    Kernel
    • Governor tweaks
    • I/O Scheduler tweaks
    • Disabling I/O stats
    • Enable/Disable Vertical Synchronization (Vsync)
    • Disable Normalized Sleepers
    • Disable New-Fair Sleepers
    • Disable Gentle-Fair Sleepers

    Toggle Android Features
    • Hardware Acceleration
    • Force GPU rendering
    • Surface Dithering
    • Purgeable Assets
    • 16bit Transparency
    • Kernel JNI Error Checking
    • Android Logger
    • Locking launcher in memory

    Telephony
    • Call Ring Delay
    • Proximity Sensor delay
    • In-Call amount of volume steps
    • SMS & MMS retry timer if failed sending
    • SMS & MMS amount of retries if failed sending
    • Enable/Disable AMR Wideband (a.k.a HD Voice)

    Touchscreen & Display
    • Amount of fingers recognized by the screen (multitouch)
    • Minimum amount of time between 2 touch events (Pointer Duration)
    • Maximum amount of events per second WindowsManager can handle
    • SurfaceFlinger's minimum velocity
    • SurfaceFlinger's maximum velocity
    • Enable/Disable FPS Capping

    Miscellaneous
    • Optimize sqlite3 databases at each boot
    • I/O Tweaks for ext4 file-systems
    • Internal & External sdcard tweaks
    • Zipalign all apks at each boot
    • Various battery saving tweaks
    • Various camera quality tweaks
    • Raising jpg quality to 100%
    • Enable quickpoweron



    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 :
    • Minimum & maximum CPU frequencies management
    • Overclocking if your kernel supports it
    • Governors management
    • Schedulers management
    • Voltage control


    Density Changer
    Safely modify your display's density in 3 easy steps.


    Entropy Generator
    A graphical user interface for the Random Number Generator Daemon (RNGD) binary.
    Independently set :
    • Feed Interval
    • Feed Timeout
    • Amount of Random bytes
    • Fill-watermark
    • Kernel random read wakeup threshold
    • Kernel random write wakeup threshold


    Dual Bootanimations
    Allows you to have 2 different bootanimations which will alternatively be displayed, one boot each.


    Lock Apps in Memory
    Bypass Android's built-in task killer by locking any installed application in memory, including system apps!


    Navigation Bar Toggle
    Self-explanatory, toggle the navigation bar on & off


    Gps Configuration
    Choose between 79 countries + 5 continents of gps.conf files:
    Having the right gps.conf file for your country is esssential for the accuracy and lock-speed of your gps)

    Code:
       Africa 
       Asia 
       Europe 
       North America 
       Oceania 
       South America
    
       Angola 
       Argentina 
       Australia 
       Austria 
       Bangladesh 
       Belarus 
       Belgium 
       Bosnia & Herzegovina 
       Brazil 
       Bulgaria 
       Cambodia 
       Canada 
       Chile 
       China 
       Costa-Rica 
       Croatia 
       Czech Republic 
       Denmark 
       El Salvador 
       Estonia 
       Finland 
       France 
       Germany 
       Greece 
       Guatemala 
       Hong-Kong 
       Hungary 
       India 
       Indonesia 
       Iran 
       Ireland 
       Israel 
       Italy 
       Japan 
       Korea 
       Kyrgyzstan 
       Latvia 
       Lithuania 
       Luxembourg 
       Macedonia 
       Madagascar 
       Malaysia 
       Mexico 
       Moldova 
       Netherlands 
       New Caledonia 
       New Zealand 
       Norway 
       Oman 
       Pakistan 
       Panama 
       Philippines 
       Poland 
       Portugal 
       Qatar 
       Republic of Serbia 
       Romania 
       Russian Federation 
       Saudi Arabia 
       Singapore 
       Slovakia 
       Slovenia 
       South Africa 
       Spain 
       Sri Lanka 
       Sweden 
       Switzerland 
       Taiwan 
       Tanzania 
       Thailand 
       Turkey 
       Ukraine 
       United Arab Emirates 
       United Kingdom 
       United States of America 
       Uzbekistan 
       Venezuela 
       Vietnam 
       Yugoslavia


    Device Hidden Menu
    Access your device's hidden settings without having to dial weird and hard to remember codes




    Download & install some popular mods without flashing anything!

    Pimp My Beats
    A full-blown audio mod containing :
    • Modified DSPManager
    • Beats Audio binaries, libs, framework & other assets
    • Dolby Mobile binaries, libs, framework & other assets
    • SRS binaries, libs, framework & other assets


    Bravia Engine 2
    Install the very popular Bravia Engine 2 by Sony on any device with the touch of a button!


    xLoud & ClearAudio+
    Install the popular xLoud audio enhancement, along with the brand new ClearAudio+ engine and equalizer.


    Sony Album
    Install the Sony Gallery & Photo Editor app for a full Sony media experience


    OpenVPN Support
    Add OpenVPN support to your device and surf the web safely




    Pimp My Rom comes with its own set of Settings.
    Those allow you to :
    • Select among 12 different transition animations to apply independently to each section of the app
    • Select the type of reboot used by the "Reboot Required" Notification (Hot reboot/Normal reboot)
    • Clear all the app's preferences



    Currently, the only option included i this section allows you to have the "PIMPED" prefix before your Rom's name in Settings/About





    Make sure to always have a nandroid backup before applying tweaks
    • Make a nandroid backup
    • Download the app
    • Install it like you would with any apk
    • Click the rescue package section in the app and create a new Rescue Package
    • Choose and apply the tweaks you want, make sure you read the descriptions and instructions in-app






    BETA v1.0(29/04/2013)

    Changelog available at : http://pimpmyrom.org/blog-beta1.php


    Alpha v3.3 (18/12/2012)
    • Added a new Tool : Density Changer. Allows you to modify your device's LCD density easily and safely, avoiding the usual playstore compatibility issues after dpi changes
    • Fixed Voltage Control set-on-boot function


    Alpha v3.2 (17/12/2012)
    • New Telephony Tweaks section (all values are automatically detected) :

      - 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
    • Improved the Camera Quality tweak (in the Miscellaneous section) by adding more build.prop modifications :

      - Set maximum capture resolution to 8 megapixels (ro.media.capture.maxres)
      - Set panorama resolution to 3264x1840 (ro.media.panorama.defres)
      - Set panorama frames resolution to 1280x720 (ro.media.panorama.frameres)
      - Enabled VideoModes (ro.camcorder.videoModes)
      - Set video media encoder maximum fps to 65 (ro.media.enc.hprof.vid.fps)

      Alpha v3.1.1 (17/12/2012)
      • 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




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

        - Acer Liquid Metal (codename ?)

        - Asus Infinity (TF700)

        - Asus Eee Pad (TF101)

        - Asus Transformer Pad (TF300T)

        - Cube U30GT-H (Chinese Tab)

        - Google-Asus Nexus 7 (Grouper)

        - HP Touchpad (codename ?)

        - HTC Amaze (codename ?)

        - HTC Desire C (codename ?)

        - HTC Desire S (S510E)

        - HTC Desire HD (codename ?)

        - HTC Desire Z (codename ?)

        - HTC Droid Incredible (codename ?)

        - HTC Evo 3D (codename ?)

        - HTC Evo 4G (Supersonic)

        - HTC Explorer (A310e)

        - HTC HD2 (T9193)

        - HTC Incredible S (S710e)

        - HTC MyTouch 4G Slide (codename ?)

        - HTC One V (Primo)

        - HTC One X (Endeavour)

        - HTC Thunderbolt (ADR6400L)

        - HTC Tattoo (Click)

        - HTC Vision (T-mobile G2)

        - Huawei Ascend (g300)

        - Huawei Honor (U8660)

        - Huawei U8030 (codename ?)

        - Huawei u8800pro (codename ?)

        - Le Pan II Tablet (codename ?)

        - LG Eclypse (C800)

        - LG G2x (P999 DW)

        - LG Optimus Black (codename ?)

        - LG optimus one (P500)

        - LG Optimus 3D (P920)

        - LG Optimistic V (VM670)

        - Motorola Atrix 2 (MB865)

        - Motorola Atrix 4G (MB860)

        - Motorola Bravo (MB520)

        - Motorola Defy (codename?)

        - Motorola Droid X (MB810)

        - Motorola Droid 2 (DW2E)

        - Motorola Photon Q (codename ?)

        - Motorola Triumph (Virgin Mobile model)

        - Samsung Galaxy Ace + (S7500)

        - Samsung Galaxy Nexus (i9250)

        - Samsung Galaxy Nexus 4G (Verizon)

        - Samsung Nexus S (i9020)

        - Samsung Nexus S (SCLCD - i9023)

        - Samsung Galaxy Exhibit 4g (Ancora)

        - Samsung Galaxy Gio (S5660)

        - Samsung Galaxy Note (N7000)

        - Samsung Galaxy Note 2 LTE (N7105)

        - Samsung Galaxy Note 10.1 (N8000)

        - Samsung Galaxy Player 5 (YP-G70)

        - Samsung Galaxy S (I9000)

        - Samsung Galaxy S Advance (I9003)

        - Samsung Galaxy S Plus (I9001)

        - Samsung Galaxy S2 (i9100)

        - Samsung Galaxy S2 (T-Mobile T989)

        - Samsung Galaxy S2 (AT&T i777)

        - Samsung Galaxy S2 (SHW M250k)

        - Samsung Galaxy S2 Epic 4g Touch (SPH-D710)

        - Samsung Galaxy S3 (I9300)

        - Samsung Galaxy S3 (ATT 1747)

        - Samsung Galaxy S3 (T-Mobile)

        - Samsung Galaxy Tab (P1000)

        - Samsung Galaxy Tab 2 - 7.0 (P3100)

        - Samsung Galaxy Tab 7.7 3G (P6800)

        - Samsung Galaxy Tab 7.7 Wifi (P6810)

        - Samsung Galaxy Tab 7.7 Verizon (i815)

        - Samsung Galaxy Tab 8.9 (p7300)

        - Samsung Galaxy Tab 10.1 Wifi (P5110)

        - Samsung Galaxy Y (S5360)

        - Sony Live with Walkman (WT19)

        - Sony Xperia Arc S (LT18i)

        - Sony Xperia Mini (ST15i)

        - Sony Xperia Neo (codename ?)

        - Sony Xperia Neo V (codename ?)

        - Sony Xperia P (LT22i)

        - Sony Xperia Play (R800i)

        - Sony Xperia Ray (ST18i)

        - Sony Xperia Sola (MT27i)

        - Sony Xperia U (ST25i)

        - Toshiba Thrive (codename ?)

        - Test it on your other devices and report your results here please !



        - amarullz for Aroma Installer

        - ...Awesome... for Beats Audio

        - ImbaWind for Adrenaline Boost

        - Rizal Lovins for Sony Walkman apps

        - blunttedsmurf for Hulu+ hacked

        - pikachu01 for his Thunderbolt scripts

        - The AOKP Team for some of their source-code

        - gangsterjoop for All countries gps.conf files

        - Whitson Gordon from Lifehacker.com for the Thread top image.

        - Pocketnow.com for the awesome PmR presentation video

        - Papa Smurf151 for his friendly help and some tweaks found in his SmurfedOut Script

        - dj_stikes & Boxer145 for Translating PmR to Spanish (Aroma Version)

        - android1234567 for correcting my spelling mistakes

        - iurkin for correcting and helping me understand my java mistakes

        - prabs99 for donating

        - neckbonest for donating

        - Timusonchik for donating

        - beckzz for donating

        - effooh for donating

        - chrisrotolo for donating

        - mutiny for donating

        - domics for donating

        - edwardolavarrieta1 for donating

        - azdavef for donating

        - Wim de Klerk for donating

        - chuckenheimer for his donation on Flattr

        - Nicholas Shake for donating a high performance server that serves your in-app downloads much faster, and allows me to have a full development environment everywhere I go via vnc.

        - Each and Every users who provided constructive feedback to help improving this project to its current state



        If you like this project, please rate the thread 5 stars & Newsworthy
    187
    157
    Further Help

    Here are some further explanations of some PmR options :


    Multitasking Section

    ¤ OOM groupings :
    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
    109
    Guide for rom developers who want to implement pmr in their builds

    Older Changelogs

    v2.1.2

    - Fixed conflicting tweaks that caused bootloops and/or were breaking network on some devices
    ~ Please report if these kind of issues persist ~

    - Made the package lighter by removing some unused left-over files from previous versions



    - Fixed missing chmod script which was preventing init.d scripts from running

    - Possible fix for the apps that aren't installed properly on some devices




    • Introducing a new tweaks selection screen : Pimp my Kernel
    • --> Tweak 6 of the most common CPU Governors : Ondemand//OndemandX//Interactive//SmartassV2//Lulzactive//Conservative
    • --> Tweak your default I/O Scheduler & Disable I/O Stats
    • --> Disable & Re-Enable VSync
    • --> Disable Normalized Sleeper // Gentle Fair Sleepers // New Fair Sleeper (just moved, was already there before)
    • -->Misc. Kernel Tweaks : Disable kernel error checking (already there before) // Sysctl kernel msgmin & msgmax tweak
    • Added an option to revert Adblocking
    • Fixed the issue where beats audio and walkman options would be displayed for gb roms when it shouldn't
    • Various bugfixes (a few swapped selections and unworking tweaks)
    • Removed the extra apps screen, this wasn't really matching the mainline of this project, since you can grab those apps from the market. Plus this makes the whole package lighter.
    • Switched to miui installer theme
    ø New Tweaks selection screen : Multitasking

    ==> Choose between :

    • 4 levels of OOM Priorities
    • 4 levels Minfree settings
    • 2 levels of ZRAM compression
    • Tweak your kernel and dalvik cache to behave well and be stable on hard multitasking conditions


    ø New Tweaks selection screen : Networks & Internet

    ==> Security tweaks :
    • Reinforce your TCP/IP Stacks to make them resist to SYN attacks which cause a DoS (Denial of Service) on your device. Now those lame-ass blackhat hackers won't harm you with this.
    • Block redirects : auto website redirections will be blocked
    • Block source-routing : source-routing can be used to hack into your device as it allows full tracing of packets.

    ==> Stability & Speed tweaks :
    • Increase the buffer and queue size of each tcp socket to give more stability on high broadband consumption conditions
    • Allow the system to re-use the Sockets on TIME-WAIT state. In clear time-wait causes memory-loading, memory-loading causes internet lagg, internet lagg sucks.
    • Various IPv4 protocol speed tweaking scripts using sysctl
    • 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




    Developer's Guide on Implementing PmR in your Roms




    1) Implementing PmR with a custom preset & playstore OTA updates working
    1. Flash your Rom & apply the tweaks and options you want to be included in your preset
    2. 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
    3. 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)
    4. 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)
      Code:
      - /system/etc/init.d/99Pimp_my_Rom
      - /system/etc/init.d/98Entropy
      - /system/etc/init.d/S90zipalign
      - /system/etc/init.d/04dual_bootanim
      - /system/etc/install-recovery.sh
      - /system/etc/hosts
      - /system/bin/entropy-gen
      - /system/xbin/rngd
      - /system/xbin/openvpn
      Note : this does not include the Apps & Mods section, except for the Adblock & OpenVPN Support
    5. Create the following path of folders in your Rom's zip : /data/data/com.androguide.pimp.my.rom/shared_prefs/
    6. 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
    7. Open your Rom zip's /system/build.prop in a text editor
    8. 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.

    1. In your Rom's zip package, navigate to /META-INF/com/google/android and open updater-script in a text editor
    2. 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");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't activate init.d through PmR in your preset[/B][/COLOR]
      set_perm(0, 0, 0755, "/system/bin/entropy-gen");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't use the Entropy Generator in your preset[/B][/COLOR]
      set_perm(0, 0, 0755, "/system/xbin/rngd");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't use the Entropy Generator in your preset[/B][/COLOR]
      set_perm(0, 0, 0755, "/system/xbin/openvpn");  [COLOR="DarkRed"][B]<<< Do NOT include this line if you didn't activate OpenVPN support in your preset[/B][/COLOR]
      ui_print("Done installing Pimp my Rom - by Androguide.fr@xda");


    2) Adding a Pimp my Rom entry to your Rom's Settings.apk - Coming Soon
    37
    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.

    Regards.