背景:最近尝试在GXDE OS 25上做一些Wayland支持的适配工作,发现适配KWin6的话总会有KF6依赖和系统的KF5冲突导致卸载一堆系统包的情况,最近决定尝试一下Deepin新出的Treeland合成器。
控制中心(gxde-control-center)不工作,且出现的位置好奇怪
gxde-control-center
Dock不显示
DTK模糊(包括 DTK2,DTK5以及)不生效
DTK2
DTK5
圆角设置失效
GXDE截图录屏预计不工作(翻阅源码时发现其在 Wayland会话下使用 KWAYLAND)
Wayland
KWAYLAND
(注意:桌面体验不包含那根顶栏,这是我为了代替不工作的Dock自己写的)
WLR_RENDERER=pixman required: virgl dmabuf import fails
image://dtk.shadow provider fails
Original treeland.desktop (Hidden=true, Exec=/usr/bin/dde-session) broken
dde-session
⚠️ 注意:使用 apt安装这些依赖时候不建议使用 apt install -y,建议仔细检查 apt的「将要安装」与「将要卸载」部分,仔细检查这期间会不会有GXDE系统的包或者其他包由于冲突被卸载!!
apt
apt install -y
$ sudo apt install treeland
为了修复包括但不限于 DTK6 QML module (org.deepin.dtk) | module not installed, WindowMenu create fail, abort、QML chain broken: ButtonPanel -> CicleSpreadAnimation -> OpacityMask -> SoftwareOpacityMask等错误,需要至少安装至少如下两个包:
DTK6 QML module (org.deepin.dtk) | module not installed, WindowMenu create fail, abort
QML chain broken: ButtonPanel -> CicleSpreadAnimation -> OpacityMask -> SoftwareOpacityMask
$ sudo apt install libdtk6declarative qml6-module-qt5compat-graphicaleffects
以下提供了两个我写好的Session,选择需要的写入即可(当然也可以选择两个都写入)。
ℹ️ 注意: 写入完session需要重启 LightDM才能在登录界面看到新会话,以下是重启LightDM的指令: # 在TTY下执行 sudo systemctl restart lightdm 如果没有其他文件要保存了、也没有其他用户使用的情况下亦可以重启整台电脑。
ℹ️ 注意: 写入完session需要重启 LightDM才能在登录界面看到新会话,以下是重启LightDM的指令:
LightDM
# 在TTY下执行 sudo systemctl restart lightdm
如果没有其他文件要保存了、也没有其他用户使用的情况下亦可以重启整台电脑。
如果当前是实体机:
#!/bin/bash export XDG_SESSION_TYPE=wayland export TREELAND_RUN_MODE=user export XDG_SESSION_DESKTOP=Treeland exec /usr/bin/treeland.sh "$@"
如果当前是QEMU/KVM虚拟机:
#!/bin/bash export XDG_SESSION_TYPE=wayland export TREELAND_RUN_MODE=user export XDG_SESSION_DESKTOP=Treeland export WLR_RENDERER=pixman # virgl的dmabuf在上面似乎有点问题,用软渲染,性能这一块嘛... exec /usr/bin/treeland.sh "$@"
您需要将其保存为:/usr/share/wayland-sessions/treeland-plain.desktop。下一次便可以选择 treeland-plain会话进入。
/usr/share/wayland-sessions/treeland-plain.desktop
treeland-plain
#!/bin/bash export XDG_SESSION_TYPE=wayland export TREELAND_RUN_MODE=user export XDG_SESSION_DESKTOP=Treeland export DTK2_XWAYLAND=dxcb exec /usr/bin/treeland.sh -r /usr/bin/startdde "$@"
#!/bin/bash export XDG_SESSION_TYPE=wayland export TREELAND_RUN_MODE=user export XDG_SESSION_DESKTOP=Treeland export WLR_RENDERER=pixman # virgl的dmabuf在上面似乎有点问题,用软渲染,性能这一块嘛... export DTK2_XWAYLAND=dxcb exec /usr/bin/treeland.sh -r /usr/bin/startdde "$@"
您需要将其保存为:/usr/share/wayland-sessions/gxde-treeland.desktop。下一次便可以选择 gxde-treeland会话进入。
/usr/share/wayland-sessions/gxde-treeland.desktop
gxde-treeland
--help
-r, --run
--exit-with-session
--lockscreen
DDM auth socket
--try-exec
--enable-debug-view
treeland目前的实现不成熟, 试一下用Niri/Hyprland作为渲染后端运行情况如何?
Featured Collection
Popular Ranking
Popular Events
在GXDE上使用Treeland作为Wayland WM并引导桌面启动
背景:最近尝试在GXDE OS 25上做一些Wayland支持的适配工作,发现适配KWin6的话总会有KF6依赖和系统的KF5冲突导致卸载一堆系统包的情况,最近决定尝试一下Deepin新出的Treeland合成器。
当前已知问题
用户体验相关
控制中心(
gxde-control-center)不工作,且出现的位置好奇怪Dock不显示
DTK模糊(包括
DTK2,DTK5以及)不生效圆角设置失效
GXDE截图录屏预计不工作(翻阅源码时发现其在
Wayland会话下使用KWAYLAND)(注意:桌面体验不包含那根顶栏,这是我为了代替不工作的Dock自己写的)
后端相关
WLR_RENDERER=pixman required: virgl dmabuf import fails:不得不使用软件渲染,性能表现降级。image://dtk.shadow provider fails:似乎是窗体阴影问题,不算fatal。Original treeland.desktop (Hidden=true, Exec=/usr/bin/dde-session) broken:似乎是由于dde-session未安装。依赖安装
安装Treeland本体
安装Treeland的依赖
为了修复包括但不限于
DTK6 QML module (org.deepin.dtk) | module not installed, WindowMenu create fail, abort、QML chain broken: ButtonPanel -> CicleSpreadAnimation -> OpacityMask -> SoftwareOpacityMask等错误,需要至少安装至少如下两个包:编写Treeland会话文件
以下提供了两个我写好的Session,选择需要的写入即可(当然也可以选择两个都写入)。
选项一:纯 Treeland会话
如果当前是实体机:
如果当前是QEMU/KVM虚拟机:
您需要将其保存为:
/usr/share/wayland-sessions/treeland-plain.desktop。下一次便可以选择treeland-plain会话进入。选项二:Treeland + GXDE 桌面
如果当前是实体机:
如果当前是QEMU/KVM虚拟机:
您需要将其保存为:
/usr/share/wayland-sessions/gxde-treeland.desktop。下一次便可以选择gxde-treeland会话进入。部分Treeland的指令选项
--help: 打印帮助。-r, --run: 运行子进程,有点类似KWin的--exit-with-session。--lockscreen: 锁屏模式,需要DDM auth socket。--try-exec: 仅测试,不在屏幕显示。--enable-debug-view: 开启调试View。