DSU Sideloader is an open source app that greatly simplifies the custom GSI installation process of the Android DSU Loader. Check it out!
Last week, Google released the first Developer Preview build of Android 13. While the current release is only available for a handful of Google Pixel smartphones, the company will likely publish official Generic System Images (GSIs) for the subsequent builds. Apart from manually flashing the GSI, developers can then utilize the Dynamic System Updates (DSU) loader feature to try out the new iteration of Android without wiping out the underlying system partition of the test device.
Interestingly, Android’s DSU loader isn’t limited to only Google-made GSI releases. It is possible to boot a third-party GSI through the DSU loader, but you need to fiddle with ADB and run some commands. Now, a developer named Matheus M. (AKA VegaBobo on GitHub) has come up with a little application called DSU Sideloader that allows you to quickly apply a custom GSI of your choice via DSU.
DSU Sideloader accepts GSI releases in multiple formats (IMG, GZ, XZ, and ZIP), hence you don’t need to unpack the package by hand. Just pick a GSI distribution from our Project Treble sub-forum, download the release on your phone, and select the location where you downloaded the GSI on the app wizard to get started. Any device running Android 10 or higher with Dynamic Partitions should be compatible with this utility. The app even allows you to customize the size of the userdata partition before installing a GSI.
You can take a look at the video (in Portuguese) posted by the developer to know more about the workflow of DSU Sideloader.
Notably, the app doesn’t require root access. However, in its current state, end-users need to run a shell script via ADB on non-rooted devices to invoke the DSU installation activity. Moreover, you have to unlock the bootloader of the target device before attempting to boot a custom GSI via DSU. DSU Sideloader itself is open source, and the source code is available on the developer’s GitHub profile.