Mailinglist Archive: opensuse-buildservice (239 mails)

< Previous Next >
Re: [opensuse-buildservice] perhaps OT spec file question
  • From: Lars Müller <lmuelle@xxxxxxx>
  • Date: Wed, 27 May 2009 12:17:42 +0200
  • Message-id: <20090527101742.GD15422@xxxxxxxxxxxxxxxx>
On Wed, May 27, 2009 at 11:05:31AM +0200, Christian wrote:

I tried to define a "var" in %pre, hoping that this "var" is then known
in %post.

Example:
%pre
if [ ${1:-0} -gt 1 ]; then
# get version of previuos installed package
pre_version=`rpm -q --qf "%{VERSION}" %{name}`
fi


%post
if [ ${1:-0} -gt 1 ]; then
if [ -n $pre_version ]; then
if [ "$pre_version" = "%{version}" ]; then
do stuff
fi
fi
fi

but "$pre_version" is not known in %post.
I also tried "export pre_version=`.....` with no success.

You have to store the information in the filesystem. Do something like

echo "${pre_version}" >/var/adm/rpm_updates_are_sometimes_a_source_of_big_pain

from inside %pre and source this file later in %post to check your
condition.

You can't even use mktemp (1) cause there is no way to transport the
given name from %pre to %post.

Please ensure your knees are bullet proofed! ;)

Lars
--
Lars Müller [ˈlaː(r)z ˈmʏlɐ]
Samba Team
SUSE Linux, Maxfeldstraße 5, 90409 Nürnberg, Germany
< Previous Next >
Follow Ups
References