Debian 包管理器触发器 dpkg-trigger 配置指南
一 概念与适用场景
二 配置步骤
interest /usr/share/icons/hicolor
interest /usr/share/mime
activate /usr/share/glib-2.0/schemas
#!/bin/sh
set -e
# 声明本包关心的触发器(也可在 DEBIAN/triggers 中声明)
dpkg-trigger --by-package="your-pkg" interest /usr/share/icons/hicolor
dpkg-trigger --by-package="your-pkg" interest /usr/share/mime
# 示例:当被通知到 mime 数据库变更时,刷新 mime 数据库
if dpkg-trigger --check-supported 2>/dev/null; then
if [ -x /usr/bin/update-mime-database ]; then
update-mime-database /usr/share/mime
fi
fi
# 示例:当被通知到图标主题变更时,重建图标缓存
if [ -x /usr/bin/gtk-update-icon-cache ] && [ -d /usr/share/icons/hicolor ]; then
gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor
fi
exit 0
dpkg-deb --build your-pkg-dir
sudo dpkg -i your-pkg_*.deb
dpkg-trigger --check-supported
sudo dpkg-trigger --no-act your-trigger-name
sudo dpkg-trigger --by-package="your-pkg" your-trigger-name
tail -f /var/log/dpkg.log
三 常见用法与最佳实践
四 排错要点
sudo dpkg-trigger --by-package="your-pkg" your-trigger-name