[OnePlus 12] snowwolf725:
**Attention**

Do this at your own risk, I am not responsible for anything that happens.

What is DSU?

Dynamic System Updates (DSU) is a system feature introduced in Android 10 that does the following:

Downloads a new GSI (or other Android system image) onto your device.

Creates a new dynamic partition.

Loads the downloaded GSI onto the new partition.

Boots the GSI as a guest OS on the device.

Ref:

Generic System Images (GSIs) | Platform | Android Developers

developer.android.com

Dynamic System Updates (DSU) | Platform | Android Developers

Dynamic System Updates (DSU) lets developers install a GSI side by side with the device's system image on a DSU-supported device that runs Android 10 or higher.

developer.android.com

Requirements:

1. DSU sideloader

GitHub - VegaBobo/DSU-Sideloader: A simple app made to help users easily install GSIs via DSU's Android feature.

A simple app made to help users easily install GSIs via DSU's Android feature. - VegaBobo/DSU-Sideloader

github.com

2. GSI images

Generic System Image (GSI) list

Notes about tinkering with Android Project Treble. Contribute to phhusson/treble_experimentations development by creating an account on GitHub.

github.com

Mystic GSI Updates - Browse Files at SourceForge.net

Unofficial ports project

sourceforge.net

3. Unlock Bootloader

4. Disable dm-Verity (Optional, some image need disable dm-verity to boot)

fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img

We will use DSU for gaining temporary root and test new system in this guide.

if you don't use the guest os, once you reboot the phone it goes back to your regular stock OS.

How to use?

1. Download GSI image which build with root permission in system.

8.09 GB file on MEGA

mega.nz

2. Install DSU sideloader app

3. When opening app for the first time, you need to give read/write permission to a folder, create a new folder and allow access

*this folder will be used to store temporary files, like extracted GSIs from compressed files)

View attachment 6086233View attachment 6086234

4. Select a GSI to install

*accepted formats are: zip, gz, xz and img

5. Changing userdata size for dynamic system

( Some systems require larger partition space; otherwise, they cannot boot.）

View attachment 6086235

6. Tap on "Install"

7a. rooted devices, DSU screen will appear, prompting you to confirm installation, after that, check your notifications, DSU should start installing GSI

7b. On non-rooted devices, you will be prompted to run a command in adb, once you run, DSU should start installing GSI

adb shell sh "/storage/emulated/0/Android/data/vegabobo.dsusideloader/files/install"

View attachment 6086227

8. Once dynamic system is ready, you can boot it through notification

9. Boot into GSI system.

The Mod system has build-in Magsik and some root permission apps.

You can use these apps(Sence, Lanthanum system toolbox, or termux) to backup partiton.

View attachment 6095076

Tested GSI images:

I tested most of the ROMs in the GSI list.

1. Bootable, but no phone signal:

crDorid, LineageOS, VoltageOS, RisingOS

2. Bootable, but phone signal is 3.5G

Evolution X, DerpSpace, HorizonDroid, PixelOS,

3. UnBootable

SuperiorOS,LeOS U, CherishOS

View attachment 6086243View attachment 6086246View attachment 6086247

View attachment 6086245

View attachment 6086252View attachment 6086251

OxygenOS and ColorOS DSU for Oneplus 12

Note: requires at least 20GB of userdata space

ColorOS for OP12:

Note2: You can use these DSU file to dual-boot.

10.51 GB file on MEGA

mega.nz

OxygenOS(EU) for OP12:

7.52 GB file on MEGA

mega.nz

OxygenOS(GLO 604 Mod) for OP12:

8.09 GB file on MEGA

mega.nz

FAQ:

Q1. Phone had no signal

Although theoretically Dynamic System Updates (DSU) do not impact the main system, but during my testing process, I encountered situations where the main system had no signal or was limited to 3.5G.

If you’re experiencing similar issues, the solution I’m aware of is to install Network Signal Guru to slove this issue.

Ref:

Let's talk about DSU (Dynamic System Updates)

**Attention** Do this at your own risk, I am not responsible for anything that happens. What is DSU? Dynamic System Updates (DSU) is a system feature introduced in Android 10 that does the following: Downloads a new GSI (or other Android...

xdaforums.com

Or you can try to flash modem partitions using fastboot

fastboot flash modem_a modem.img
fastboot flash modem_b modem.img

2. GSI System not boot

Some systems require larger partition space; otherwise, they cannot boot.

Some systems require disable dm-verity to boot

3. How to enable Sticky Mode?

(Always boot into dsu system)

Boot into DSU system and use adb command to enable sticky mode.

adb shell gsi_tool enable

Disable sticky mode

adb shell gsi_tool disable

4. How to make a GSI

For OxygenOS/ColorOS:

In Google’s design philosophy, we simply need to replace the system.

However, in reality, manufacturers often distribute many files across different partitions.

Therefore, we need to package these partition images files into a single ZIP archive.

If you extract the Oxygen DSU zip, you can see it contain many partition image files.

View attachment 6086303

For General:

How to build a GSI?

Notes about tinkering with Android Project Treble. Contribute to phhusson/treble_experimentations development by creating an account on GitHub.

github.com