如何调整Ubuntu中Compton的透明度
小樊
35
2025-11-20 17:17:35
Ubuntu 中 Compton 透明度调整指南
一 前置检查与安装
- 确认会话类型:Compton 仅适用于 X11。在 Wayland 会话下不会生效,可改用 xcompmgr 或其他支持 Wayland 的合成器。
- 安装 Compton(如未安装):
sudo apt update && sudo apt install compton
- 配置文件位置:优先使用用户级配置 ~/.config/compton.conf;系统级为 /etc/compton.conf(不推荐,权限与维护性较差)。
二 全局透明度设置
- 使用配置文件设置整体透明度(推荐):
- 创建或编辑配置文件:
mkdir -p ~/.config && nano ~/.config/compton.conf
- 写入示例(按需求调整数值):
backend = “glx”
inactive-opacity = 0.85 # 非激活窗口透明度(0.0~1.0)
active-opacity = 0.95 # 激活窗口透明度(0.0~1.0)
alpha-mode = “blend” # 透明度混合模式
alpha-max = 1.0 # 允许的最大不透明度
- 使配置生效:
compton --config ~/.config/compton.conf -b
- 使用命令行快速覆盖:
compton --config ~/.config/compton.conf --alpha 0.9 -b
说明:active-opacity 与 inactive-opacity 是最直观的全局开关;alpha-mode/alpha-max 用于细粒度控制透明混合与上限。
三 按程序或窗口设置透明度
- 通过 opacity-rule 精确匹配窗口类、名称或标题,语法为 “透明度:条件”:
opacity-rule = [
“90:class_g ‘Firefox’”, # 所有 Firefox 窗口 90% 不透明(即 10% 透明)
“95:name ‘Terminal’”, # 终端窗口 95% 不透明
“100:class_g ‘Xephyr’” # Xephyr 不透明
]
- 保存后重启 Compton 生效:
compton --config ~/.config/compton.conf -b
提示:class_g 匹配窗口类(更通用),name 匹配窗口标题,必要时可用其他匹配器实现“仅某程序某窗口”的精细化控制。
四 常见问题与排错
- 规则不生效或个别程序异常:尝试在规则中排除或强制不透明,例如将 dmenu 设为不透明:
opacity-rule = [ “100:class_g ‘dmenu’” ]
或使用 focus-exclude 排除特定覆盖层窗口:
focus-exclude = “x = 0 && y = 0 && override_redirect true”
- 合成器冲突:若同时运行 Compiz 等其他合成器,可能导致透明度异常,建议只保留一个合成器。
- 会话与驱动:确保在 X11 下运行;如使用 NVIDIA 显卡,优先安装官方驱动以减少渲染/透明异常:
sudo ubuntu-drivers autoinstall
- 使配置永久生效:在 i3 等窗口管理器中加入自启动:
exec_always compton -b
以上措施覆盖了最常见的冲突点与针对性排除方法。