[Magisk] kirashi:
Just wanted to let you know that since trying to install v4.5 from the Magisk Module list, I get "LAUNCHER NAME has stopped" no matter what Pixel 2 launcher I choose during installation. I've also tried v4.4 from the GitHub repo, but get the same issues, albeit with slightly different names and icons for each launcher I try it with. Seems like something might not be getting fully cleaned up during uninstallation, but I'm not entirely sure.

I have captured a full logcat with the "Stock" Ruthless Launcher option installed that I can send your way if you like [MENTION=4936496]joeyhuab[/MENTION] and have included a snipped of log when the launcher crashes upon launching. I really would prefer not to have to wipe my phone, but would be happy to run fix permissions or try other things to help troubleshoot this bug, as I'm quite technically savvy.

05-24 22:32:24.992 1411 1411 I WindowManager: Finished waking up...
05-24 22:32:24.992 12370 12370 W ResourceType: For resource 0x7f0b0184, entry index(388) is beyond type entryCount(182)
05-24 22:32:24.992 12370 12370 W ResourceType: Failure getting entry for 0x7f0b0184 (t=10 e=388) (error -75)
05-24 22:32:24.992 835 835 D SurfaceFlinger: Backpressure trigger, skipping transaction & refresh!
05-24 22:32:24.992 12370 12370 W PackageManager: Failure retrieving text 0x7f0b0184 in package com.ruthless.nexuslauncher
05-24 22:32:24.992 12370 12370 W PackageManager: android.content.res.Resources$NotFoundException: String resource ID #0x7f0b0184
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.content.res.Resources.getText(Resources.java:338)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.app.ApplicationPackageManager.getText(ApplicationPackageManager.java:1748)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.content.pm.ComponentInfo.loadLabel(ComponentInfo.java:115)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.content.pm.ResolveInfo.loadLabel(ResolveInfo.java:218)
05-24 22:32:24.992 12370 12370 W PackageManager:	at com.android.internal.app.ResolverActivity$ResolveListAdapter.processSortedList(ResolverActivity.java:1649)
05-24 22:32:24.992 12370 12370 W PackageManager:	at com.android.internal.app.ResolverActivity$ResolveListAdapter.-wrap0(Unknown Source:0)
05-24 22:32:24.992 12370 12370 W PackageManager:	at com.android.internal.app.ResolverActivity$ResolveListAdapter$1.onPostExecute(ResolverActivity.java:1579)
05-24 22:32:24.992 12370 12370 W PackageManager:	at com.android.internal.app.ResolverActivity$ResolveListAdapter$1.onPostExecute(ResolverActivity.java:1577)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.os.AsyncTask.finish(AsyncTask.java:695)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.os.AsyncTask.-wrap1(Unknown Source:0)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:712)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.os.Handler.dispatchMessage(Handler.java:105)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.os.Looper.loop(Looper.java:164)
05-24 22:32:24.992 12370 12370 W PackageManager:	at android.app.ActivityThread.main(ActivityThread.java:6809)
05-24 22:32:24.992 12370 12370 W PackageManager:	at java.lang.reflect.Method.invoke(Native Method)
05-24 22:32:24.992 12370 12370 W PackageManager:	at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
05-24 22:32:24.992 12370 12370 W PackageManager:	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
05-24 22:32:24.992 12370 12370 D ResolverActivity: addResolveInfo dri.getResolveInfo() = ResolveInfo{b0a7823 net.oneplus.launcher/.Launcher m=0x108000}
05-24 22:32:24.992 12370 12370 D ResolverActivity: addResolveInfo dri.getResolveInfo() = ResolveInfo{2220120 com.ruthless.nexuslauncher/com.google.android.apps.nexuslauncher.NexusLauncherActivity m=0x108000}