在 Debian 中切换 Compton 与其他合成器的实用步骤
一、前置说明
- 合成器仅适用于 X11 会话;在 Wayland 会话中无法使用 Compton/Picom/xcompmgr。请先确认会话类型(例如登录界面齿轮图标处可见)。
- 同一时间只能有一个合成器在运行,切换时务必先停止当前合成器,再启动目标合成器。
二、快速切换步骤
- 查看与结束当前合成器
- 查看进程:
- 命令:ps aux | egrep ‘compton|picom|xcompmgr’
- 结束进程(按实际运行的进程选择其一):
- 命令:killall compton 或 killall picom 或 killall xcompmgr
- 启动目标合成器
- 启动 Compton(可指定配置):compton --config ~/.config/compton.conf
- 启动 Picom(可指定配置):picom --config ~/.config/picom.conf
- 启动 xcompmgr(示例参数):xcompmgr -c -br -o 0.5 -i 0.05 -t -l -r 4:0.0 -fs -n
- 一键切换脚本示例
- 示例(切换到 picom):
- 命令:killall compton 2>/dev/null; killall xcompmgr 2>/dev/null; picom --config ~/.config/picom.conf &
- 将对应命令中的合成器名称替换为目标即可完成切换。
三、设置开机自启
- 图形会话自启(推荐)
- 将启动命令加入桌面会话的自动启动:
- GNOME:在 ~/.config/autostart/ 创建 .desktop 文件,Exec= 指向你的合成器启动命令。
- Xfce:设置 → 会话和启动 → 应用程序自启动,添加命令。
- i3/Sway:在配置文件的 exec 段添加启动命令(Sway 为 Wayland,不适用 X11 合成器)。
- 系统级自启(可选,适用于纯 X11 环境)
- 创建 systemd 用户服务(仅用户会话):
- 文件:~/.config/systemd/user/compton.service
- 内容:
- [Unit]
- Description=Compton Compositor
- After=graphical-session.target
- [Service]
- ExecStart=/usr/bin/compton --config /home/你的用户名/.config/compton.conf
- Restart=always
- [Install]
- WantedBy=graphical-session.target
- 启用:systemctl --user daemon-reload && systemctl --user enable --now compton.service
- 说明:不建议使用系统级 systemd 服务(/etc/systemd/…)管理图形会话合成器,容易与登录会话生命周期不一致。
四、常见问题与排查
- 切换后无效果或黑屏
- 先切回 TTY(Ctrl+Alt+F2),结束合成器进程,再回到图形会话;检查配置文件语法与路径是否正确。
- 与某些应用冲突(如屏幕录制、游戏、输入法)
- 调整合成器配置(例如关闭阴影、排除特定窗口类),或临时关闭合成器以验证问题来源;必要时改用 xcompmgr 等替代方案以测试兼容性。
- 性能与撕裂
- 合成器会引入一定开销;游戏时可临时关闭合成器,或在显卡驱动层启用同步(如 NVIDIA 的 ForceFullCompositionPipeline、Intel 的 TearFree)以减轻撕裂与延迟。