Skip to content
Tarek edited this page Jun 3, 2015 · 11 revisions
incept autoroot -b samsung.degaswifi

According to ChainFire, the original CF-Auto-Root creator

CF-Auto-Root is built on an automated system that I am constantly improving that takes a stock recovery image and returns an automated rooting packages. These packages are designed to install and enable SuperSU on your device, so apps can gain root access, and nothing more.

inception's autoroot command does a similar thing. It creates an on the fly a temporary configuration, sets all necessary properties to generate an autoroot package. That is, a package that you can flash using Heimdall or Odin and does the following:

  • Installs a temporary custom recovery
  • Boots into the custom recovery
  • Custom recovery will automatically install SuperSU and root the device
  • Stock recovery is installed back to your device

This enables you create autoroot packages yourself, for example when a device is not supported by ChainFire.

Requirements

An autoroot package generation needs the following:

  • Temporary Custom recovery like twrp, PhilZ or cwm
    • recovery.img = "/path/to/recoveryfile.img"
  • Stock recovery
    • recovery.stock = "/path/to/stockrecoveryfile.img"
  • SuperSU
    • update.root_method = "supersu"

The following is an example of a minimum autoroot config, that the incept autoroot command generates and uses:

{
    "common": {
        "root": {
            "methods": {
                "supersu": {
                    "path": "/path/to/supersu.zip",
                    "include_archs": [],
                    "include_apk": true
                }
            }
        }
    },
    "boot": {
        "__make__": false  
    },
    "recovery": {
        "__make__": true,
        "img": "/path/to/recovery.img",
        "stock": "/path/to/stockrecovery.img"
    },
    "cache": {
        "__make__": true
    },
    "update": {
        "__make__": true,
        "restore_stock_recovery": true,
        "root_method": "supersu",
        "settings": {
            "__make__": false
        },
        "network": {
            "__make__": false
        },
        "property": {
            "__make__": false
        },
        "apps": {
            "__make__": false
        },
        "adb": {
            "__make__": false
        }
    },
    "odin": {
        "__make__": true
    }
}