Compton是Linux下一个轻量级的X11合成窗口管理器,能够显著改善桌面视觉效果和性能。以下是我在使用Compton过程中的一些心得和配置建议。
sudo apt install compton
sudo pacman -S compton
sudo dnf install compton
创建配置文件 ~/.config/compton.conf
:
# 基本设置
backend = "glx";
paint-on-overlay = true;
glx-no-stencil = true;
glx-no-rebind-pixmap = true;
# 阴影效果
shadow = true;
shadow-radius = 12;
shadow-offset-x = -5;
shadow-offset-y = -5;
shadow-opacity = 0.5;
# 淡入淡出效果
fading = true;
fade-delta = 5;
fade-in-step = 0.03;
fade-out-step = 0.03;
# 窗口透明度
inactive-opacity = 0.8;
active-opacity = 1.0;
frame-opacity = 0.7;
inactive-opacity-override = false;
# 性能优化
vsync = "opengl-swc";
detect-rounded-corners = true;
detect-client-opacity = true;
Intel集成显卡:
backend = "glx";
glx-no-stencil = true;
glx-copy-from-front = false;
NVIDIA显卡:
backend = "glx";
glx-no-stencil = true;
glx-swap-method = "exchange";
可以为特定应用程序设置特殊规则:
# 为Firefox禁用阴影
wintypes:
{
tooltip = { fade = true; shadow = false; opacity = 0.9; focus = true; };
dock = { shadow = false; };
dnd = { shadow = false; };
popup_menu = { opacity = 0.9; };
dropdown_menu = { opacity = 0.9; };
};
# 高质量模式
glx-use-copysubbuffermesa = true;
xrender-sync = true;
xrender-sync-fence = true;
# 性能优先模式
unredir-if-possible = true;
unredir-if-possible-delay = 5000;
compton --config ~/.config/compton.conf -b
对于i3wm等窗口管理器,可以在配置文件中添加:
exec --no-startup-id compton --config ~/.config/compton.conf -b
屏幕闪烁问题:
vsync = "opengl";
glx-swap-method = "exchange";
性能低下: 尝试更换backend:
backend = "xrender";
特定应用显示异常: 添加排除规则:
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'"
];
以下是我经过多次调整后的优化配置:
backend = "glx";
paint-on-overlay = true;
glx-no-stencil = true;
glx-no-rebind-pixmap = true;
vsync = "opengl-swc";
shadow = true;
shadow-radius = 12;
shadow-offset-x = -5;
shadow-offset-y = -5;
shadow-opacity = 0.5;
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'"
];
fading = true;
fade-delta = 5;
fade-in-step = 0.03;
fade-out-step = 0.03;
fade-exclude = [ ];
inactive-opacity = 0.8;
active-opacity = 1.0;
frame-opacity = 0.7;
inactive-opacity-override = false;
opacity-rule = [
"90:class_g = 'Alacritty'",
"85:class_g = 'Code'"
];
wintypes:
{
tooltip = { fade = true; shadow = false; opacity = 0.9; focus = true; };
dock = { shadow = false; };
dnd = { shadow = false; };
popup_menu = { opacity = 0.9; };
dropdown_menu = { opacity = 0.9; };
};
Compton能够显著提升Linux桌面的视觉体验,通过合理的配置可以在美观和性能之间取得平衡。建议从基础配置开始,根据实际使用情况逐步调整参数。不同的硬件和桌面环境可能需要不同的优化策略,多尝试才能找到最适合自己系统的配置。