在 CentOS 上优化 Compton(合成器 / compositor),核心目标是:更流畅的动画、更低延迟、更少资源占用、避免屏幕撕裂。下面按「安装 → 配置 → 优化 → 排错」系统说明。
Compton 通常用于:
检查是否已安装:
which compton
compton --version
CentOS 可能默认没有,需要 EPEL 或源码安装:
sudo yum install -y epel-release
sudo yum install -y compton
推荐配置文件:
~/.config/compton.conf
backend = "glx";
glx-no-stencil = true;
glx-copy-from-front = false;
vsync = "opengl-swc"; # 或 "opengl"
shadow = false;
fade = false;
如果你是桌面美观优先,可保留:
shadow = true;
shadow-radius = 12;
shadow-offset-x = -2;
shadow-offset-y = -2;
shadow-opacity = 0.4;
unredir-if-possible = true;
wintypes : {
fullscreen = { full-screen = true; };
movie = { full-screen = true; };
};
opacity-rule = [
"95:class_g = 'Firefox'",
"100:class_g = 'Code'"
];
backend = "glx";
❌ 避免:
backend = "xrender";
refresh-rate = 60;
或如果你知道刷新率:
refresh-rate = 144;
❌ 不建议:
compton &
✅ 推荐(带参数):
compton --config ~/.config/compton.conf -b
在 i3 中:
exec --no-startup-id compton --config ~/.config/compton.conf -b
backend = "xrender";
或关闭:
shadow = false;
vsync = "opengl-swc";
仍不行:
xrandr --output HDMI1 --set "TearFree" on
尝试官方维护分支:
picom
(Compton 已停止维护,Picom 是继任者)
backend = "glx";
vsync = "opengl-swc";
shadow = true;
fade = false;
unredir-if-possible = true;
glx-no-stencil = true;
如果你愿意,可以告诉我:
我可以直接给你一份可用配置。