Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

RPM Build Spec file i want to check rpm is being install or update

i want to check the rpm i have created is install or update by user(client) like

rpm -ivh abc.rpm

or

rpm -Uvh abc.rpm

is their any %command in spec file to get info regarding this command.

my requirement is if i have a rpm named abc-0.1-2.rpm and now user want to install it prior installing abc.0.1-1.rpm with command rpm -ivh abc.0.1-2.rpm then it allow to install or user directly update rpm with command rpm -Uvh abc.0.1-2 before installing the older version then stop to doing this.

like image 246
meet patel Avatar asked Jan 14 '23 20:01

meet patel


1 Answers

To expand on the above:

In your %post[un] or %pre[un] sections there's a variable you can check to see if this package already exists on the system (is being updated/cleanup from upgrade) or not (first time install/final uninstall).

It looks like this:

%post
if [ $1 -eq 1 ]; then
    echo "First install complete"
else
    echo "Upgrade complete"
fi
like image 185
lightstrike Avatar answered Apr 29 '23 12:04

lightstrike