On Fri, Sep 2, 2011 at 9:53 AM, Petr Pisar <ppisar@xxxxxxxxxx> wrote: > On 2011-09-01, Bill Nottingham <notting@xxxxxxxxxx> wrote: >> Petr Pisar (ppisar@xxxxxxxxxx) said: >>> I'm migrating quota_nld service (provided by quota_nld subpackage of >>> quota spec) to systemd. >>> >>> Offical howto <https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Packages_migrating_to_a_systemd_unit_file_from_a_SysV_initscript> recommends: >>> >>> %triggerun -- httpd < 1.0-2 >>> # Save the current service runlevel info >>> [...] >>> >>> where `httpd < 1.0-2' are httpd packages older then 1.0-2 under >>> uninstallation and `1.0-2' is first httpd version with systemd support. >>> >>> I modifed quota accoding this how-to, build a package (everything >>> locally) and I play with upgrades/downgrades between current F17 version >>> and this new one. >>> >>> Everything works except the triggerun script is called even if doing >>> downgrade. Is it intentional and I do not understand triggers, or is it >>> a bug in RPM? >> >> The above triggerun would be called on any uninstallation of httpd less >> than 1.0-2, whether you're upgrading or downgrading. >> > And that's the point. If only httpd-1.0-2 is installed and you do > downgrade to httpd-1.0-1, then the triggerun will be executed which > is what I do not expect because no httpd less then 1.0-2 can be > uninstalled at the time. The trigger is run in two situations. When the source package (i.e. the package containing the triggerun, in this case, httpd-1.0-2) is already installed and the target (httpd < 1.0-2) removed, or when the target is already installed and the source removed. When downgrading, the source package "httpd-1.0-2" is being uninstalled while the target "httpd < 1.0-2" is already present on the system. You could use triggerpostun instead - that will run only after the target is removed, but not when the source package is removed. See "triggers" under /usr/share/doc/rpm-4.x.y. -- Iain. -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel