温馨提示×

如何自定义centos compton主题

小樊
44
2025-12-07 20:16:17
栏目: 智能运维

在 CentOS 上自定义 Compton 的“主题”

CentOS 上,Compton 的“主题”主要通过配置文件定义窗口的阴影、模糊、透明度、淡入淡出以及后端渲染等效果。Compton 本身不管理GTK/图标主题,颜色与图标需配合 **GTK 主题(如 Arc、Numix)**与窗口管理器主题共同调整,以获得一致的观感。

安装与准备

  • 安装 Compton(若仓库未提供,可考虑使用较新的替代实现如 picom):
    • CentOS 7/8(EPEL):sudo yum install compton
    • CentOS Stream 8/9:sudo dnf install compton
  • 准备配置目录与文件:mkdir -p ~/.config && nano ~/.config/compton.conf
  • 选择渲染后端:优先 glx(性能与效果更佳);如无 OpenGL 支持,可退回 xrender
  • 建议同时准备一套 GTK 主题(如 Arc/Numix)以统一窗口装饰与控件颜色,使 Compton 效果与之匹配。

配置文件结构与关键选项

  • 全局开关
    • backend = “glx” 或 “xrender”
    • vsync = true/false(减少撕裂)
    • shadow = true/false(窗口阴影)
    • fade = true/false(淡入淡出)
    • opacity = 0.0–1.0(全局不透明度,0 为全透明,1 为不透明)
    • ignore_root = true(忽略根窗口透明度,部分桌面环境需要)
  • 阴影细节(示例值可按需微调)
    • shadow-radius = 4
    • shadow-offset-x = 2
    • shadow-offset-y = 2
    • shadow-opacity = 0.3
  • 模糊(背景/区域)
    • blur-background = true
    • [blur]
      • method = gaussian
      • size = 10
      • deviation = 5.0
  • 窗口规则(按类/名称设置不透明度或排除阴影)
    • [opacity-rule]
      • “90:class_g ‘Firefox’”
      • “95:name ‘Terminal’”
    • shadow-exclude = [ “class_g = ‘gnome-terminal’”, “class_g = ‘konsole’” ]
  • 备注
    • 配置文件为 INI 格式,注意层级与逗号、引号等语法细节。

应用与开机自启

  • 手动重启 Compton(当前会话生效)
    • killall compton && compton --config ~/.config/compton.conf &
  • 使用 systemd 用户服务(登录即启动,推荐)
    • 创建服务文件:nano ~/.config/systemd/user/compton.service
    • 写入示例:
      • [Unit]
        • Description=Compton Compositor
        • After=graphical-session.target
      • [Service]
        • ExecStart=/usr/bin/compton --config %h/.config/compton.conf
        • Restart=always
      • [Install]
        • WantedBy=default.target
    • 启用并启动:
      • systemctl --user daemon-reload
      • systemctl --user enable --now compton.service
  • 若使用系统级服务(全用户/多会话),可将服务文件置于 /etc/systemd/system/compton.service 并以 root 管理(不推荐与用户会话混用)。

主题化与性能建议

  • 主题化思路
    • Compton 负责“效果层”(阴影、模糊、透明度);GTK/图标主题决定“控件与图标层”。两者配合才能实现统一风格。
    • 选择深色/浅色 GTK 主题后,再微调 Compton 的 opacity/blurshadow-opacity,避免文字可读性与层次感下降。
  • 性能与稳定性
    • 优先使用 glx 后端;如遇撕裂可开启 vsync,若出现卡顿可尝试关闭或改用 xrender
    • 谨慎使用大半径模糊与高透明度;对已知性能开销大的应用(如视频播放器、重载浏览器标签)可通过 shadow-exclude/opacity-rule 降低效果强度。

0