-
-
Notifications
You must be signed in to change notification settings - Fork 21
incept autoroot
$ incept autoroot -h
usage: autoroot [-h] (-b BASE | -v VARIANT) [-o OUTPUT]
Creates Inception Auto-Root package that you can flash to your device. An
Inception Auto-Root package will install root and supersu on your device, and
then reinstalls stock recovery back.
optional arguments:
-h, --help show this help message and exit
Required args:
-b BASE, --base BASE base config code to use, in the format A.B
-v VARIANT, --variant VARIANT
variant config code to use, in the format A.B.C
Optional args:
-o OUTPUT, --output OUTPUT
Override default output path
$ incept autoroot --base samsung.degaswifi
According to ChainFire, creator of CF-Auto-Root
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.
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"
- recovery.dev = "/dev/block/mmcblkXpY"
- SuperSU
- update.root_method = "supersu"
- Setting the cache partition Size
- cache.size = 209715200
Ideally a "base" would have all those properties set for you. However, ff the base/variant you are using for autoroot is missing one of those properties, you'll need to bootstrap a variant first, set those missing properties, and then use this variant for generating autoroot.
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",
"dev": "/dev/block/mmcblkXpY"
},
"cache": {
"__make__": true,
"size": 209715200
},
"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,
"checksum": true
}
}