Magisk General Support / Discussion

Search This thread

dd805bb

Senior Member
Sep 18, 2017
453
257
Google Pixel
Google Pixel XL
Screenshot_20230321-144826.png

It's all shared from a private channel you can't even see. And the owner isn't listed.
 

Homeboy76

Recognized Contributor
Aug 24, 2012
3,880
2,318
Google Pixel XL
Google Pixel 7 Pro
Agree... This is an abusive member who thinks I'm a toxic know-it-all anyway...

I've run Alpha since this was just the base for mtk fix and other branches... Not going down the "it's not legit" route either... Already cited @huskydg's view, but nothing has changed in last couple of weeks ... Source and GitHub builds have been unavailable publicly for months now... PW
Please help me understand Magisk Alpha. Is this a Magisk Alpha - Public build?
 
  • Like
Reactions: dd805bb and zgfg

pndwal

Senior Member
The guy you are replying quoted husky first. See told you, you are toxic. Blaming me for something someone else did too. Lol. Literally the guy you are responding saying I am bad for linking that linked it before me.
I mentioned that, so did @zgfg... Who cares who said it first?...
That is toxic. Ok for him before me but not me. LMFAO. Literally are proving my point on the daily.

2weeks≠months
Last Alpha with published source was July last year AFAIK... Source began to be linked from inaccessible (to public) LSPosed GitHub since Feb this year... That's inaccessible for month's in my book...

FWIW, I never reported you previously despite your allegations (a respected dev here did)... Now I am (first time)... PW
 

Homeboy76

Recognized Contributor
Aug 24, 2012
3,880
2,318
Google Pixel XL
Google Pixel 7 Pro
Yes, checksum for app-release.apk is the same as when 25210 downloaded from the TG channel

But only the Readme, JSON for auto-updating and latest apk for download, no sources
Ok.
So, the problem XDA Members are having with using this public build of Magisk Alpha is @vvb2060 or the creator of Magisk Alpha didn't post the source code.
Thanks for the clarification.
 
Last edited:
  • Like
Reactions: pndwal and dd805bb

pndwal

Senior Member
Post in thread '[Discussion] Magisk Alpha (Public Released) fork - @vvb2060' https://forum.xda-developers.com/t/...c-released-fork-vvb2060.4424845/post-88296465

So what I originally said is still true. The GitHub Alpha repos all point to official Magisk now. They didn't a week ago before being wiped...
You originally said:
... The Alpha Canary is the same as the Canary Official, FYI.
This is still NOT true... At best, JSON in vv's Alpha GitHub repo points to official Canary notes, and Alpha does build Canary commits but it adds her experimental ones... always has... And lack of public source doesn't change that; ie. Alpha builds are a very different animal...

For example, recent builds incl latest 25210 include support for experimental (not publicly released) Shamiko v0.6-141. This simply won't run on TJW releases incl. latest Canary ATM... If you want to test early Shamiko you need Alpha...

Another big (and somewhat controversial) difference is that all Alpha builds include (Microsoft based) telemetry... Her pull request for this has been up in TJW Magisk for some time now, but John has never merged this in Canary builds... Yet...

So Alpha is basically Canary with additional (experimental) commits, and there is no published "Alpha Canary" but if there were it would be reasonable to expect it that would contain the unique Alpha commits too...

Many of vv's Alpha commits end up in TJW Magisk, as do commits from Shana's Metagisk and Canyie's Bravo as well as commits developed in other test branches from these Devs (most prolific) and from other forks/Devs also... PW
 

pndwal

Senior Member
View attachment 5868873

It's all shared from a private channel you can't even see. And the owner isn't listed.
That's only the original (Chinese) Alpha Discussion thread, now name has changed but a number of members here are in that discussion... Builds aren't shared there however, only in the official Alpha channel...

Anyone can still join if they find the cryptic (musical) entrance link in the official Alpha TG channel... 😁 PW
 
  • Haha
Reactions: dd805bb

zgfg

Senior Member
Oct 10, 2016
8,980
6,717
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11 Ultra
This is the Magsik Alpha. The links on this page link to Magisk Debug latest version. The code hasn't been updated but the links and where they are the same as canary/debug official build.
For those who might be confused is that the official Magisk Alpha GitHub source (wrong, it is not) and why its Readme Download links to the official Canary (yielding somebody to wrongly think that Alpha is nothing else but Magisk Canary)

