Linux Compton 配置同步方案
一、同步思路与准备
二、推荐做法 软链接 + 本地覆盖
mkdir -p ~/.dotfiles/compton
cp ~/.config/compton.conf ~/.dotfiles/compton/compton.conf
mkdir -p ~/.config
ln -sf ~/.dotfiles/compton/compton.conf ~/.config/compton.conf
mkdir -p ~/.config/compton.d
# 本地仅放需要差异化的键值,例如:
cat > ~/.config/compton.d/local.conf <<'EOF'
backend = "glx"
vsync = true
shadow-exclude = [ "name='Conky'" ]
EOF
# ~/.dotfiles/compton/compton.conf 末尾追加
include ~/.config/compton.d/*.conf
三、按会话与显示管理器的启动同步
[Unit]
Description=Compton Window Compositor
After=graphical-session.target
[Service]
Type=simple
ExecStart=/usr/bin/compton --config %h/.config/compton.conf --log-file /tmp/compton.log
Restart=on-failure
Environment=XDG_RUNTIME_DIR=%t
[Install]
WantedBy=graphical-session.target
systemctl --user daemon-reload
systemctl --user enable --now compton.service
sudo systemctl daemon-reload
sudo systemctl enable --now compton.service
compton --config ~/.config/compton.conf &
四、批量分发与变更管理
git pull && ln -sf ... 更新;必要时用 Git 子模块 管理特定机器配置片段。mv 覆盖目标;变更后通过 systemctl --user restart compton 或 killall compton && compton ... & 重启生效。五、验证与常见问题处理
pgrep -x compton || echo "Compton not running"
compton --version
# 查看日志
tail -n50 /tmp/compton.log
# systemd 用户级
systemctl --user restart compton.service
# 或手动
killall compton && compton --config ~/.config/compton.conf &