r/Magisk•
dyokisnt

[Discussion] I made a module that forces Vulkan rendering -- and it kills itself before it bootloops you

Discussion

debug.hwui.renderer=skiavk forces Android's HWUI to use the Vulkan pipeline instead of OpenGL. Smoother animations, less GPU overhead. The problem is most modules that do this have no safety net -- if something goes wrong, you're stuck in a bootloop.

So I built one with a 3-strike bootloop guard.

How the guard works:

Every boot, the module writes its state atomically before touching anything. If the device fails to fully boot 3 times in a row, it disables itself automatically -- before you're stuck. No manual recovery via recovery mode needed.

If it does trigger, you just tap the Action button in your root manager (KSU/APatch) to reset the counter and re-enable. One tap, done.

Other things it does:

  • Checks for hardware Vulkan at install time -- aborts automatically if it detects software renderers like SwiftShader or Lavapipe (emulators, VMs, unsupported devices)
  • Late-boot watchdog that re-applies skiavk if a vendor process overrides it after boot
  • Dynamic resetprop path resolution -- works on Magisk, KernelSU, and APatch without extra config
  • Logs everything to /data/adb/skia_vulkan/skia_vulkan.log if you want to debug

Requirements:

  • Android 10+ (API 29+)
  • Hardware Vulkan support (the installer checks this for you)
  • Magisk, KernelSU, or APatch

Tested on Samsung Galaxy S23 (Snapdragon 8 Gen 2) with KernelSU-Next:

https://preview.redd.it/ua1rq3ikis5h1.jpg?width=1080&format=pjpg&auto=webp&s=41af604f4636c24e8f44bfe2e191922987c4b46b

Download: GitHub Releases

Feedback welcome -- especially if you're on a device where the Vulkan check gives a false positive.

Posted Jun 7, 2026, 4:44 AM UTC

63
Loading comments…