Partition Docs
As hekate's partition manager purposes is to get user quickly setup, it lacks resizing capability.
To mitigate this, users can use a standard ext4
-supported partition manager like gparted
to manually resize, create, and destroy partitions to their hearts' content. This page is meant as a reference to understand the partition layout our projects support so anyone can jump right in and modify their configuration. Data is based off hekate
's partitioner source code.
Basics
It is recommended to keep a Hybrid MBR partition table to keep HOS compatibility. Generally, L4T is applied to the MBR partition unless a GPT table is present, and Android must always be applied to a GPT table. Hybrid MBR allows both of these tables to exist simultaneously. You can create your partitions in the GPT and use Hekate's "Fix Hybrid MBR" when you are done to allow HOS to read the FAT32.
The first partition on an SD card should be FAT32 with name hos_data
as some functions of Hekate and Android depend on this for functionality.
Dynamic Android Partitions
Required partitions and sizes for Switchroot Android 14 (order should not matter but it is best to keep in order for semantics, and the GPT table must come after the MBR table):
Partition | Name | Size |
---|---|---|
Boot (Linux Kernel) | boot | 64MiB |
Recovery | recovery | 64MiB |
Device Tree Reference | dtb | 1MiB |
Miscellaneous | misc | 3MiB |
Cache | cache | 60 MiB |
Super | super | 5922 MiB |
Userdata | userdata | Custom* |
( 1 GiB = 1024 MiB )
* If making Android partitions by hand, take into account that if you have no emuMMC partition (which would go after the Android userdata partition) you should reserve 1MB of unallocated space at the end of the partition table.
Legacy Android Partitions
Required partitions and sizes for Switchroot Android 10 and 11 (order should not matter but it is best to keep in order for semantics, and the GPT table must come after the MBR table):
Partition | Name | Size |
---|---|---|
Vendor | vendor | 1GiB |
System | APP | 2GiB* |
Linux Kernel | LNX | 32MiB |
Recovery (TWRP) | SOS | 64MiB |
Device Tree Reference | DTB | 1MiB |
Metadata** | MDA | 16MiB |
Cache | CAC | 700 MiB |
Miscellaneous | MSC | 3MiB |
Userdata | UDA | Custom*** |
( 1 GiB = 1024 MiB )
* hekate
now creates 3 GiB, but public images only support 2 GiB systemimage--compile 10 or 11 manually to support
** You may encounter errors in Android if your encryption (MDA) partition is not properly zeroed before use. Be sure to zero it when altering the partition. Encryption is not recommended and may not function properly.
*** If making Android partitions by hand, take into account that if you have no emuMMC partition (which would go after the Android userdata partition) you should reserve 1MB of unallocated space at the end of the partition table.
Linux Partitions
L4T Linux distributions require only a single ext4 partition which can be placed anywhere in the GPT or MBR (if no GPT is present). The FS Label should be named as according to uenv.txt in the /switchroot/distro_folder on the FAT32 (ex: SWR-UBU for L4T Ubuntu Bionic).
Last updated