Symbolic links created to enable the timers should not be in /etc/systemd/system/multi-user.target.wants
Relevant part of the .install file for pamac-common
:
post_install() {
# enable systemd timers
ln -sf /usr/lib/systemd/system/pamac-cleancache.timer /etc/systemd/system/multi-user.target.wants
ln -sf /usr/lib/systemd/system/pamac-mirrorlist.timer /etc/systemd/system/multi-user.target.wants
# polkit agent
post_remove() {
# disable systemd timers
rm -f /etc/systemd/system/multi-user.target.wants/pamac-cleancache.timer
rm -f /etc/systemd/system/multi-user.target.wants/pamac-mirrorlist.timer
}
Link: https://gitlab.manjaro.org/packages/extra/pamac/blob/master/pamac-common.install
Problem: The symbolic links used to enable pamac-cleancache.timer and pamac-mirrorlist.timer should be in /etc/systemd/system/timers.target.wants, not in /etc/systemd/system/multi-user.target.
In general, timer units are supposed to be tied to the timers.target, with WantedBy=timers.target in their configuration. It is also the case for the timer units provided with Pamac: they both are configured with WantedBy=timers.target and therefore, if you would enable those timer units manually with systemctl enable pamac-blabla.timer
, the symbolic link would be created in /etc/systemd/system/timers.target.wants and not in /etc/systemd/system/multi-users.target.
https://gitlab.manjaro.org/applications/pamac/tree/master/data/systemd
Note: You will also modify the post_remove() in order to remove the symlinks that are in /etc/systemd/system/timers.target.wants, or else they will be left there. You could also keep the current rm commands for backward compatibility for a while, since it won't be retroactive (older system will still have the symlinks in multi-users.target.wants unless they change that manually).
Note2: It doesn't make the units dysfunctional; they are working correctly. It is for the sake of consistency and putting things in the right place.