[ Technical exchange] 【DDE独占问题】treeland环境下部分原生Wayland应用启动失败解决 Resolved
Tofloor
poster avatar
mozixun
Moderator
2026-06-07 10:31
Author

如果你使用Master分支的treeland或者我提前合并了PR的treeland: https://gitee.com/LFRon/treeland-fix-mirror

那么你可能会遇到玲珑版MoeKoe Music/Brave浏览器无法打开 (或者一直卡在应用启动首屏) 的情况, 这个是treeland在最近Master分支将wayland socket从wayland-0改为了treeland.socket, 但是玲珑并没正确bind进容器内导致的

现在有两个临时解决办法:

  1. 用OCI标准配置将treeland.socket bind进容器
  2. 创建一个wayland-0的软链接指向treeland.socket, 也就是 sudo ln -s /run/user/1000/treeland.socket /run/user/1000/wayland-0
Reply Favorite View the author
All Replies
avatar
chmod700
deepin
2026-06-07 11:38
#1

这个软件的路径中有空格,/opt/Moekoe music,其实可以建议原作者把空格换成“-”符号

Reply View the author
avatar
mozixun
Moderator
2026-06-07 15:40
#2
chmod700

这个软件的路径中有空格,/opt/Moekoe music,其实可以建议原作者把空格换成“-”符号

好的,我帮你去问一下作者改不改

Reply View the author
avatar
mozixun
Moderator
2026-06-07 15:41
#3
mozixun

好的,我帮你去问一下作者改不改

有人反馈了:

image.png

Reply View the author
avatar
会飞的鱼11
deepin
Community Developer
2026-06-08 16:36
#4

应该不是玲珑socket bind的问题,玲珑针对wayland socket的bind逻辑如下:
https://github.com/OpenAtom-Linyaps/linyaps/blob/c99f0a49f90875850ed5b1127d7d2a52b37f57db/libs/oci-cfg-generators/src/linglong/oci-cfg-generators/container_cfg_builder.cpp#L1222, 会将宿主的 /run/user/1000/treeland.socket bind 到容器的 /run/user/1000/wayland-0 ,同时也会设置WAYLAND_DISPLAY=/run/user/1000/wayland-0

Reply View the author
avatar
mozixun
Moderator
2026-06-08 16:44
#5
会飞的鱼11

应该不是玲珑socket bind的问题,玲珑针对wayland socket的bind逻辑如下:
https://github.com/OpenAtom-Linyaps/linyaps/blob/c99f0a49f90875850ed5b1127d7d2a52b37f57db/libs/oci-cfg-generators/src/linglong/oci-cfg-generators/container_cfg_builder.cpp#L1222, 会将宿主的 /run/user/1000/treeland.socket bind 到容器的 /run/user/1000/wayland-0 ,同时也会设置WAYLAND_DISPLAY=/run/user/1000/wayland-0

的确,我排查下是我提前合并treeland PR导致的问题,我使用master分支的treeland就好了

Reply View the author