插件窝 干货文章 如何在Linux系统中启用Compton

如何在Linux系统中启用Compton

Compton true shadow 启动 886    来源:    2025-05-06

在Linux系统中启用Compton

Compton是一个轻量级的X11合成窗口管理器,可以提供窗口透明、阴影、淡入淡出等视觉效果。以下是在Linux系统中启用Compton的步骤:

1. 安装Compton

对于基于Debian/Ubuntu的系统:

sudo apt install compton

对于基于Arch的系统:

sudo pacman -S compton

对于基于Fedora的系统:

sudo dnf install compton

2. 基本启用方式

临时启动(测试用):

compton -b

-b参数表示在后台运行

永久启用(添加到启动项):

方法1:添加到.xinitrc(如果你使用startx启动)

编辑~/.xinitrc文件,在启动窗口管理器/桌面环境之前添加:

compton -b &

方法2:添加到自动启动(大多数桌面环境)

  • GNOME/KDE/Xfce等桌面环境通常有"自动启动程序"的设置界面
  • 添加一个新条目,命令填写compton -b

方法3:systemd用户服务(推荐方式)

  1. 创建服务文件:
mkdir -p ~/.config/systemd/user/
nano ~/.config/systemd/user/compton.service
  1. 添加以下内容:
[Unit]
Description=Compton compositor
After=display-manager.service

[Service]
ExecStart=/usr/bin/compton -b
Restart=always
RestartSec=3

[Install]
WantedBy=default.target
  1. 启用并启动服务:
systemctl --user enable compton.service
systemctl --user start compton.service

3. 常用配置选项

创建配置文件:

nano ~/.config/compton.conf

示例配置内容:

# 阴影效果
shadow = true;
no-dock-shadow = true;
no-dnd-shadow = true;
clear-shadow = true;
shadow-radius = 7;
shadow-offset-x = -7;
shadow-offset-y = -7;
shadow-opacity = 0.7;
shadow-exclude = [
    "name = 'Notification'",
    "class_g = 'Conky'",
    "class_g ?= 'Notify-osd'",
    "class_g = 'Cairo-clock'",
    "_GTK_FRAME_EXTENTS@:c"
];

# 淡入淡出效果
fading = true;
fade-delta = 4;
fade-in-step = 0.03;
fade-out-step = 0.03;
fade-exclude = [ ];

# 透明度
inactive-opacity = 0.8;
frame-opacity = 0.7;
inactive-opacity-override = false;
active-opacity = 1.0;

# 其他选项
backend = "glx";
vsync = true;
mark-wmwin-focused = true;
mark-ovredir-focused = true;
detect-rounded-corners = true;
detect-client-opacity = true;
refresh-rate = 0;
use-ewmh-active-win = true;
unredir-if-possible = true;
focus-exclude = [ "class_g = 'Cairo-clock'" ];
detect-transient = true;
detect-client-leader = true;

使用配置文件启动:

compton --config ~/.config/compton.conf -b

4. 故障排除

  1. 黑屏或闪烁问题

    • 尝试不同的后端:--backend glx--backend xrender
    • 禁用vsync:--vsync false
  2. 性能问题

    • 减少阴影效果参数
    • 排除某些应用程序的合成效果
  3. 检查是否运行

    pgrep compton
    
  4. 停止Compton

    pkill compton
    

5. 高级选项

  • 针对NVIDIA显卡用户可能需要添加:

    glx-no-stencil = true;
    glx-no-rebind-pixmap = true;
    
  • 针对Intel显卡用户:

    backend = "xrender";
    

通过以上步骤,你应该能够成功在Linux系统中启用并配置Compton合成器,获得更好的视觉效果。