在 CentOS 上使用 Compton 提升显示效果
一 适用场景与准备
echo $XDG_SESSION_TYPE。同时确保显卡驱动(如 NVIDIA/AMD/Intel)已正确安装,以获得更好的 OpenGL 加速效果。二 安装与基础配置
sudo yum install -y comptonsudo dnf install -y comptonmkdir -p ~/.config && nano ~/.config/compton.confbackend = "glx"
vsync = true
shadow = true
fade = true
unredirect = false
alpha-threshold = 0.05
[shadow]
shadow-radius = 12
shadow-offset-x = 1
shadow-offset-y = 1
shadow-opacity = 0.25
[fade]
in-scale = 0.9
out-scale = 0.9
[blur]
method = gaussian
size = 6
deviation = 3.0
shadow-exclude = [
"class_g = 'Conky'",
"class_g = 'Polybar'",
"_NET_WM_WINDOW_TYPE@:a = 'desktop'",
"_NET_WM_WINDOW_TYPE@:a = 'dock'",
"_NET_WM_WINDOW_TYPE@:a = 'tooltip'"
]
说明:
backend = "glx" 通常较 xrender 性能更好;vsync 可减少撕裂;shadow-exclude 用正则排除不需要阴影的窗口类型/程序。shadow-exclude 或 fade-exclude 中追加其 class_g/title 规则以排除。三 启动与自启
compton --config ~/.config/compton.confnano ~/.config/systemd/user/compton.service[Unit]
Description=Compton Window Composer
After=graphical-session.target
[Service]
Type=simple
ExecStart=/usr/bin/compton --config %h/.config/compton.conf
Restart=always
Environment=DISPLAY=:0
[Install]
WantedBy=default.target
systemctl --user daemon-reload
systemctl --user enable --now compton.service
/etc/systemd/system/compton.service,将 ExecStart 指向你的配置文件,并在 [Unit] 中使用 After=display-manager.service;随后 systemctl daemon-reload && systemctl enable --now compton。注意服务用户与权限设置,避免以 root 运行图形会话。四 性能优化与常见问题
backend = "glx"),必要时开启 DRI3 与 glx-no-stencil 以进一步降低开销(若出现渲染异常再逐项回退)。vsync = true、frame_rate = 30、shadow = false、blur { size = 0 },可显著减少 CPU/GPU 占用。xrandr --query 检查输出名(如 eDP-1/HDMI-1/DP-1),确保布局正确;Compton 会继承 Xrandr 的显示配置。vsync = true;若仍有撕裂,尝试切换 backend 或关闭/降低模糊与阴影。shadow-exclude/fade-exclude 中排除对应程序;必要时将 alpha-threshold 调高(如 0.1)。compton --config ~/.config/compton.conf 2> /tmp/compton.log 或 journalctl --user -u compton.service),逐项注释特效定位问题。frame_rate、关闭不必要的动画与透明层。