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):

PartitionNameSize

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):

PartitionNameSize

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