FORUMS
Remove All Ads from XDA

[TOOLS][ZIPS][SCRIPTS] osm0sis' Odds and Ends [Multiple Devices/Platforms]

11,341 posts
Thanks Meter: 23,231
 
By osm0sis, Recognized Developer / Recognized Contributor on 18th April 2013, 12:37 AM
Post Reply Email Thread
osm0sis' Odds and Ends -- Misc./Batch Tools, Flashable Zips, Scripts, etc.

General Information


In a nutshell, I just wanted a single thread to gather links to some of my other, larger projects, but also serve as a spot I could put some smaller scripts and zips I've created that I don't think merrit their own separate threads. This is partially for my own sanity and will hopefully make it easier for others to find some things as well. A lot of the stuff here was developed with the GN, N5 or N7s (my devices) and Windows in mind, but could generally be applicable to most devices either out-of-the-box or with some slight modification. If you see something that inspires you, go ahead and mod it, just let me know and give me some credit somewhere. If anyone would like to know the specifics of what's in a particular script that I haven't already linked to more information on, just let me know and I'll post that in here as well.

Note: Older zips with a "cwm-" prefix are NOT only for the now-defunct ClockworkMod Recovery, the prefix was used to denote a flashable zip before I adopted Chainfire's "UPDATE-" prefix. Please use a currently maintained recovery, like TWRP, for all zips to ensure the best compatibility/results.

My development work on my many projects comes out of my free time, so if you enjoy this project or anything else I've done on xda, please do hit the donate link from my profile. Thank you for your support!


Misc./Batch Tools
  • AnyKernel2 (many devices) - link
    AnyKernel was a simple template for an update.zip that could apply any kernel to any ROM, regardless of ramdisk to reduce the chance of any issues arising from the custom kernel pairing. The drawback to this is that some kernels require modifications to the ramdisk to enable/set up kernel features, and in the old AnyKernel format there was no way to do this. AnyKernel2 pushes the format even further by allowing kernel developers to modify the underlying ramdisk for kernel feature support easily using a number of included command methods along with properties and variables to customize the install experience.
  • APK-Patcher (many devices) - link
    Simplifies APK modification to make it easier for modification creators to keep creating. Using JesusFreke's brilliant bak/smali and iBotPeaches' excellent apktool, modified to run on-device along with the various binaries required, allows on-the-fly APK modifications to be applied via recovery, to whatever ROM APK is present, taking the constant update burden off of the modification creator. The zip is smart and automated, using the APK name to run all the various parts involved for complicated patches and is extensible to any number of APKs in a single zip.
  • Android Image Kitchen (many devices) - link
    A collection of Windows/Android ports of the necessary Linux utilities for Android image (kernel+recovery) mod work, and my own automation script to unpack, edit and repack the ramdisk. Other guides/scripts exist but none of them are universal for target device, compression and/or developed for Windows/Android. Now also Linux builds to bring my improved featureset back to where it came from. Has been extremely useful for me in my messing around with kernel ramdisks.
  • ADB Screenshot (many devices) - attached
    Take screenshots while in recovery. Useful for development of recovery apps or error reporting. Original method had lots of different threads around with the general method for various devices but I figured out a couple tricks required for getting it working on the Galaxy Nexus and then automated the process. Tested and confirmed working with both pixel formats of CWM and TWRP. More information in this GN Q&A FFmpeg thread. New method uses fb2png and should work on all ARM devices.
  • ADBsync sdcard Backup (many devices) - attached
    Backs up the entire sdcard so that you can have a complete snapshot of your device when you make periodic backups, and be able to restore things exactly as they were. Automates the sync process of Renate NST's great ADBsync utility which makes only newer files get pulled, significantly decreasing backup time for the sdcard compared to "adb pull". Original version posted in the old ADBsync thread. Defaults for devices with /data/media/ internal sdcards (Nexus devices, etc.), but is easily customizable to backup other mountpoints.

