[Motorola Droid Maxx] Skrilax_CZ:
Open recovery is a easy-to-use and easy-to-edit recovery based on shell scripts. It features advanced nandroid

FEATURES

- f2fs support

- nandroid backup / restore from menu for all relevant partitions, with ability to select with partitions are to be backed up and which are to be restored and possibility to reboot the device after backup / restoration is finished

- wipe data (factory reset)

- wipe cache / wipe dalvik-cache

- adb in recovery, using bash shell

- running bash scripts in recovery from internal / external storage (!shell is /sbin/bash)

- applying update.zip files from internal / external storage

- multiple themes

- improved menu navigation (holding a key works)

NOTES

Nandroid:

- backups can be found under /data/OpenRecovery (not wiped when data partition is wiped)

Changing a theme:

- "Theme" submenu under settings menu.

CHANGELOG

Version 2.09

- Droid MAXX initial release

INSTALLATION

1) Download the image

2) Flash using fastboot (fastboot flash recovery open_recovery.img)

3) Reboot to recovery

DOWNLOAD

GITHUB

============================================================================================================================

DEVELOPER NOTES

Menu system:

The menu for the Open Recovery is created dynamically. The files must be created inside "/menu" folder by scripts, which can either be specified (if the menu is scripted_menu). A menu creating script has to create a *.menu file inside the /menu folder. If the menu is supposed to be created on startup and not modified, place the script into /init folder, otherwise use "scripted_menu" item, where the script is ran right before the menu is created. sdcard, system and data partitions are mounted when the scripts are ran. A typical example for "scripted_menu" item is under the tutorial for application menu:

First line is the menu name (normal string), then use the following structure:

"item name:type:argument"

- item name is what is seen in the menu

- type: type of the command (described below)

- argument: argument passed to the command (file, or anything else; if empty, put "*" there, otherwise the item will be discarded)

Commands:

- reboot: reboots the phone

- poweroff: turns the phone off

- console: shows console (argument is initial call, use "*" for nothing)

- shell: calls a file specified in arguments (default path is to /bin, if not specified)

- shell_dir: shows script directory dialog, argument is the root directory

- menu: opens another menu file (specified in argument), if the argument is "..", it returns to up one level meu

- scripted_menu: argument is in format "menu file:menu script", the menu script is called with variable MENU_FILE containing the menu name (default path for the script is to /bin, if not specified)

- tag: if ticked, file "tags/.argument" is created

- break: unselectable item, argument is ignored (use "*") and creates a menu item like "---- name ----"; using "*" as name will create just "--------------"

- label: unselectable item, argument is ignored (use "*") and creates normal menu item "name "

- update: applies an update *.zip file, specified in argument

- update_dir: shows update directory dialog, argument is the root directory

- wipe_data: factory reset

- wipe_cahce: wipe cache

The menu is refreshed (the script is called if the menu is scripted) on a menu change, applying an update or running a script. The common partitions are mounted whenever a script is run (system, data, cache, external sdcard if present).