Linux 下 Compton 的安装与自启
一 安装前准备
二 发行版仓库安装
sudo apt update
sudo apt install compton
sudo dnf install compton
# 如为 CentOS/RHEL 且默认仓库无包,可先启用 EPEL:sudo dnf install epel-release
sudo pacman -S compton
安装完成后即可在 X11 会话中使用。若提示找不到包,请先更新索引或确认仓库配置。
三 从源码编译安装
sudo apt update
sudo apt install git cmake libx11-dev libxrandr-dev libxkbcommon-dev \
libxcb-xinerama0-dev libxcb-randr0-dev libxcb-shm0-dev \
libxcb-xinput-dev pkg-config
# 主分支(较新)
git clone https://github.com/chjj/compton.git
# 或采用社区维护分支(部分发行版打包用)
# git clone https://github.com/chcg/compton.git
cd compton
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j$(nproc)
sudo make install
compton --version
以上步骤在常见桌面环境(如 Openbox、i3)的 X11 会话中测试通过。
四 启动与开机自启
compton --config ~/.config/compton.conf
mkdir -p ~/.config/systemd/user
nano ~/.config/systemd/user/compton.service
[Unit]
Description=Compton Window Composer
After=graphical-session.target
[Service]
ExecStart=/usr/bin/compton --config %h/.config/compton.conf
Restart=always
Environment=DISPLAY=:0
[Install]
WantedBy=graphical-session.target
systemctl --user daemon-reload
systemctl --user enable --now compton
sudo nano /etc/systemd/system/compton.service
写入示例:[Unit]
Description=Compton Compositor
After=graphical.target
[Service]
ExecStart=/usr/bin/compton --config /etc/xdg/compton.conf
Restart=always
[Install]
WantedBy=multi-user.target
启用并启动:sudo systemctl daemon-reload
sudo systemctl enable --now compton
ps aux | grep compton
若使用桌面环境自带合成器(如 GNOME/KDE),可能需要先关闭其内置合成以避免冲突。
五 常见问题与提示
killall compton && compton --config ~/.config/compton.conf &
# 或使用 systemd:systemctl --user restart compton