Waydroid (Android 16 + Kitsune Mask): daemon and system_server bridge OK (`vector-cli status` works) but no app process is ever injected — manager stays "Not activated"
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Sôi nổi
- Lĩnh vực
- mobile-dev, operating-systems
Hướng nghiên cứu
Start with org.matrix.vector.manager.ipc.DaemonClient.kt:39 and the code comments or entry points that select --late-inject and read the LATE_INJECT runtime flag. Reproduce the missing app-side injection on the stated Waydroid image, then determine whether a supported root/Zygisk stack or an explicit configuration path can make the manager binder available.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Environment
- Waydroid 1.6.3 on NixOS 26.05 (x86_64), image
WayDroid-ATV/waydroid-buildsa16-qpr0(LineageOS 23, Android 16 / SDK 36, mainline vendor) - Root: Kitsune Mask 26.3.1 / versionCode 26301 (
magisk -v→0fe46c5a-delta:MAGISK:R), built-in Zygisk (zygisk=1inmagisk.db) - Vector v2.2 (
Vector-v2.2-3080-Release.zip) installed withmagisk --install-module; managerorg.matrix.vector.managerinstalled withpm install(the same symptom was reproduced earlier with LSPosedv1.11.0-7209-zygisk-release.zip) ro.dalvik.vm.native.bridgeis not involved;libzygisk.sois present in zygote and in app processes
What works
The daemon and the system_server bridge are healthy — this is not a mangled manager/daemon setup:
I VectorDaemon : Vector daemon started: lateInject=false, proxy=serial
D VectorSystemServer: Registering bridge service for `system_server` with name `serial`.
I VectorNative(SS) : Got system server binder via serial on attempt 1.
I VectorNative(SS) : Manager binder from system_server: ...
I VectorDaemon : Successfully injected Vector framework into system_server.
I VectorDaemon : Successfully hooked Activity Supervisor for Manager redirection
I VectorZygiskBridge: onTransact: action=SEND_BINDER, callerUid=0
I VectorDaemon : Successfully injected Vector IPC binder for applications.
and, using the channel that does not depend on the app-side handoff:
$ waydroid shell -- sh /data/adb/modules/zygisk_vector/cli status
Framework Version: 2.2
Version Code: 3080
API Version: 102
Enabled Modules: 0
What fails
No app process is ever Zygisk-injected, so the manager can never obtain its binder:
W VectorManager: splash: no daemon binder after 2500ms, continuing unactivated
W VectorManager: java.lang.IllegalStateException: Daemon is not active
at org.matrix.vector.manager.ipc.DaemonClient$runIpc$2.invokeSuspend(DaemonClient.kt:39)
Evidence that it is the Zygisk layer, not Vector:
logcatafter launching apps contains noVectorNative/VectorZygiskBridgelines for any app (only the single system_server one above) — i.e. the module's Zygisk companion never runs in app processes./proc/<manager-pid>/mapscontains/system/lib64/libzygisk.sobut no Vector native library, i.e. Zygisk injects its loader, and the module payload is never entered.- The same is true for every other app (no injection, no module logs), regardless of scopes.
Why (as far as I could trace it on Waydroid)
Two stacked problems, both Waydroid-specific:
- Zygisk on Waydroid needs the Kitsune Mask canary (the community
waydroid_magisktool says so, and the "stable" Zygisk toggle is a no-op there). With the stable build above, the module companions simply never run in app processes. - The canary cannot be installed on these images: its
--setup-sbinstep aborts, e.g.
$ waydroid shell -- /system/etc/init/magisk/magisk64 --auto-selinux --setup-sbin /system/etc/init/magisk
clone_attr /sbin -> /root failed: No data available (os error 61)
rc=1
→ init: Could not start service 'magisk_late' ... Cannot find '/sbin/magisk'
(guest SELinux is Disabled; the old stable two-argument --setup-sbin <dir> <tmpdir> form still works, the canary's 1-argument Magisk 27 form does not; details in waydroid/waydroid#2433 — I filed it there since nitanmarcel/waydroid-magisk is archived).
- Vector's
--late-injectmode (proxy nameserial_vector, which would side-step exactly the kind of service-name collisions seen on Android 16) needs theLATE_INJECTruntime flag, which (per the code comments) comes from NeoZygisk — and NeoZygisk/ZygiskNext all require MagiskversionCode >= 26402, which is unreachable for the same reason (the canary is the only build above 26401 and it will not install).
Question
- Is Waydroid supported at all by Vector, and if so what root/Zygisk stack do you recommend for it? (My reading is that today it is "not really possible", but I would rather be told than guess.)
- Would you accept a change that lets
--late-injectbe forced without the NeoZygisk-provided runtime flag (e.g. via aconfig/db switch)? On Waydroid that flag is the only thing standing between the daemon and a working app-side channel, and the proxy nameserial_vectoravoids the collision entirely. - If the answer is "fix your Zygisk first": is "Zygisk companion never runs in app processes even though
libzygisk.sois mapped everywhere" a known Waydroid symptom, and is there any diagnostic you would like from this image? It is a throwaway VM, so I can iterate freely.
- Ngôn ngữ chính
- Kotlin
- Star
- 12.6k
- Fork
- 850
- Merge trung bình
- 20 phút
- Pull request đã merge (30 ngày)
- 1
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của JingMatrix/Vector
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 80/100
JingMatrix/Vector#999 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
JingMatrix/Vector#1000 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 42/100
JingMatrix/Vector#997 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
JingMatrix/Vector#996 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Modules not visibleĐang mởbug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 52/100
JingMatrix/Vector#991 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của JingMatrix/Vector
Issue tương tự
-
good first issue help wanted
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
Bookmarking an article that is already bookmarked under its redirect URL deletes both bookmarksCó thể đã có người làm @aakarshitv đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
kiwix/kiwix-android#5176 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[c7#258] fix(embedded): scheduled user task delivery runs on the service task worker executorĐang mởSource: c7 Type: bug
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
navikt/esyfo-narmesteleder#654 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
nonbili/meron#79 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày