[pacman] Hooks don't trigger on files changed by post install scripts
Task Info (Flyspray) | |
---|---|
Opened By | Arvid Norlander (VorpalGun) |
Task ID | 76826 |
Type | Bug Report |
Project | Community Packages |
Category | Packages |
Version | None |
OS | All |
Opened | 2022-12-14 13:52:19 UTC |
Status | Assigned |
Assignee | Christian Hesse (eworm) |
Details
Description:
etckeeper has a hook of the type: Type = Path Target = etc/*
(see /usr/share/libalpm/hooks/zz-etckeeper-post-install.hook)
This runs etckeeper when anything in /etc was changed by a package. However, when etc is only changed by a post install script (for example: archlinux-keyring does this), etckeeper is not triggered to run.
I'm not sure if it is a bug in pacman or in etckeeper's hook. Is it even fixable?
The goal is that etckeeper commits any changes in /etc before and after a pacman operation. If the hook on etc/* is not reliable, how should this be done properly?
Additional info:
- package version(s): pacman-6.0.2-5, etckeeper-1.18.18-1
- link to upstream bug report, if any: None yet, as I don't know if it is a pacman or etckeeper bug. Once that is figured out I will report to the appropriate upstream.
Steps to reproduce:
- Install etckeeper: pacman -S etckeeper git
- Set up etckeeper (cd /etc; etckeeper init; etckeeper commit "Initial import")
- Install/upgrade a package that doesn't touch /etc directly, but does change things in /etc in it's post install script (such as an upgrade of archlinux-keyring)
Observe that etckeeper was not triggered and did not commit the changes in /etc.