Back then in the late summer of 2021, Magisk v23 was still the latest official version

However, TJW (developer and founder of Magisk), who started to work for Google some months earlier, with his peers (some of them are now Magisk Alpha developers) started to work on the new Magisk v24 with the brand new Zygisk, DenyList instead of MagiskHide, removed support for the old Modules Repo, etc

The new code was already committed to his GitHub repo (changes were ongoing) but the new Magisk Canary v24xxx had not been released yet (afaik, it was soon afterwards, during the fall of 2021)

Guys (actually girls or more appropriately, young ladies, students) from the Alpha group released their Magisk Alpha and for many of us here (who dared to install and use) that was the first experience with what would soon come with the new Magisk v24 (for a long time back then in 2021, Alpha provided the new Magisk+DenyList but also the alternative, the old MagiskHide instead)

Btw, that was also the reason why they probably chose the Alpha name - it was like an experimental, pre-release, earlier than the Magisk Canary (and Magisk Beta) v24 came out.
(Another viable theory: They thought of themselves as Alpha females😁)

And they had Magisk Alpha source code open on the GirHub (it remained open until the end of last year or so), and they themselves experimented with the new stuff through the Magisk Alpha installations, eg, developing/debugging modules like Zygisk-LSPosed (for that new Zygisk) and Shamiko (to hide Zygisk) - those modules were indeed developed and still maintained (btw, isn't Shamiko also closed source?!) from the same Alpha developers group

Hence somebody, that CoderThyn (sorry, I'm not familiar with that name but I think he was not part of Magisk nor Alpha development) forked their code

If you look to his GitHub project (you provided the link), you will see that it's frozen in time, 2 years old, last update Sep 2021 (screenshots below)

Btw, the same guy has another Alpha fork (the other screenshot below), 'newer' - albeit from Oct 2021😁

The Readme you see there is also frozen in time: Readme page (Alpha devs did not waste time on writing their own Readme.md but they reused TJW Readme from the official Magisk) - scroll down and you will see that it refers to v23 as the 'latest' Stable Magisk

(That old Readme had also a link to the Wiki - Wiki was recently removed since the author of Wiki is no more 'in' and does no more update his Wiki, although it would still be an excellent user guide for many)

All together, that GitHub link you provided is nothing else but the two years old fork of Magisk Alpha, frozen back in that time.
If you would fork yourself and build (assuming the source is complete there) you would obtain some Magisk Alpha v23xxx (as their version numbers were before Magisk v24 was released)

And the download link points to the (always the latest) official Canary since that's how it was in the Alpha Readme.md when CoderThyn forked Magisk Alpha back in Sep 2021 (again, once upon a time When the World Was New and Alpha was the open source)

Hence that GitHub project is not an up-to-date Magisk Alpha and its download link does not provide a link to download the Magisk Alpha (ie, when you click to 'his' Download and get the latest official Magisk Canary, it does not mean that Alpha = Canary - it is not and it never was)

Hopefully it resolves the confusion
 

Attachments

  • IMG_20230322_092033.jpg
    IMG_20230322_092033.jpg
    267.3 KB · Views: 58
  • IMG_20230322_091832.jpg
    IMG_20230322_091832.jpg
    351.9 KB · Views: 59
  • IMG_20230322_092123.jpg
    IMG_20230322_092123.jpg
    291 KB · Views: 55
  • IMG_20230322_092426.jpg
    IMG_20230322_092426.jpg
    319.9 KB · Views: 58
Last edited:

Nergal di Cuthah

Senior Member
Sep 20, 2013
2,114
1,160
Google Pixel 6 Pro
  • Like
Reactions: ipdev and pndwal

pndwal

Senior Member
Last edited:
  • Like
Reactions: wugga3 and ipdev

dd805bb

Senior Member
Sep 18, 2017
453
257
Google Pixel
Google Pixel XL

John was not part of that group. Quit spreading lies.

And to go even farther.
Canary= bleeding edge
Beta= almost stable
Official/alpha(term not app=stable
Hence husky using Delta name because Delta would be before Canary. Backwards alphabet like most projects. Idk where you think Alpha would before Canary. Read the GitHub she was using. She was pulling from the main branch and basically re-forking it with a commit or 2 changed from Canary. More than likely small things like package name and update channel. Literally above in John's own post from over a year ago he denounced them using that name. He didn't say anything about him being in it..if he did start it, why use that name and then call them out for using that name? I mean that sounds off. It's a good story though. She is a contributor, or was or whatever she is now. She flipped on being open source with Alpha. That is fact. Shared in a Chinese only TG. I wouldn't trust it. "Confusing."
 
Last edited:
  • Like
Reactions: Nergal di Cuthah

zgfg

Senior Member
Oct 10, 2016
8,980
6,717
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11 Ultra
John was not part of that group. Quit spreading lies.
Who is spreading the lies?

Who ever said here that John is part of the Alpha group?!

If you accuse anybody here that we are spreading lies - then link that post and quote particularly that sentence where it was 'said' that John is part of the Alpha group!!!

Or otherwise please stop spreading the lies (that somebody was saying here that John is part of the Alpha group)

---

And about the lies - it's harsh word but you were the one who stated more than once in your previous posts that Alpha is just a Magisk Canary - wasn't that a 'lie'?

And btw, the Twitter post you attached is well known for many of us here - look into the Magisk general thread for about a year ago, it was posted there by @pndwal
 
Last edited:

Top Liked Posts

  • 2
    If I use Magisk 6.1 in my rom every app in denylist crashes.
    The rom is ViperOS, Android 7.1.1, latest security patch. The log is a follows:

    06-05 19:24:01.656 811 1572 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.ideomobile.maccabi/.ui.splash.SplashActivity} from uid 10156 on display 0
    06-05 19:24:01.716 811 1839 I ActivityManager: Start proc 12403:com.ideomobile.maccabi/u0a123 for activity com.ideomobile.maccabi/.ui.splash.SplashActivity
    06-05 19:24:01.723 427 688 D AudioFlinger: mixer(0xb5983480) throttle end: throttle time(20)
    06-05 19:24:01.730 12403 12403 I Magisk : zygisk32: [com.ideomobile.maccabi] is on the denylist
    06-05 19:24:01.731 12403 12403 E Zygote : Unsupported st_mode 4480
    06-05 19:24:01.731 12403 12403 F art : art/runtime/jni_internal.cc:558] JNI FatalError called: frameworks/base/core/jni/com_android_internal_os_Zygote.cpp:485: Unable to restat file descriptor table.
    06-05 19:24:01.755 12403 12403 F art : art/runtime/runtime.cc:422] Runtime aborting...
    06-05 19:24:01.755 12403 12403 F art : art/runtime/runtime.cc:422] Aborting thread:
    06-05 19:24:01.755 12403 12403 F art : art/runtime/runtime.cc:422] "main" prio=5 tid=1 Native
    06-05 19:24:01.755 12403 12403 F art : art/runtime/runtime.cc:422] | group="" sCount=0 dsCount=0 obj=0x7375c4d0 self=0xb4285400
    06-05 19:24:01.755 12403 12403 F art : art/runtime/runtime.cc:422] | sysTid=426 nice=0 cgrp=default sched=0/0 handle=0xb6f6a534
    06-05 19:24:01.755 12403 12403 F art : art/runtime/runtime.cc:422] | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] | stack=0xbe76e000-0xbe770000 stackSize=8MB
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] | held mutexes= "abort lock"
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] kernel: (couldn't read /proc/self/task/426/stack)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] native: (backtrace::Unwind failed for thread 426: Thread doesn't exist)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.Zygote.nativeForkAndSpecialize(Native method)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.Zygote.forkAndSpecialize(Zygote.java:97)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.ZygoteConnection.runOnce(ZygoteConnection.java:230)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.ZygoteInit.runSelectLoop(ZygoteInit.java:855)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:777)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] Dumping all threads without appropriate locks held: thread list lock mutator lock
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] All threads:
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] DALVIK THREADS (1):
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] "main" prio=5 tid=1 Runnable
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] | group="" sCount=0 dsCount=0 obj=0x7375c4d0 self=0xb4285400
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] | sysTid=426 nice=0 cgrp=default sched=0/0 handle=0xb6f6a534
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] | stack=0xbe76e000-0xbe770000 stackSize=8MB
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] | held mutexes= "abort lock" "mutator lock"(shared held)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] kernel: (couldn't read /proc/self/task/426/stack)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] native: (backtrace::Unwind failed for thread 426: Thread doesn't exist)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.Zygote.nativeForkAndSpecialize(Native method)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.Zygote.forkAndSpecialize(Zygote.java:97)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.ZygoteConnection.runOnce(ZygoteConnection.java:230)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.ZygoteInit.runSelectLoop(ZygoteInit.java:855)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:777)
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422]
    06-05 19:24:01.756 12403 12403 F art : art/runtime/runtime.cc:422]
    06-05 19:24:01.756 12403 12403 F libc : Fatal signal 6 (SIGABRT), code -6 in tid 12403 (main)
    06-05 19:24:01.757 384 384 W : debuggerd: handling request: pid=12403 uid=0 gid=0 tid=12403
    06-05 19:24:01.830 12417 12417 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    06-05 19:24:01.831 12417 12417 F DEBUG : LineageOS Version: 'unknown'
    06-05 19:24:01.831 12417 12417 F DEBUG : Build fingerprint: 'samsung/hltexx/hlte:5.0/LRX21V/N9005XXSGBRI2:user/release-keys'
    06-05 19:24:01.831 12417 12417 F DEBUG : Revision: '0'
    06-05 19:24:01.831 12417 12417 F DEBUG : ABI: 'arm'
    06-05 19:24:01.831 12417 12417 F DEBUG : pid: 12403, tid: 12403, name: main >>> zygote <<<
    06-05 19:24:01.831 12417 12417 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
    06-05 19:24:01.843 12417 12417 F DEBUG : Abort message: 'art/runtime/jni_internal.cc:558] JNI FatalError called: frameworks/base/core/jni/com_android_internal_os_Zygote.cpp:485: Unable to restat file descriptor table.'
    06-05 19:24:01.843 12417 12417 F DEBUG : r0 00000000 r1 00003073 r2 00000006 r3 00000008
    06-05 19:24:01.843 12417 12417 F DEBUG : r4 b6f6a58c r5 00000006 r6 b6f6a534 r7 0000010c
    06-05 19:24:01.843 12417 12417 F DEBUG : r8 bef68e90 r9 000001e5 sl 0000000a fp b4285400
    06-05 19:24:01.843 12417 12417 F DEBUG : ip 00000003 sp bef68d50 lr b6041107 pc b6043970 cpsr 60070010
    06-05 19:24:01.865 12417 12417 F DEBUG :
    06-05 19:24:01.865 12417 12417 F DEBUG : backtrace:
    06-05 19:24:01.865 12417 12417 F DEBUG : #00 pc 0004a970 /system/lib/libc.so (tgkill+12)
    06-05 19:24:01.865 12417 12417 F DEBUG : #01 pc 00048103 /system/lib/libc.so (pthread_kill+34)
    06-05 19:24:01.865 12417 12417 F DEBUG : #02 pc 0001d715 /system/lib/libc.so (raise+10)
    06-05 19:24:01.865 12417 12417 F DEBUG : #03 pc 00019261 /system/lib/libc.so (__libc_android_abort+34)
    06-05 19:24:01.865 12417 12417 F DEBUG : #04 pc 00017128 /system/lib/libc.so (abort+4)
    06-05 19:24:01.865 12417 12417 F DEBUG : #05 pc 0031c2a1 /system/lib/libart.so (_ZN3art7Runtime5AbortEPKc+328)
    06-05 19:24:01.865 12417 12417 F DEBUG : #06 pc 000b52eb /system/lib/libart.so (_ZN3art10LogMessageD2Ev+1134)
    06-05 19:24:01.865 12417 12417 F DEBUG : #07 pc 0026386b /system/lib/libart.so (_ZN3art3JNI10FatalErrorEP7_JNIEnvPKc+94)
    06-05 19:24:01.865 12417 12417 F DEBUG : #08 pc 000dabc7 /system/lib/libandroid_runtime.so
    06-05 19:24:01.865 12417 12417 F DEBUG : #09 pc 000dad59 /system/lib/libandroid_runtime.so
    06-05 19:24:01.865 12417 12417 F DEBUG : #10 pc 000da7ff /system/lib/libandroid_runtime.so
    06-05 19:24:01.865 12417 12417 F DEBUG : #11 pc 00019be3 /system/bin/app_process32
    06-05 19:24:01.866 12417 12417 F DEBUG : #12 pc 7344f579 /data/dalvik-cache/arm/[email protected][email protected] (offset 0x281b000)
    06-05 19:24:02.039 12403 12403 W main : type=1701 audit(0.0:231): auid=4294967295 uid=0 gid=0 ses=4294967295 subj=u:r:zygote:s0 reason="memory violation" sig=6
    06-05 19:24:02.046 384 384 W : debuggerd: resuming target 12403
    06-05 19:24:02.048 811 12430 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:877 com.android.server.am.AppErrors.crashApplicationInner:387 com.android.server.am.AppErrors.crashApplication:321 com.android.server.am.ActivityManagerService.handleApplicationCrashInner:13811 com.android.server.am.NativeCrashListener$NativeCrashReporter.run:86
    06-05 19:24:02.050 811 857 I BootReceiver: Copying /data/tombstones/tombstone_07 to DropBox (SYSTEM_TOMBSTONE)
    06-05 19:24:02.052 426 426 I Zygote : Process 12403 exited due to signal (6)
    Generally, in DenyList must be only apps you want to hide Magisk from them (banking apps and so)

    And GMS (Google Play Services) - although, when using Zygisk and USNF, USNF will remove GMS from DenyList

    If some banking apps still crash (or complain) although in DenyList, then they require additional treatment to hide Magisk, root, unlocked BL - USNF, Shamiko, maybe HMA, etc

    Hence first, which apps do crash (and before that, remove 'normal' apps from DenyList if you have them, and reboot)
    1
    Generally, in DenyList must be only apps you want to hide Magisk from them (banking apps and so)

    And GMS (Google Play Services) - although, when using Zygisk and USNF, USNF will remove GMS from DenyList

    If some banking apps still crash (or complain) although in DenyList, then they require additional treatment to hide Magisk, root, unlocked BL - USNF, Shamiko, maybe HMA, etc

    Hence first, which apps do crash (and before that, remove 'normal' apps from DenyList if you have them, and reboot)
    Tnx mate for the reply.
    1. I have no modules installed.
    2. I have put just one app in denylist to demonstrate. Any app (all of them) in denylist will crash, so I can't use denylist at all :-( .
    3. Magisk 25.2 works just fine, I don't even need to hide apps to pass safetynet. No crashes at all for apps in denylist!
    Any ideas what's wrong ?
    1
    Tnx mate for the reply.
    1. I have no modules installed.
    2. I have put just one app in denylist to demonstrate. Any app (all of them) in denylist will crash, so I can't use denylist at all :-( .
    3. Magisk 5.2 works just fine, I don't even need to hide apps to pass safetynet. No crashes at all for apps in denylist!
    Any ideas what's wrong ?
    No, I have no idea.(other than what I answered earlier).
    And still no idea which app you tried in DenyList that it crashed

    Btw, if you want to access developers (and give them the logs), you will need to submit an Issue to Magisk GitHub
    1
    I'm confused by you Magisk versions... Old 5.2 and 6.1 don't even have denylist!... Not available till 24.0+...

    Have you tried up to date Magisk? 🤔 PW
    I ment 25.2, sorry mate you are correct.
    The one that crashes any app is 26.1.
    Cheers
    1
    I ment 25.2, sorry mate you are correct.
    The one that crashes any app is 26.1.
    Cheers
    Tried Canary?...

    Strange issue (may be fixed already though)...

    However denylist is not really for hiding, rather it's a development/testing tool...

    Suggest using a proper hiding solution like Shamiko; uses denylist as hidelist for convenience (with DenyList actually disabled)... Much better hiding (akin to/improved on MagiskHide) and doesn't break Zygisk modules that inject into apps in deny/hidelist...

    Personally I'd give Canary a shot first... You can't even make a GitHub issue without trying latest builds (nb. Canary release and Debug debug are synced builds)... PW
  • 8
    So as well as making it easier to keep root with an ota we can have the same firmware on the device one rooted and one not? So if magisk hide/safetynet/etc aren't working we can boot to the non rooted firmware to use wallet/banking apps etc and then boot back to rooted. Or is it a bit more complicated than that? Never had a pixel device before
    Others have already addressed your question, but for me, the biggest benefit here is to have a safety valve in place where your inactive slot is bootable (without first having to flash the firmware) in case you get into a hairy situation where your active slot becomes unbootable for whatever reason. May be useful in some situations.
    8
    Hello!
    How do you know?
    You must be an expert or something

    Nigerian-Meme.jpg 😜 PW
    7
    Yeah, if I want to run a custom kernel (Pixel 7) then I need to wipe. Should have sideloaded (not booted up), then gone into bootloader and run fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img to that slot. Once booted after sideload/flashing the firmware it's too late as it's enabled after booting. Don't think it matters if you do it before or after flashing the patched image, just as long as you do it before you boot up. Oh well, lol...

    Nothing to do with what we were testing, just custom kernel related. Seems to also help to avoid getting the red eio corrupt message when things may not go as expected.
    Thanks, I realize it is only needed for custom Kernel cases.
    I should add extracting vbmeta from payload.bin then in addition to boot.img / init_boot.img so that the step can be performed if the options are selected.
    6
    Update:

    On a Pixel 5 device, I managed to have both slots bootable.
    One slot rooted, and the other not, both on the same 2023-05 firmware.

    The process is as follows (which PF will support OOB in the next release)
    - Sideload full OTA
    - Reboot to bootloader
    - Flash patched image.
    - reboot to system (observe root)
    - Sideload full OTA
    - Reboot to System (no patching, observe no root)
    - Switch slot (observe root)

    With Pixel 5, one is able to make changes to boot after sideload but before reboot.
    It still needs to be tested if this works on Pixel 6, 7 * devices

    I find flashing full OTA is slower than flashing full factory, but the benefit of having both slots bootable is a big bonus.
    6
    I think it would be good to support, and I posted disambiguation due to some confusion above.

    Rather than being 'highly discouraged' (it's not; it's plum necessary 🤪) patching recovery partition is actually the only option for most A-only devices launched with Android 9 (legacy SAR, circa 2018, 2019) other than Xiaomi models!

    Hope you reconsider... 👍 PW
    Your wish is my command :)
    1684447283639.png

    1684447305575.png


    Although with one caveat,
    Yes I can tell if it is Ramdisk yes or no by running a script, but that requires unpacked Magisk, (for not rooted phone, I would need to unpack)
    And although it is true that PF eventually unpacks to create a patch, but within the workflow, that stage is much later, and that stage is dependent on choices a user makes in the above screen.

    Of course it could be worked out and workflow changed to automatically offer / not offer the choice.
    Considering that the target audience is really minute if at all existent, specially considering that the tool has Pixel in its name, and people who have Pixel phone don't need it, and people who need them wouldn't be looking to tools for Pixel Phones ... lol
    I decided the leave it up to the user the choice to have that option visible or not. (no auto detection)
    The tooltip on option suggests not to turn it on unless ...
    1684447779077.png


    I hope that should be enough.
  • 1094
    This is the place for general support and discussion regarding "Public Releases", which includes both stable and beta releases.
    All information, including troubleshoot guides and notes, are in the Announcement Thread
    156
    Hello, I haven't given much support on XDA lately. It can be resulted from
    • University started and I have limited free time. In fact, I mostly develop during midnight
    • I live in Taiwan, which has large time zone differences between my European/American contributors/testers, which usually forces me to stay up late at night to discuss/test stuffs.
    • The new version is about to come, I don't want to spend effort on supporting old releases
    The planned update is delayed again and again, to some point I think I'll shed some light about what has been happening lately, also along with some announcements.

    New Forum!
    As you might have already discovered, Magisk got its own subforum on XDA! Many thanks to all the support you gave me, and much more information/features/support is about to come!
    **For developers supporting all the devices that are not using standard Android boot format, feel free to create threads in this section (actually, PLEASE do so) for your favorite devices after v7 is out. As I currently know, Asus devices require signing the boot image before flashing, and is model dependant; Sony devices seems to use ELF kernel that is unpatchable, or some has two ramdisks (inner + outer), both requires different workarounds; LG bootloader locked devices has to manually "BUMP" the boot image after flashing Magisk..... and there may be lots of other crazy boot image formats that haven't come up to my attention yet.
    It is impossible for me to support all these non-standard boot images, and I hope the community can collaborate to make Magisk running across all the devices. Overall, community collaboration is what XDA about :D

    The Pixel Phone
    Some of you might already know this news, that the next Pixel Phone right around the corner seems like it does not have ramdisk in boot image, which pretty much wrecked Magisk in all ways. However, it pretty much doomed root itself too. Kernel modifications is inevitable IMO, so I'll try to migrate my scripts to C programs that could possibly be included into the kernel itself. Note that I'm not familiar with linux kernel, I'm not even sure if my idea and concept is correct or not. But once the device is available, I think developers will find a way to bypass all the difficulties, and I'll do my best to learn things ;)

    Current Progress
    In the past month, I've spent quite some time learning SELinux, so that I can avoid using SuperSU's sepolicy patches. Thanks to the helps and tips from @phhusson and @Chainfire, I finally have a much clearer understanding of how SELinux works. The Magisk core parts (the scripts, boot image patches, new features, more supports) are actually done some time ago. What is causing all the delays is the Magisk Manager.
    To be completely honest, although I can code in Java without much issues, Magisk Manager is actually my first Android application, I had to reach out for assistance, and fortunately awesome developers like @DVDandroid and @digitalhigh contributed a lot, which makes the current Manager awesome.
    After the repo system and module management is mostly done, I was about to do some adjustments and release, but what we really done is decided to add another feature: auto-unroot with per-app settings. I decided to wait for it to be finished, and then do my adjustments. Due to reasons that'll be mentioned later, this feature will likely not be available for the next release (should come in future updates)

    Safety Net Disaster
    Those who are using Magisk for Safety Net bypass purposes must have known that Google recently updated the detection method of my Systemless Xposed. I still have no idea what Safety Net is detecting, so currently I cannot fix it on my side (also because I'm busy working on the next update). However, suhide developed by @Chainfire is able to hide Xposed and worked fine.
    However, only my Systemless Xposed v86.2, which is based on SuperSU's su.d, is supported using that method. v86.2 and v86.5 (latest, Magisk based) have nearly identical binaries, and the only difference is the path where the binaries are stored.
    I'm still not sure what's the real issue for it not being supported, I just hope it is not done intentionally.

    Conclusion
    Due to the fact that my Safety Net bypass is not 100% perfect now, I do not want to spend any more time waiting for auto-unroot to be polished. What I'm doing now is finishing up all the things I'd like to change in Magisk Manager (it has been a while since I last contributed to Manager, my fellow developers are doing all the heavy job), which might take a little more time, after that, packed with tons of information to be announced in Magisk Section, I'll release the long awaited update.

    Hope this lengthy post gives you the idea of the whole situation, and again thanks for all your support!!
    121
    Ah, some Chainfire bashing, I hope it is not too late for me to exercise additional villainy.

    First, let me make clear I have nothing against @topjohnwu, nor against Magisk. Magisk is an interesting project and it certainly displays @topjohnwu ingenuity and persistence. I don't doubt we will see more interesting things from his hands.

    -------------------------

    What has happened here is not all that dark and complicated, from either end. I returned from holidays, and someone pointed me at Magisk. My first thought: interesting!

    Among other things, the thread lists some issues with SuperSU, which in combination with the phrase The developer also requests users to not bug Chainfire with compatibility requests for SuperSU with Magisk from the portal article, raised my left eyebrow by nigh half an inch. The popular systemless xposed mod is apparently now based on it, and apparently it now no longer works with SuperSU, and apparently I'm not supposed to fix that, nor any of the other found issues. I found that a bit weird. So yes, I have told @topjohnwu that I was a bit surprised he was posting about issues with SuperSU without notifying me about them (I can't fix or help fix issues I'm not aware of, after all).

    He's also spreading a modified version of the SuperSU package, which is not all that uncommon, nor necessarily a problem. I have not looked into what he modified, I only ran a few quick tests on one of my devices, and found some commonly used commands run as root to be broken. I have informed him of this as well.

    It appears the tool of choice for Magisk is phh's Superuser, because of some of the mentioned issues with SuperSU. That's fine by itself, but fixing issues in that superuser by incorporating SuperSU's binaries into it is a somewhat questionable practise. After all, SuperSU is a commercial closed-source package that helps pay for my dinner, and superuser is a direct competitor. I have informed him that I was surprised he did this without asking for permission. I have expressed similar surprise on him spreading a modified version of LiveBoot (which helps pay for a snack now and then).
    @topjohnwu has also stated that Magisk's scripts are largely influenced by mine (I have not checked). Scripts based on mine are used all over the place on XDA, some people have crafted amazing things based on them, I have never made an issue of this (otherwise I would have just made them binaries). But yes, I have also stated to him that I don't think it's very nice to base something on one program, and then using that to (almost exclusively) push something directly competing with that program.

    tl;dr Towards @topjohnwu, I have:
    - expressed surprise he has issues getting Magisk to work with SuperSU, and has chosen not to inform me about those
    - expressed surprise he is using SuperSU binaries in a competing superuser without permission
    - expressed surprise he is posting a modified LiveBoot without permission
    - informed him of issues with the modified SuperSU he has posted
    - let him know I thought it wasn't very nice to be applying my scripts to benefit seemingly exclusively that same competing superuser

    To be crystal clear:
    - I have not asked for an apology
    - I have not asked for Magisk to be abandoned, neither the root hiding nor systemless module parts, and certainly not systemless xposed
    - I have not made an issue of any of this anywhere, until this post
    - I have not even specifically asked for anything to be taken down (though obviously in my opinion the other superuser package mixed with SuperSU's binaries, as well as the LiveBoot package, should go)
    - I have not reported this thread to XDA moderators for copyright violations or otherwise

    While my conversation with @topjohnwu may not win any awards for being friendly (though it may win some for brevity), I think all things considered my response has been rather mild. To be perfectly honest, until the apology post, I thought this was over with already. I think the apology post was triggered because I haven't replied to his last PM for a while - I was in the zone, it happens.

    To emphasize again, I have nothing against @topjohnwu, Magisk, or systemless xposed, and it is certainly not my goal to see any of them go. If it can be made to work together with SuperSU, great.

    I get it though: you think of something, you want to see if you can make it work, you finally get it to work, you publish it, it takes off - enthusiasm gets the better of you. Maybe in the rush some mistakes are made. That doesn't mean you have to just drop it and run. None of my stuff would make it past 0.1 if I stopped at the first big mistake :)

    Aside from said being in the zone coding, I usually regret actually responding to these sort of things the day after, which has made me hesitant to reply. Surprise me.
    76
    Thread temporarily closed so everyone sees this.

    The flood of "SafetyNet isn't working for me either!" posts are not helpful, at all. Please refrain from posting further, it will be looked into. Please do not forget that not passing SafetyNet is 100% NORMAL AND INTENDED when you have an unlocked booloader or running custom firmware. These are workarounds and they will be worked around in turn.

    The Flash
    Forum Moderator

    EDIT: Thread is reopened... I will be cleaning any SafetyNet posts for a while to keep the thread clean for real issues.
    75
    Hello everyone!

    I am aware that Google has updated Safety Net that makes Magisk itself a no go for Android Pay. In fact, I witnessed the change live while I am developing the new magiskhide, which should hide all Magisk modules and Magisk installed root.

    Google is serious about Safety Net now, clearly hunting down all possibility to run Xposed with Safety Net passed. I spend quite some time examining the new security measures last midnight, and fortunately it seems that it is possible to run Magisk and root along with Safety Net if no Xposed is running. I'm glad I removed the old root toggle at the right time lol, that is no longer feasible with the latest detection.

    So stay tuned for the next update, it will come with bug fixes, along with the new magiskhide to bypass that Safety Net.

    Google, how will a few systemless mods do any harm :p:p