Ubuntu 下 Compton 设置透明度
一 安装与准备
- 在 Ubuntu/X11 环境下安装 Compton:sudo apt update && sudo apt install compton。若使用 Wayland 会话,Compton 无法工作,应改用 xcompmgr 或桌面原生的合成器。为避免冲突,使用 GNOME/KDE 等自带合成器的桌面环境时,建议先关闭其内置合成功能。
二 配置文件的推荐做法
- 生成配置文件:mkdir -p ~/.config && nano ~/.config/compton.conf。
- 使用 opacity-rule 精确控制不同窗口的透明度(示例将 Firefox 与名称为 Terminal 的窗口设为 90% 不透明度,Xephyr 保持 100% 不透明):
opacity-rule = [
"90:class_g 'Firefox'",
"90:name 'Terminal'",
"100:class_g 'Xephyr'"
];
- 排除特定窗口(如位于左上角且为覆盖重定向的 dmenu,保持不透明):focus-exclude = “x 0 && y 0 && override_redirect true”;
- 选择渲染后端(多数环境用 glx 性能更好):backend = “glx”;
- 应用配置:compton --config ~/.config/compton.conf(或 compton -b --config ~/.config/compton.conf 后台运行)。
三 命令行快速设置
- 后台启动并加载配置:compton -b --config ~/.config/compton.conf。
- 直接在命令行设置全局透明度(示例为 50%):compton -b -r 0.5 -i 0.8(其中 -r 0.5 为全局透明度,-i 0.8 为聚焦窗口透明度;注意这类参数与配置文件中的规则可能叠加或冲突,建议二选一便于调试)。
四 常见问题与排查
- 会话限制:Wayland 不支持 Compton,请切换到 Xorg 或使用 xcompmgr。
- 合成器冲突:GNOME/KDE 等自带合成器可能与 Compton 冲突,需关闭其内置合成后再启用 Compton。
- 生效方式:修改配置后需重启 Compton(或注销/重启会话)以应用新规则。
- 性能与兼容性:若出现异常,可尝试切换 backend(glx/xrender)、降低 frame-rate、或关闭 shadow 进行排查。