144 lines
4.3 KiB
Text
144 lines
4.3 KiB
Text
%system solaris
|
|
|
|
%postinstall << END
|
|
|
|
#
|
|
# Need to check diskless service install and make sure use the correct unpkg
|
|
#
|
|
DISKLESS_SRVC=`echo $$BASEDIR | /usr/bin/grep export/Solaris_[1-9][0-9]/usr_$${ARCH}.all`
|
|
if [ "$$DISKLESS_SRVC" ]; then
|
|
UNOPKG=/export/Solaris_11/usr_`uname -p`.allPRODUCTDIRECTORYNAME/program/unopkg
|
|
POSTRUN=$$PKG_INSTALL_ROOT/usr_`uname -p`.all/usr/lib/postrun
|
|
CLIENT_BASEDIR=$$PKG_INSTALL_ROOT/usr_$${ARCH}.all
|
|
else
|
|
UNOPKG=$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg
|
|
POSTRUN=$$PKG_INSTALL_ROOT/usr/lib/postrun
|
|
fi
|
|
# Use postrun command on Solaris where available (OpenSolaris)
|
|
if [ -x $$POSTRUN ]; then
|
|
( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0"
|
|
echo "umask 022"
|
|
echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync"
|
|
echo "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;"
|
|
) | $$POSTRUN -b -c UNOPKG
|
|
if [ "$$?" != "0" ]; then
|
|
echo "\nERROR: Installation of UNO extensions"
|
|
echo " through $$POSTRUN failed."
|
|
exit 1
|
|
fi
|
|
else
|
|
# No postrun available, try running unopkg directly
|
|
"$$UNOPKG" sync
|
|
find "$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
|
|
if [ "$$?" != "0" ]; then
|
|
echo "\nERROR: Installation of UNO extensions failed."
|
|
test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root install requires SUNWpostrun package to be installed"
|
|
echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.'
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
exit 0
|
|
END
|
|
|
|
%postremove << END
|
|
|
|
# Use postrun command on Solaris where available (OpenSolaris)
|
|
if [ -x $$PKG_INSTALL_ROOT/usr/lib/postrun ]; then
|
|
( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0"
|
|
echo "cd \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program\""
|
|
echo "umask 022"
|
|
echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync"
|
|
echo "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;"
|
|
) | $$PKG_INSTALL_ROOT/usr/lib/postrun -c UNOPKG
|
|
else
|
|
# No postrun available, try running unopkg directly
|
|
test -x $$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg || exit 0
|
|
"$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg" sync
|
|
echo "find \"$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;"
|
|
if [ "$$?" != "0" ]; then
|
|
echo "\nERROR: Removal of UNO extension failed."
|
|
test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root uninstall requires SUNWpostrun package to be installed"
|
|
echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.'
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
|
|
exit 0
|
|
END
|
|
|
|
%system linux
|
|
|
|
%format rpm
|
|
|
|
%postinstall << END
|
|
|
|
if [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then
|
|
"$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync
|
|
if [ "$$?" != "0" ]; then
|
|
echo "ERROR: Registration of extensions failed!"
|
|
exit 1
|
|
else
|
|
echo "SUCCESS: unopkg returns successful!"
|
|
fi
|
|
find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
|
|
fi
|
|
|
|
exit 0
|
|
|
|
END
|
|
|
|
%postremove << END
|
|
|
|
if [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then
|
|
"$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync
|
|
if [ "$$?" != "0" ]; then
|
|
echo "ERROR: Registration of extensions failed!"
|
|
exit 1
|
|
else
|
|
echo "SUCCESS: unopkg returns successful!"
|
|
fi
|
|
find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
|
|
fi
|
|
|
|
exit 0
|
|
END
|
|
|
|
%format deb
|
|
|
|
%postinstall << END
|
|
|
|
if [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ]; then
|
|
"PRODUCTDIRECTORYNAME/program/unopkg" sync
|
|
if [ "$$?" != "0" ]; then
|
|
echo "ERROR: Registration of extensions failed!"
|
|
exit 1
|
|
else
|
|
echo "SUCCESS: unopkg returns successful!"
|
|
fi
|
|
find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
|
|
fi
|
|
|
|
exit 0
|
|
|
|
END
|
|
|
|
%postremove << END
|
|
|
|
if [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ]
|
|
then
|
|
"PRODUCTDIRECTORYNAME/program/unopkg" sync
|
|
if [ "$$?" != "0" ]; then
|
|
echo "ERROR: Registration of extensions failed!"
|
|
exit 1
|
|
else
|
|
echo "SUCCESS: unopkg returns successful!"
|
|
fi
|
|
find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
|
|
fi
|
|
|
|
exit 0
|
|
END
|
|
|
|
%system all
|