5,597,138 Members 43,560 Now Online
XDA Developers Android and Mobile Development Forum

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

Tip us?
 
Androguide.fr
Old
(Last edited by Androguide.fr; 30th April 2013 at 03:48 AM.)
#1  
Androguide.fr's Avatar
Recognized Contributor - OP
Thanks Meter 6631
Posts: 1,992
Join Date: Jul 2012
Location: Lyon, France

 
DONATE TO ME
Arrow ☠ [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!


Quote:




Quote:
Quote:
Quote:
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


Quote:
Quote:
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



Quote:
Quote:
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



Quote:
Quote:
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


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



Quote:

Make sure to always have a nandroid backup before applying tweaks
Quote:
  • 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

Quote:



Quote:
Quote:
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
[LIST][*] 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)
[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 working
Remember that results might differ on the same device, depending on the rom, kernel and recovery
Quote:
 
- 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 !


Quote:
Quote:
- 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


Quote:
If you like this project, please rate the thread 5 stars & Newsworthy
The Following 1,324 Users Say Thank You to Androguide.fr For This Useful Post: [ Click to Expand ]
 
Androguide.fr
Old
(Last edited by Androguide.fr; 13th March 2013 at 01:37 AM.)
#2  
Androguide.fr's Avatar
Recognized Contributor - OP
Thanks Meter 6631
Posts: 1,992
Join Date: Jul 2012
Location: Lyon, France

 
DONATE TO ME
Quote:
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.
The Following 182 Users Say Thank You to Androguide.fr For This Useful Post: [ Click to Expand ]
 
Androguide.fr
Old
(Last edited by Androguide.fr; 22nd November 2012 at 05:50 PM.)
#3  
Androguide.fr's Avatar
Recognized Contributor - OP
Thanks Meter 6631
Posts: 1,992
Join Date: Jul 2012
Location: Lyon, France

 
DONATE TO ME
Default Further Help

Here are some further explanations of some PmR options :


Multitasking Section

Quote:

Ą 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

Quote:
My Contributions
(Apps, Librairies, Roms & Guides)
 

Pimp My Rom: Website / App / Thread

dSploit: Website / Github

Flash Gordon (Flash zips without a recovery): Thread

Universal init.d: App

PlayView/CardsUI Library: Portal / Github

HoloGraph Library: Portal / Github

Ubuntu Touch for i9300: Thread

Omni nightlies for Xperia Z1: Thread

Paranoid Android builds: Thread

Revive your bricked p68xx : Guide
Follow me on Github
The Following 151 Users Say Thank You to Androguide.fr For This Useful Post: [ Click to Expand ]
 
Androguide.fr
Old
(Last edited by Androguide.fr; 19th January 2013 at 05:33 PM.)
#4  
Androguide.fr's Avatar
Recognized Contributor - OP
Thanks Meter 6631
Posts: 1,992
Join Date: Jul 2012
Location: Lyon, France

 
DONATE TO ME
Default Guide for rom developers who want to implement pmr in their builds

Older Changelogs
 

Quote:
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


Quote:
v2.1.1

- 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


Quote:
v2.1

  • 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
Quote:
v2.0
° 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");  <<< 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 Androguide.fr@xda");


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

Quote:
My Contributions
(Apps, Librairies, Roms & Guides)
 

Pimp My Rom: Website / App / Thread

dSploit: Website / Github

Flash Gordon (Flash zips without a recovery): Thread

Universal init.d: App

PlayView/CardsUI Library: Portal / Github

HoloGraph Library: Portal / Github

Ubuntu Touch for i9300: Thread

Omni nightlies for Xperia Z1: Thread

Paranoid Android builds: Thread

Revive your bricked p68xx : Guide
Follow me on Github
The Following 101 Users Say Thank You to Androguide.fr For This Useful Post: [ Click to Expand ]
 
terdek
Old
#5  
Member
Thanks Meter 13
Posts: 93
Join Date: Jun 2012
very good work! will i can to install this on my LG Optimus Hub whit CM 7 rom (android 2.3.7)?
The Following 4 Users Say Thank You to terdek For This Useful Post: [ Click to Expand ]
 
Androguide.fr
Old
#6  
Androguide.fr's Avatar
Recognized Contributor - OP
Thanks Meter 6631
Posts: 1,992
Join Date: Jul 2012
Location: Lyon, France

 
DONATE TO ME
Quote:
Originally Posted by terdek View Post
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.

Quote:
My Contributions
(Apps, Librairies, Roms & Guides)
 

Pimp My Rom: Website / App / Thread

dSploit: Website / Github

Flash Gordon (Flash zips without a recovery): Thread

Universal init.d: App

PlayView/CardsUI Library: Portal / Github

HoloGraph Library: Portal / Github

Ubuntu Touch for i9300: Thread

Omni nightlies for Xperia Z1: Thread

Paranoid Android builds: Thread

Revive your bricked p68xx : Guide
Follow me on Github
The Following 35 Users Say Thank You to Androguide.fr For This Useful Post: [ Click to Expand ]
 
terdek
Old
#7  
Member
Thanks Meter 13
Posts: 93
Join Date: Jun 2012
ok, i understand. I'll let you know.
The Following 3 Users Say Thank You to terdek For This Useful Post: [ Click to Expand ]
 
Androguide.fr
Old
#8  
Androguide.fr's Avatar
Recognized Contributor - OP
Thanks Meter 6631
Posts: 1,992
Join Date: Jul 2012
Location: Lyon, France

 
DONATE TO ME
Quote:
Originally Posted by terdek View Post
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.

Quote:
My Contributions
(Apps, Librairies, Roms & Guides)
 

Pimp My Rom: Website / App / Thread

dSploit: Website / Github

Flash Gordon (Flash zips without a recovery): Thread

Universal init.d: App

PlayView/CardsUI Library: Portal / Github

HoloGraph Library: Portal / Github

Ubuntu Touch for i9300: Thread

Omni nightlies for Xperia Z1: Thread

Paranoid Android builds: Thread

Revive your bricked p68xx : Guide
Follow me on Github
The Following 20 Users Say Thank You to Androguide.fr For This Useful Post: [ Click to Expand ]
 
jason3496
Old
#9  
Member
Thanks Meter 5
Posts: 45
Join Date: Feb 2012
Location: davao
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
The Following User Says Thank You to jason3496 For This Useful Post: [ Click to Expand ]
 
Androguide.fr
Old
(Last edited by Androguide.fr; 27th September 2012 at 06:07 PM.)
#10  
Androguide.fr's Avatar
Recognized Contributor - OP
Thanks Meter 6631
Posts: 1,992
Join Date: Jul 2012
Location: Lyon, France

 
DONATE TO ME
Quote:
Originally Posted by jason3496 View Post
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.

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

EDIT : Light Version uploading right now (31mb)

Quote:
My Contributions
(Apps, Librairies, Roms & Guides)
 

Pimp My Rom: Website / App / Thread

dSploit: Website / Github

Flash Gordon (Flash zips without a recovery): Thread

Universal init.d: App

PlayView/CardsUI Library: Portal / Github

HoloGraph Library: Portal / Github

Ubuntu Touch for i9300: Thread

Omni nightlies for Xperia Z1: Thread

Paranoid Android builds: Thread

Revive your bricked p68xx : Guide
Follow me on Github

The Following 20 Users Say Thank You to Androguide.fr For This Useful Post: [ Click to Expand ]
Tags
app, mods, pimp my rom, pmr, tweaks
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes