At Mon, 11 Feb 2008 17:10:46 -0800 (PST) RPM Package Manager <rpm-list@xxxxxxxxxx> wrote: > > I have a commercial software package that I have to > make into an RPM. What I have to package up basically > consists of a license file, a response file, a couple > of maintenance updates, and a binary installer that > takes a number of command line flags. > > What I would like is for the RPM to unpack all these > files and run an installation script that kicks off > the binary installer with all of its command line > flags. (There is also an uninstaller that I'd like to > invoke using rpm -e.) > > Instead what happens is when I run the rpmbuild > spec-file command, the software package gets installed > locally (via the vendor setup). The newly-built RPM > then contains all of the files that were installed, > and installing that RPM on another system does not > invoke the vendor installer. > > The problem is that the software needs to get > installed via the installer, and not just have the > package exploded onto the system tarball-style, which > is what I have now. There are client-specific keys > that are generated at install time that need to be > unique, for one. > > How can I do this with an RPM? I'm no RPM expert, but what it sounds like is that you don't want to actually run the vendor installer in the %install section. Instead, you want to 'install' the installer itself (along with the other 'static' stuff like the license file) in some place like ${DESTDIR}/usr/share/<package> and then actually run the installer from the %post script. Or something like that. I think there is a place for a script to run when uninstalling, where you would run the uninstaller (and you'd need to install the uninstaller someplace special as well and make sure that it is not removed before the rpm -e script is run). > > My spec file looks roughly like this: > > Summary: ESM > Name: esm > Version: 65 > Release: 0 > Group: ABC > Copyright: Yes > Packager: Me > Source: rh-as40-ESM-65-24.tar.gz > %description > This is ESM version 6.5 > > %prep > %setup > > %install > > #setup a bunch of vars - snipped for brevity > ./esmsetup -a -p 1,2,3,4,5,6,7,8,9,10,11,12,13,14 -d > /opt/esm -t /usr/src/redhat/BUILD/esm-65/esm.tgz -M > $ES > MSRVR -O 5600 -U $ACCESSNAME -W $PASSWORD -N $FQDN >> > $LOG_FILE 2>&1 > > ./esm_lnx-x86.tpk >> $LOG_FILE 2>&1 <$ABTTMP/esm.stdin > > ./esmsetup >>$LOG_FILE 2>&1 <$ABTTMP/esm.stdin.update > > %post > > %files > /opt/esm > /etc/rc.d/rc3.d/S69esmrc > /etc/rc.d/init.d/esmrc > /etc/rc.d/rc5.d/S69esmrc > > > > ____________________________________________________________________________________ > Looking for last minute shopping deals? > Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping > > _______________________________________________ > Rpm-list mailing list > Rpm-list@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/rpm-list > > -- Robert Heller -- Get the Deepwoods Software FireFox Toolbar! Deepwoods Software -- Linux Installation and Administration http://www.deepsoft.com/ -- Web Hosting, with CGI and Database heller@xxxxxxxxxxxx -- Contract Programming: C/C++, Tcl/Tk _______________________________________________ Rpm-list mailing list Rpm-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/rpm-list