chore(xlings): 2026.8.10.4 - #597
Merged
Merged
Conversation
The loader tag now has one owner. elfpatch (libxpkg 0.0.57) stamps DT_RPATH on executables instead of DT_RUNPATH, and closure_check gains rule E to say so at install time on the user's machine when a payload arrives with the old tag. DT_RUNPATH is consulted only for the object carrying it; DT_RPATH is consulted for every dlopen anywhere in the process. A GL program reaches its driver through three levels of dlopen, so the tag — not the path — decided whether it rendered on the GPU. Of 73 installed executables on a real home, 1 carried DT_RPATH and 55 of the other 68 already carried the correct path. Also: `subos info` reports host driver drift (the detector existed as `xlings-gl-doctor` and lacked a channel), and `subos use --sandbox` without `--gpu` says the sandbox exposes no GPU — under three conditions, so it can only fire where acting on it changes the outcome. All THREE platform sections, verified by PARSING rather than reading the diff: linux latest=2026.8.10.4 arch=[aarch64,x86_64] macosx latest=2026.8.10.4 arch=[aarch64] windows latest=2026.8.10.4 arch=[x86_64] Hashes taken from the assets in xlings-res — what `XLINGS_RES` actually resolves to — not from the upstream release they were mirrored from. CN mirror uploaded from a local shell and verified by SIZE on all four platforms; before the upload all four returned 127 bytes, so the status code would have said 200 for assets that were not there. Upstream: openxlings/xlings#536, openxlings/libxpkg#41, mcpplibs/mcpp-index#202
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
加载器标签现在有唯一的所有者。
elfpatch(libxpkg 0.0.57)给可执行文件打 DT_RPATH 而不是 DT_RUNPATH, 新增 rule E —— 当载荷带着旧标签到达时,在用户机器上、安装时说出来。
DT_RUNPATH 只对携带它的对象生效;DT_RPATH 对进程内任意深度的 dlopen 都生效。GL 程序要穿三层 dlopen 才够到驱动,所以决定它在不在 GPU 上渲染的是标签,不是路径。真机 73 个已安装可执行文件里 1 个 DT_RPATH,而另外 68 个里有 55 个路径本来就是对的。
另有两项可观测性:
subos info报宿主驱动漂移(检测器早就存在,缺的是通道),subos use --sandbox不带--gpu时说明沙箱没有 GPU —— 三个条件,只在采取行动能改变结果时才响。三个平台段全部 bump,用解析验证而非看 diff:
哈希取自 xlings-res 上的文件(
XLINGS_RES实际解析到的地方),不是它镜像自的上游 release。CN 镜像本地上传并按大小四平台核对通过 —— 上传前四个都返回 127 字节,所以只看状态码会对不存在的资源报 200。
上游:openxlings/xlings#536、openxlings/libxpkg#41、mcpplibs/mcpp-index#202