在 Ubuntu 上使用 Compton 实现透明度的实用步骤
一 环境准备与安装
- 确认会话类型:Compton 仅适用于 X11。在登录界面选择 Ubuntu on Xorg,或在系统设置中切换到 Xorg 会话。若在 Wayland 下,Compton 不会生效。
- 安装 Compton:在终端执行
sudo apt update && sudo apt install compton
- 验证安装:compton --version 应输出版本号。
二 快速启用与全局透明度
- 生成配置文件:
mkdir -p ~/.config && nano ~/.config/compton.conf
- 最小可用配置(启用 ARGB 与淡入淡出,使用 GLX 后端):
backend = “glx”;
vsync = “opengl-swc”;
detect-client-opacity = true;
fading = true;
fade-delta = 4;
fade-in-step = 0.03;
fade-out-step = 0.03;
shadow-exclude = [“! name~=‘’”];
- 启动 Compton:
compton --config ~/.config/compton.conf -b
- 命令行临时覆盖透明度(示例:整体约 80% 不透明):
compton --config ~/.config/compton.conf -b --opacity 0.8
提示:数值为 0.0–1.0,越接近 0 越透明;也可用 -o 指定整体不透明度。
三 按应用设置窗口透明度
- 使用 opacity-rule 精确控制不同窗口(语法:透明度:匹配条件;90 表示 90% 不透明):
opacity-rule = [
“90:class_g ‘Firefox’”,
“95:name ‘Terminal’”,
“100:class_g ‘Xephyr’”
];
- 若某些弹出层/菜单需要强制不透明(如 dmenu),可排除:
focus-exclude = “x 0 && y 0 && override_redirect true”;
- 保存后重启 Compton 生效:
pkill compton && compton --config ~/.config/compton.conf -b
四 常见问题与优化
- 桌面环境冲突:在 GNOME 等自带合成器的桌面中,需先关闭其内置合成(如“外观/窗口/特效”中的相关选项),避免与 Compton 冲突。
- 性能与渲染:优先使用 backend = “glx”;若出现卡顿,可降低 frame-rate(如 60);确保显卡驱动支持 OpenGL/GLX。
- 阴影与特定程序:部分程序(如通知、Dock、输入法浮层)可能出现阴影或渲染异常,可用 shadow-exclude 精细排除。
- 开机自启:
- i3:在 ~/.config/i3/config 中加入
exec_always compton -b
- 通用:添加到“启动应用程序”,或参考创建 systemd 用户服务的方式随会话启动。