Compton与CentOS的集成方法
导读:Compton 与 CentOS 的集成方法 一 环境准备与前提 确认会话类型:Compton 是 X11 的窗口合成器,需在登录会话为 Xorg 时使用;在 Wayland 会话下不会生效。可在登录界面选择“GNOME on Xorg”...
Compton 与 CentOS 的集成方法
一 环境准备与前提
- 确认会话类型:Compton 是 X11 的窗口合成器,需在登录会话为 Xorg 时使用;在 Wayland 会话下不会生效。可在登录界面选择“GNOME on Xorg”或使用
echo $XDG_SESSION_TYPE检查当前会话类型。 - 更新系统与启用仓库:建议先执行
sudo yum update -y,必要时启用 EPEL 仓库(sudo yum install epel-release -y)以获得更多软件包。 - 显卡驱动:确保已安装并启用合适的 OpenGL 驱动(如 NVIDIA、AMD 或 Intel 的开源驱动),否则可能出现黑屏、撕裂或性能问题。
二 安装 Compton
- 仓库安装(优先):在部分 CentOS 版本中可直接安装
sudo yum install compton -y(或sudo dnf install compton -y)。
- 源码编译(仓库无包或需新特性时):
- 安装编译依赖:
sudo yum groupinstall "Development Tools" -y与sudo yum install -y mesa-libGL-devel mesa-libEGL-devel libX11-devel libXext-devel libXinerama-devel libXrandr-devel libXcursor-devel libXdamage-devel libXcomposite-devel。 - 获取源码并构建(以主流分支为例):
git clone https://github.com/Compton/Compton.gitcd Compton & & mkdir build & & cd buildcmake .. & & make -j$(nproc)sudo make install(默认安装到 /usr/local/bin/compton)。
- 安装编译依赖:
三 配置 Compton
- 配置文件位置:推荐放在用户目录 ~/.config/compton.conf;系统级可用 /etc/compton.conf。
- 基本示例(保存为 ~/.config/compton.conf):
- 设定后端为 glx,开启垂直同步与阴影,设置全局透明度与帧率:
backend = "glx"vsync = trueshadow = trueopacity = 0.95frame-rate = 60
- 多显示器与特定应用优化:
- 使用
xrandr --query检查输出名(如 HDMI-1、DP-1、eDP-1),按需扩展排列。 - 对性能敏感或存在渲染问题的应用(如浏览器)可排除阴影或固定不透明:
shadow-exclude = [ "class_g 'Firefox'", "class_g 'Chromium'" ]opacity-rule = [ "100:class_g 'Firefox'", "100:class_g 'Terminal'" ]
- 使用
- 设定后端为 glx,开启垂直同步与阴影,设置全局透明度与帧率:
- 应用配置:
- 手动启动:
compton --config ~/.config/compton.conf - 修改后重启:
killall compton & & compton --config ~/.config/compton.conf。
- 手动启动:
四 开机自启与系统集成
- 会话级自启(推荐):在桌面会话的“启动应用程序”中添加命令
compton --config ~/.config/compton.conf,随用户登录自动启动,避免与显示管理器冲突。 - Systemd 用户服务(可选):创建文件 ~/.config/systemd/user/compton.service
[Unit]Description=Compton Window ComposerAfter=graphical-session.target
[Service]ExecStart=/usr/local/bin/compton --config %h/.config/compton.confRestart=on-failure
[Install]WantedBy=default.target
- 启用:
systemctl --user daemon-reload & & systemctl --user enable --now compton.service
- Systemd 系统服务(不推荐与显示管理器并行):创建 /etc/systemd/system/compton.service
[Unit]Description=Compton Window ComposerAfter=display-manager.service
[Service]ExecStart=/usr/local/bin/compton --config /etc/compton.confRestart=on-failure
[Install]WantedBy=multi-user.target
- 启用:
sudo systemctl daemon-reload & & sudo systemctl enable --now compton.service
- 验证:
- 查看进程:
pgrep -x compton - 查看版本:
compton --version - 观察窗口阴影、透明度与撕裂情况,必要时调整
backend、vsync与排除规则。
- 查看进程:
五 常见问题与排错
- 会话不匹配:在 Wayland 下 Compton 不工作,请在登录界面切换到 GNOME on Xorg,或确认
echo $XDG_SESSION_TYPE输出为 x11。 - 黑屏或撕裂:优先尝试
backend = "glx"与vsync = true;若仍异常,可改用backend = "xrender"提升兼容性(性能可能下降)。 - 性能与卡顿:关闭阴影(
shadow = false)或减少透明与模糊效果;对特定应用使用shadow-exclude与opacity-rule降低合成开销。 - NVIDIA 专有驱动:确保已安装对应驱动与 32 位库(如需要),并使用
glx后端;如出现闪屏,可尝试关闭vsync或改用xrender。 - 找不到命令:若通过源码安装,确认二进制路径为 /usr/local/bin/compton,或在 systemd 单元中使用绝对路径。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Compton与CentOS的集成方法
本文地址: https://pptw.com/jishu/763597.html
