github topjohnwu/Magisk v31.0
Magisk v31.0

pre-release4 hours ago

The highlight of this release is a complete, ground-up rewrite of the Magisk app UI.

Over the years, the Android application codebase had accumulated significant technical debt—spanning legacy XML layouts, Databinding, and KAPT. In this release, the entire UI layer has been rebuilt from scratch with modern Jetpack Compose and Material 3.

This rewrite allowed us to modernize the architecture and introduce substantial UI/UX improvements, with additional new features:

  • A new built-in terminal emulator with full TTY and ANSI support for module flashing and action scripts.
  • Direct support for streaming and extracting boot images from remote OTA URLs on-the-fly.

Legacy App Still Available

This kind of full rewrite can sometimes introduce unexpected edge cases or bugs. If you encounter issues with the new app, the legacy View-based version will still be built and uploaded for a couple of releases, available for download here.

Changelog

  • [App] Complete UI overhaul with Jetpack Compose and Material 3, completely removing the legacy View and Fragment architecture
  • [App] Add new built-in terminal emulator with full TTY and ANSI support for module flashing and action scripts
  • [App] Support downloading and streaming boot image extraction directly from remote OTA URLs
  • [MagiskBoot] Support dynamic zImage payload sizes without requiring exact size padding during repack
  • [MagiskBoot] Update AVB hash descriptor image size to match unpacked image size
  • [MagiskBoot] Lower default compression preset for XZ and LZMA to reduce memory usage during repacking
  • [Zygisk] Support Android 17 (API 37)
  • [Zygisk] Support Meta Quest (Horizon OS) lazy partition zygotes
  • [MagiskPolicy] Fix identifier parsing for names containing hyphens
  • [resetprop] Add --compact (-c) flag to compact property storage areas
  • [MagiskInit] Properly prioritize charger mode detection before force_normal_boot
  • [DenyList] Add webview_zygote as an unmount target

Full Changelog: here

Don't miss a new Magisk release

NewReleases is sending notifications on new releases.