Flashable Script Zips
  • Nexus BootUnlocker script (GN, N4, N5, N7 '13, N10) - attached
    I don't know about everyone else but sometimes I find I've rebooted into the bootloader only to realize I've forgotten to unlock it in segv11's excellent BootUnlocker App beforehand. Well, I decided to make a BootUnlocker Script for my Galaxy Nexus so I could just boot to recovery quickly, unlock, then adb reboot-bootloader (or use my Reboot To Bootloader script below) to get back without having to fully boot the OS to make the change. Also extremely useful in the case you aren't able to boot. As with the app there is no data loss like there would be with fastboot, allowing you to relock for safety. Originally posted in the GN EDIFY Scripting thread. Modified for the newer Nexus devices and combined into a single Nexus BootUnlocker zip with tamperbit reset support added using information from the BootUnlocker App Dev thread. For newer devices using Factory Reset Protection (N6 and later), the BootUnlocker Script can't directly toggle the lockstate due to new security tokens, but it does now toggle the ability to use "fastboot oem unlock" without needing a booted device.
  • N7 BootUnlocker script (N7 '12) [creation guide] - link
    The Nexus 7 2012 is a special case. Per-device encryption of an entire partition makes it impossible to support the N7 '12 in a simple root app, or flashable zip as above, however using my guide and included script you can now create a working BootUnlocker Script Zip for your specific device. As with the above scripts there is no data loss like there would be with fastboot, allowing you to relock for safety.
  • sdcard Fix Permissions script (many devices) - attached
    A little flashable zip script to fix ownership and permissions of files and directories on the sdcard to what they would be if Android OS had put them there itself, since some apps can't access pushed files that have root.root as owner/group. This is useful when restoring to your sdcard backup, as with my ADBsync sdcard Backup batch script above, since generally, pushed files get root.root from adb shell and higher permissions than usual. Also a solution for a bug where sdcard files get lower permissions somehow, resulting in similar access problems. Currently written for devices with /data/media/ internal sdcards (Nexus devices, etc.), but could easily be modified for other mountpoints.
  • SUmount script (many devices) - attached
    Another tool for the toolkit of anyone using Chainfire's brilliant SuperSU systemless root, this simple flashable zip script toggles the mounting of the su.img while in recovery to allow easier access to the /su filesystem, simplifying manipulating it via ADB shell, AROMA Filemanager or TWRP's terminal/file manager. Especially useful to anyone who uses su.d scripts or can't boot due to some issue with a user addition in /su/su.d or /su/bin.
  • unSU script (many devices) - link
    While experimenting with Chainfire's brilliant SuperSU systemless root, I discovered that uninstalling the older style system-modifying root through his app (<2.60) didn't restore all of the modified system files correctly, so I wrote this script to do so and aid in people wanting to unroot from recovery. Expanded to support uninstallation of Koush's SuperUser, phh's Superuser, SuperSU Systemless and custom ROM su binaries.
  • Adreno Systemless Installer script (N5, N6, N7 '13) - link
    For use with Qualcomm's official updated preview GPU drivers packages for Adreno 3xx/4xx-powered Nexus stock images, this is technically a script and not an installer because it is only a different frontend to take whatever device zip from Qualcomm is in the same directory as it and unpack it then install it into the SuperSU systemless root /su filesystem instead of the usual /system, allowing OTA and SafetyNet checks to pass.
  • Kernel MultiROM Injector script (many devices) - attached
    Intended for use in Chainfire's excellent FlashFire app to automate re-injecting the current boot image ramdisk with Tasssadar's brilliant MultiROM's trampoline bootmenu; this avoids having to do this as an extra step in MR-TWRP following an OTA, ROM Delta or SuperSU update. Should work for all EMMC devices with MultiROM installed.
  • GN PIT Editor script (GN) - link
    Dumps and alters the Galaxy Nexus' Partition Information Table (PIT) to reclaim unneeded space from the /cache partition and add it to /system to allow for larger ROMs and GApps packages to make continued support for Lollipop+ easier. The resulting file is byte-for-byte identical to those created by external tools like PIT Magic, so that it may be flashed back to the device in Odin Mode to complete the repartitioning.
  • Kernel Emergency Reset script (many devices) - link
    Basically a go-to cure-all for custom kernel users experiencing issues after an upgrade due to old settings left over in a kernel control app (eg. franco.Kernel updater, Trickster, etc.), or problematic init.d/userinit.d scripts. It's also useful if you just want to make sure you're running clean defaults without conflicts.
  • Reboot To Bootloader script (all devices) - attached
    Those who prefer using CWM may have noticed a couple of things missing that the other popular custom recovery, TWRP, has built-in. One of these is a file explorer/manager, which is answered by amarullz' brilliant AROMA Filemanager. Another thing I found myself wanting is a way to reboot back to the bootloader once I'm in recovery, so I created this very very simple flashable zip script. (No longer required on CWM >=6.0.3.5). Note: Once in the bootloader, "Start" will boot you back to recovery. Not sure why, but it's not a big deal, just reboot normally from recovery at that point.

Flashable Installer Zips
  • Flashlt Installer script (many devices) - attached
    Installs my Flashlt script to allow easy flash and dump of boot, recovery and radio/modem EMMC or MTD partitions while booted, and trimming of null characters from files. Also installs a script zip that makes flashing boot.img (kernel), recovery.img, and radio.img/modem.img (baseband) files via recovery simple. It aims to save the average user the hassle of repacking their own image zip, or using the command-line or fastboot to flash it. Place an appropriately named file in the same directory as the zip and flash away! Should work on all emmc devices with normal partition naming ("boot", "recovery" and "radio" or "modem") which accept Android standards-compliant images. Extremely handy when used with amarullz' brilliant AROMA Filemanager, and/or my Android Image Kitchen: Mobile Edition (linked above).
  • Busybox Installer (all devices) - attached
    As a byproduct of building my own static busybox compiles in all supported Android architectures for my AIK-mobile package I figured I might as well offer them up separately as well since there weren't any providers making Android x64 builds when I was researching. The installer detects what architecture (ARM/ARM64, x86/x86_64, MIPS/MIPS64) your device uses and installs the correct busybox binary accordingly. It then cleans up any symlinks from a possible previous installation in the same directory and generates new symlinks directly from the output of the installed binary. Detects and supports "systemless" root via SuperSU/Magisk installation as well. Please read the release post about applet inclusion.
  • nano Terminal Editor Installer (many devices) - attached
    A simple installer to push my own static Android ARM build of the nano editor binary to /system/xbin/ along with the required files in /system/etc/terminfo/. Detects and supports "systemless" install via SuperSU/Magisk as well. It can then be used from Terminal while booted from that point on. Each time you flash it also temporarily enables use in recovery by pushing a script to /sbin/nano with the required environment variables, so you can then trigger it from recovery shell or the console in amarullz' brilliant AROMA Filemanager. Makes it extremely easy and worry-free to tweak and mod on the go, knowing you can edit the faulty build.prop or init.d script if something goes wrong.
  • adb + fastboot Installer (many devices) - attached
    Marshmallow has removed adb from the /system/bin directory. For those wanting this functionality back, here's a simple installer to push static compiles of adb and fastboot to /system/xbin and uses a command wrapper to point adb to the correct HOME directory and ser TMPDIR for compatibility. Detects and supports "systemless" install via SuperSU/Magisk as well. It can then be used from Terminal while booted from that point on.
  • Nexus Media Installer (many devices) - attached
    Custom ROMs often don't include the Google ringtones/notifications/system sounds and bootanimation, instead including numerous, terrible sounds and often less-than-desirable visuals. This zip installs the Nexus media for recently-retired Nexus devices, using the zip name to allow user choice, systemlessly installed (SuperSU and Magisk supported) or with an addon.d script to survive a ROM update or dirty flash.
  • odex Script Installer (all devices) - attached
    Based on the great work and binaries from this thread, a simple installer to push my odex script along with the required dexopt-wrapper and zip binaries to /system/xbin and set the appropriate permissions. Automates the procedure to odex any apk or jar from the commandline to potentially improve performance. Dalvik runtime (KitKat and below) only. Also uses cut from busybox.
  • Kernel init.d Support Injector (many devices) - attached
    Following from great ideas by Captain_Throwback in my AnyKernel2 thread and using script from my Flashlt script above, this AK2 zip will inject basic init.d bootscript support into any kernel ramdisk on any emmc device with normal partition naming and using the Android bootable image standard, without having to bloat a ramdisk using a busybox binary. This zip is also signed, so could potentially be used with non-Nexus stock recovery on a locked bootloader.
  • CMSetup Fix for GApps Installer (many devices) - attached
    Installs a su.d script fix to work around the CyanogenMod ROM issue of a broken Quick Settings pull-down when CMSetupWizard is removed as part of a GApps installation. Removing CMSetupWizard is useful because it allows Google's SetupWizard to grant apps default permissions, so the workaround automatically executes the only required command at the appropriate time following first boot. Requires a SuperSU installation (for su.d support). Flash after the SuperSU zip and your GApps.
  • Dev Team init.d Pack Installer (all devices) [see "950iosettings, etc." below] - link
    A simple installer I wrote to create the /system/etc/init.d/ directory, extract the latest init.d scripts as published by the "Franco's Dev Team" tuning collective (of which I was a member), then set correct owner, group and permissions to the entire init.d directory. If you are a developer and would like to include these tunables/scripts in your kernel or ROM please provide credit. A lot of time and effort has gone into this project and that's all we ask.

Credits & Thanks: All authors of any included binaries and libraries for their amazing work. Anyone who's helped me with these projects along the way.

Disclaimer: Naturally, you take all the responsibility for what happens to your device when you start messing around with things.


XDA:DevDB Information
osm0sis' Odds and Ends -- Misc./Batch Tools, Flashable Zips, Scripts, etc., Tool/Utility for the Android General

Contributors
osm0sis
Source Code: https://github.com/osm0sis


Version Information
Status: Stable

Created 2013-11-13
Last Updated 2017-05-10
The Following 439 Users Say Thank You to osm0sis For This Useful Post: [ View ]
 
 
18th April 2013, 12:37 AM |#2  
osm0sis's Avatar
OP Recognized Developer / Recognized Contributor
Flag Halifax
Thanks Meter: 23,231
 
Donate to Me
More
[TOOLS][ZIPS][SCRIPTS] osm0sis' Odds and Ends [Multiple Devices/Platforms]
Scripts
  • 950iosettings + 875mntsettings + 925vmsettings init.d scripts (all devices) [with Franco's Dev Team] - links
    Also available bundled in an installer. The scheduler tunables have already gained a bit of attention/adoption on various devices and kernels, but this is the init.d script I wrote to set the new custom scheduler tunables values as "default" by an independent loop, sleeping in the background and detecting each time the scheduler is changed. There is no effect on idle drain or deep sleep. The settings included are the complete work of the "Franco's Dev Team" (or "Team Franco") tuning collective, of which I was a member. We strove to perfect the scheduler, vm and various other settings for the smoothest and fastest experience available. The collective was: malaroth, osm0sis, joaquinf, The Gingerbread Man, pkgnex, Khrushy, shreddintyres. Links point to my BasketBuild since these may still be subject to change from time to time. If you are a developer and would like to include these tunables/scripts in your kernel or ROM please provide credit. A lot of time and effort has gone into this project and that's all we ask. Lollipop(+) updated versions now also available through the continued excellent work of pkgnex.
  • 99-flashafterupdate.sh addon.d script (many devices) - attached
    For ROMs that don't have "Flash After Update" support built into their delta/update process. During an upgrade, this script will flash zips from a sdcard directory, with several options for displayed output, after all other addon.d backup/restore actions have completed. This can be used to flash SuperSU and then an AnyKernel2 kernel on CyanogenMod, for example. Remove the .txt extension once downloaded and place in /system/addon.d/ with rwxr-xr-x (755) permissions.
  • 00-resizesystem.sh addon.d script (many devices) - attached
    One common solution for aging devices is to resize the /system partition so that it can hold newer, larger ROMs and, of course, GApps packages. On devices where the /system partition has been resized to hold larger GApps packages, but the ROM in use has system.dat format zips with no resizing functionality, the extra space would get lost in a ROM delta flash, breaking things when GApps attempted to restore. This script will resize the system partition to its maximum before the GApps restore occurs on EMMC-based devices with standard partition naming. Remove the .txt extension once downloaded and place in /system/addon.d/ with rwxr-xr-x (755) permissions.
  • 999-customkernel.sh addon.d script (many devices) - attached
    Addon.d is awesome at restoring your GApps, root app, and other things after a ROM Delta, update, or dirty flash, but of course this can leave a lot of stuff out that you'd also have to re-flash (see below for a personal addon.d script you can modify to cover anything else you want to save). This script aims to help remedy the issue for custom kernel users on EMMC-based devices with standard partition naming by dumping the current kernel as part of the addon.d backup process, and then restoring it after the ROM has flashed its included kernel. Remove the .txt extension once downloaded and place in /system/addon.d/ with rwxr-xr-x (755) permissions.
  • logohack.sh (GN) - link
    Galaxy Nexus bootloader image replacement hack script. Inspired by bitdomo's brilliant imgdata tool and replicating the functionality of Ezekeel's abandoned, broken paid Logo Me app, this script improves upon the app version by working on all Galaxy Nexus bootloaders and on-the-fly, to allow replacement of the Google logo and lock images within the sbl partition. Remove the .txt extension once downloaded and place in /system/bin/ or /su/bin/ with rwxr-xr-x (755) permissions. It can then be run from the Terminal.
  • flash_image (many devices) - attached
    MTD devices require a little extra finesse when flashing partitions from the command prompt and multiple commands, versus MMC devices, for which we can just use the dd command both ways. I wrote this little script to simplify the process for myself in my MX Box tinkering. It parses /proc/mtd so you only need to enter the partition name. It requires _n0p_'s excellent MTD-Utils compiled for Android, and uses grep and cut from busybox. Remove the .txt extension once downloaded and place in /system/xbin/ with rwxr-xr-x (755) permissions. It can then be run from the Terminal.
  • getprio (all devices) - attached
    Android doesn't allow you to check the priority (or "niceness") of a process with the getpriority command as you would with normal Linux, and busybox doesn't provide this functionality either, so I wrote this reasonably simple script to allow you to check the niceness of a process. Some kernels have been experimenting with increasing the priority of com.android.systemui for smoothness, so this command can be used for testing different levels and whether the renice command set it correctly. Remove the .txt extension once downloaded and place in /system/xbin/ with rwxr-xr-x (755) permissions. It can then be run from Terminal with either the pid (default), class or a class name search string. Uses pidof and pgrep from busybox.
  • gappsintegrator init.d script (many devices) - link
    ROM GApps Auto-Integration of /data/app GApps into /system, complete with libs (unlike Titanium Backup), for Jelly Bean through Marshmallow. It should process things early enough in the boot that afterwards Dalvik will immediately do the cleanup ("Android is upgrading..."), much like following an OTA. An initial GApps installation is one requirement and there are some important notes for support of Lollipop and above. Intended for ROMs with a busybox installation. Can also remove libs from and zipalign the integrated APKs if those binaries are present in the ROM.
  • lmkwhitelist init.d script (all devices) - link
    Users running ROMs or kernels with extremely aggressive custom lowmemorykiller (lmk) driver settings may notice their launcher redrawing frequently. Some kernels/ROMs also include an exclusion for this by making stock (or the included) launcher unkillable, however that still leaves all the 3rd party launchers out there that people use. I wrote this init.d script with a community created list of the most common launchers to make whichever one is installed unkillable. This also has instructions for how to set up init.d scripts. If your launcher isn't included in the list, you can modifiy it by adding the application class name (from the Play Store URL) to the list within quotes, separated by spaces. Also part of the 975experimental Franco's Dev Team init.d script, linked above.
  • dalvik2cache init.d script (all devices) - link
    Bind mounts the dalvik-cache directory to the cache partition. Useful on devices where the cache is sizable and unlikely to be used for OTAs (custom ROM, etc.), and the data partition is not. Every little bit counts!
  • settingsdump.sh (all devices) - attached
    In comparing vm settings from various kernels and ROMs to see what's out there, I wrote this script to generate a list of the values of all the relevant sysfs files and directories. Now expanded to cover cpu and governor as well. Remove the .txt extension once downloaded. To run it, assuming you just put it in /sdcard/, open Terminal Emulator and type: "sh /sdcard/settingsdump.sh" (without quotes). It will output the file to /sdcard/r*-output.txt where * is the revision of the kernel you're running. This makes it easier to compare what's changed between different nightlies, for example.

Other
  • G-Box Midnight MX2 g18ref ROM, recovery and kernel osmods (MX Box) [with BenniBenassi & relol] - link
    I bought one of these unbranded Android TV boxes and was immediately determined to tweak it as much as possible following my work on the Galaxy Nexus. Flashing the official Matricom stock ROM over the generic included one I also discovered the recovery didn't have any A/V output to my old CRT TV. I set out to dump the kernel and recovery images, fix the recovery images and tweak the kernel defaults for the most performance.
  • Holo Stock Notification Icons for Notification Toggle (many devices) - link
    This was likely my first post ever on xda. It is a "Notificon" pack for j4velin's fantastic Notification Toggle App, bringing a seamless stock look to this indespensibly useful app. Also a great way to get back to Settings easily from the notification shade since Android 4.2, and add shutdown/reboot menu functionality to stock/vanilla ROMs.
  • My GN Kernel Settings + 900colorsettings init.d script (GN) - link
    I was being asked a fair amount for my kernel settings over in the GN f.K thread where I helped out, so I posted them up. I also put up an init.d script for setting color values on boot, which can drastically change the outcome on older panels, and at least makes custom values seamless. Instructions for how to set up init.d scripts are included.
  • Galaxy Nexus Baseband Collection: maguro - i9250 / M420 / SC-04D Radios (GN) [with josteink] - link
    Original thread author josteink moved on to other devices and asked me to take over the thread. Lots of great information on the GN radios, posted alphabetically by region and chronologically by the build string date I found embedded in the images. Huge respect and massive thanks to josteink for seeing the need for a baseband thread almost as soon as the Galaxy Nexus was launched, way back in December 2011, and maintaining it diligently.
  • TK GApps (many devices) [with TKruzze] - link
    After helping TKruzze with some of the concept and script work for his famous Paranoid Android Google Apps packages (PA GApps 2.0), we decided to collaborate again for his return to XDA after a much-needed hiatus, with me doing the thread setup and management with DevDB, and a Q&A section so things don't get overwhelming for those trying to follow along. The main thread remains locked and can be subscribed-to for those wanting notification only when there's a new GApps release, and the Q&A functions as the main discussion thread where people can help each other. Much of the script is the same from PA GApps but TKruzze has added some impressive new features, made many fixes and revamped a large portion of the documentation. I also continue as an adviser and submitting script when needed. Be sure to read the OPs before posting.
  • Nexus Louder Audio Improvement Patch (GN, N4, N5, N7 '12, N7 '13) [with Misledz] - link
    One of my earliest forays into EDIFY scripting, I wrote the flashable zip install/revert scheme for this great volume boost mod by Misledz. The scripts check to see if the mod is already installed and if so recommends you flash the version-specific revert that goes with it. More on that in the Intelligent EDIFY thread. During install the script also backs up the ROM files it replaces so that you don't need to reflash your whole ROM if something goes wrong, just use the revert to restore the backups. I eventually rewrote this completely in shell script with a Universal install/revert, that detects which files to backup and leaves a list for itself to revert. I also wrote automation batch scripts for Misledz as the "Louder Build Farm" to simplify his work for all the versions of the mod he maintains for various devices, linked in the knowledge base below. GN/Dev thread linked; Other links can be found there.
  • Xposed Framework Installer Zip (many devices) [with rovo89 & Tungstwenty] - link
    When JB4.3 broke all previous root methods I made this simple frontend script to install rovo89's brilliant Xposed Framework for modding ROMs until they could release a new version themselves. Xposed Framework files and the install.sh used are the work of rovo89 and Tungstwenty; I have only created a recovery flashable zip and shell script to function as an alternative frontend for the framework installation process. Then updated to mimic the APK installation and allow devices with /system write protection like HTC's S-ON to install the framework. (Deprecated as of Xposed 2.5).
  • BBCode for my xda Signature (n/a) - link
    Last and definitely least. A number of people have asked me about the formatting of my signature, so here are some simple BBCode tricks and workarounds I thought others might like too. Keep in mind that my signature can be significantly larger because of my RC status.

Enjoy!
Questions, comments and feedback welcome.



Credits & Thanks: All authors of any included binaries and libraries for their amazing work. Anyone who's helped me with these projects along the way.

Disclaimer: Naturally, you take all the responsibility for what happens to your device when you start messing around with things.
Attached Files
File Type: txt settingsdump.sh.txt - [Click for QR Code] (490 Bytes, 1996 views)
File Type: txt flash_image.txt - [Click for QR Code] (1.4 KB, 1600 views)
File Type: txt getprio.txt - [Click for QR Code] (759 Bytes, 1203 views)
File Type: txt 999-customkernel.sh.txt - [Click for QR Code] (1.0 KB, 1863 views)
File Type: txt 00-resizesystem.sh.txt - [Click for QR Code] (1,013 Bytes, 800 views)
File Type: txt 99-flashafterupdate.sh.txt - [Click for QR Code] (2.3 KB, 560 views)
The Following 146 Users Say Thank You to osm0sis For This Useful Post: [ View ]
18th April 2013, 12:37 AM |#3  
osm0sis's Avatar
OP Recognized Developer / Recognized Contributor
Flag Halifax
Thanks Meter: 23,231
 
Donate to Me
More
[TOOLS][ZIPS][SCRIPTS] osm0sis' Odds and Ends [Multiple Devices/Platforms]
Knowledge Base

Links to information/research posts I've made and other experiments.

----

XposedWalletPatcher (updated APKs) - link
My attempts at hooking the correct functions to update Entropy512's Xposed module to keep Google Wallet working internationally.

Omni SoundPacks (and Nexus Stock pack) - link
My suggested expansion to the Omni SoundPacks feature to allow it to cover all SystemUI sounds.

----

Complete Shell Script Flashable Zip Replacement + Signing Documentation (Reference) - link
Using a shell script instead of an update-binary in flashable zips can make them universal for architecture and put a lot more power in the hands of the developer. This reference documents all of the analogous functions myself and others have written to make this easy.

Unified ext4/f2fs ramdisk + ROM installer (Reference) - link
Supporting multiple filesystems like ext4 and f2fs in a custom kernel boot.img ramdisk required some work. This is the roll-up post gathering all the changes necessary for someone to add this support to their ramdisk, kernel and ROM installers.

FlashFire Recipe Book (Reference/How-To) - link
Just a quick reference of common tasks (OTA flashing, etc.) for people figuring out how to use Chainfire's brilliant flashing app.

personal addon.d (How-To/Template) - link
I was tired of having to redo a number of tasks (remove files, backup Nexus sounds and replace the AOSP ones, etc.) to get my device back to where I wanted it after flashing a newer nightly, so I wrote an addon.d script to do it all for me. Provided if anyone wants to modify it for their own personal setups.

KBox2: Set Up A Build Environment On Android (How-To) - link
Very cool Linux-like command prompt environment on Android. I originally had it set up as a native build environment with rudimentary git support. You can follow my steps to do the same.

Cygwin-Linux Cross-Compiler (How-To) - link
Compiling from Cygwin with a Linux target required some fixes to the toolchain, so I detailed them for future reference.

N4/N5/N7 '13 Qualcomm Optimized Bionic/Dalvik Patch Comparisons (updated zips) - link
Using Qualcomm optimized files on Snapdragon devices improves performance greatly on KitKat. Especially good on Nexus devices or AOSP ROMs. I took the time to dissect the required files and see what worked best.

AIK Build Farm (desktop shell script) - link
The Cygwin shell script "build farm" I wrote for my Android Image Kitchen project to perform all of the cross-compiles required for the mobile and Linux versions. Allows someone to setup the repos from scratch and build.

Louder Farm (zip packages) - link
The Nexus Louder project was a pretty massive system file modifcation undertaking. This details my work to make building the patch zips easy for co-dev Misledz, and includes the farm packages at various stages.

----

N7 '13 Bootloader cracking (Information) - link
Sat down with my parents' Nexus 7 2013 (before I got my own) over Christmas and cracked the bootloader for unlock support via my Nexus BootUnlocker Script zip and later the official BootUnlocker App.

N7 '13 Unbricking (Information) - link
Instructions I put together for recovering from a hard brick (bad bootloader flash usually), via the exposed Qualcomm/Marshall London "HS-USB Diagnostics 9006" mode.

Partition Dumping Script (Information) - link
A script snippet for use dumping all non-userland partitions from any eMMC device, useful for bootloader lockstate hacking.

GN Partition Information Table (PIT) Research (Information) - link
Wanting to push the GN as far as possible, several remaining users came together to discuss how it could be repartitioned to add more space to /system to better support Lollipop+ and I contributed a large amount of R&D over several posts throughout the thread which resulted in the PIT Editor script zip (posted above). Could be useful for other devices using PITs as well.

GN/N7 '12 tunables post (deprecated) (Reference) - link
The list of supported basic tunables on franco.Kernel for the Galaxy Nexus and Nexus 7 2012 back when those were my primary supported devices.

GN scheduler tunables HZ scale (Information) - link
The Galaxy Nexus scheduler (and other) tunables opperate on an odd scale due to the the device's HZ value in the source being weird. This post experiments with that and finding the method/equation behind it.

LMK boot timing (Information) - link
The Android lowmemorykiller module default tunables go through a bizarre sequence during boot, so I experimented and came up with a script to allow setting alternates as soon as possible.

LMK Launcher Whitelist/Niceness settings reversion (Information) - link
Setting oom_adj values and changing the niceness on launchers and systemui improved responsiveness and helped avoid these important processes being killed by LMK. Then I noticed sometimes they spontaneously reset; experimentation followed.

MTD partition flashing (Reference) - link
My MTD-based MX Box set-top device gave me a few hours of headaches until I figured out how to dump and flash the boot (kernel) partition correctly. This details my experiments and the correct procedure I discovered.

nano Android static build instructions (Reference) - link
A little documentation of all the dirty tricks I used to get the nano terminal editor utility to build for Android from the official git repo source.

----

Thanks for the interest! More to come, I'm sure!
The Following 69 Users Say Thank You to osm0sis For This Useful Post: [ View ]
18th April 2013, 08:23 AM |#4  
lippol94's Avatar
Retired Recognized Developer
Flag Cremona
Thanks Meter: 2,659
 
Donate to Me
More
What can I say...

SUBSCRIBED

Sent from my Galaxy Nexus
The Following 2 Users Say Thank You to lippol94 For This Useful Post: [ View ] Gift lippol94 Ad-Free
18th April 2013, 09:36 AM |#5  
Senior Member
Thanks Meter: 85
 
More
Far superior
The Following 2 Users Say Thank You to phillysmako For This Useful Post: [ View ] Gift phillysmako Ad-Free
18th April 2013, 09:43 AM |#6  
ak's Avatar
Recognized Contributor
Flag Ak Land Valley
Thanks Meter: 69,902
 
Donate to Me
More
Thumbs up thanks
Franco Team always made a great work .... Keep it up.
Thanks for these great useful infos!
The Following 4 Users Say Thank You to ak For This Useful Post: [ View ] Gift ak Ad-Free
18th April 2013, 03:08 PM |#7  
Senior Member
Thanks Meter: 119
 
More
Thumbs up
Bookmarked, subscribed and rated a well deserved 5 stars
The Following User Says Thank You to pmbabu For This Useful Post: [ View ] Gift pmbabu Ad-Free
18th April 2013, 05:31 PM |#8  
efrant's Avatar
Developers Relations / Senior Moderator
Flag Montreal
Thanks Meter: 10,760
 
Donate to Me
More
Thanks for sharing. Very useful.
The Following User Says Thank You to efrant For This Useful Post: [ View ] Gift efrant Ad-Free
18th April 2013, 09:06 PM |#9  
le_prof's Avatar
Member
Flag Montreal, Quebec, Canada
Thanks Meter: 14
 
More
Nice...

Envoyé depuis mon Galaxy Nexus avec Tapatalk
The Following User Says Thank You to le_prof For This Useful Post: [ View ] Gift le_prof Ad-Free
18th April 2013, 09:14 PM |#10  
opz187's Avatar
Senior Member
Thanks Meter: 410
 
More
Nice collection osmosis
The Following User Says Thank You to opz187 For This Useful Post: [ View ] Gift opz187 Ad-Free
19th April 2013, 08:35 AM |#11  
Puzzlegirl's Avatar
Senior Member
Flag Southampton
Thanks Meter: 245
 
More
Many thanks osm0sis, to you and all the team for all your contributions Almost feel as though I know you since I've been hanging round GNex and N7 franco.Kernel threads for so long and if you pop up on the N4 thread it's like seeing an old friend I'm mostly quiet, but really appreciate all you do :thumbup:

Sent from my Nexus 4 using Tapatalk 2
The Following User Says Thank You to Puzzlegirl For This Useful Post: [ View ] Gift Puzzlegirl Ad-Free
Post Reply Subscribe to Thread

Tags
automation, batch, flashable zip, script, tool
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes