1*b1cdbd2cSJim Jagielski# ************************************************************* 2*b1cdbd2cSJim Jagielski# 3*b1cdbd2cSJim Jagielski# Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski# or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski# distributed with this work for additional information 6*b1cdbd2cSJim Jagielski# regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski# to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski# "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski# with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski# 11*b1cdbd2cSJim Jagielski# http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski# 13*b1cdbd2cSJim Jagielski# Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski# software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski# KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski# specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski# under the License. 19*b1cdbd2cSJim Jagielski# 20*b1cdbd2cSJim Jagielski# ************************************************************* 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski%system solaris 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski%postinstall << END 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielski# 27*b1cdbd2cSJim Jagielski# Need to check diskless service install and make sure use the correct unpkg 28*b1cdbd2cSJim Jagielski# 29*b1cdbd2cSJim JagielskiDISKLESS_SRVC=`echo $$BASEDIR | /usr/bin/grep export/Solaris_[1-9][0-9]/usr_$${ARCH}.all` 30*b1cdbd2cSJim Jagielskiif [ "$$DISKLESS_SRVC" ]; then 31*b1cdbd2cSJim Jagielski UNOPKG=/export/Solaris_11/usr_`uname -p`.allPRODUCTDIRECTORYNAME/program/unopkg 32*b1cdbd2cSJim Jagielski POSTRUN=$$PKG_INSTALL_ROOT/usr_`uname -p`.all/usr/lib/postrun 33*b1cdbd2cSJim Jagielski CLIENT_BASEDIR=$$PKG_INSTALL_ROOT/usr_$${ARCH}.all 34*b1cdbd2cSJim Jagielskielse 35*b1cdbd2cSJim Jagielski UNOPKG=$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg 36*b1cdbd2cSJim Jagielski POSTRUN=$$PKG_INSTALL_ROOT/usr/lib/postrun 37*b1cdbd2cSJim Jagielskifi 38*b1cdbd2cSJim Jagielski# Use postrun command on Solaris where available (OpenSolaris) 39*b1cdbd2cSJim Jagielskiif [ -x $$POSTRUN ]; then 40*b1cdbd2cSJim Jagielski( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0" 41*b1cdbd2cSJim Jagielski echo "umask 022" 42*b1cdbd2cSJim Jagielski echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync" 43*b1cdbd2cSJim Jagielski echo "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;" 44*b1cdbd2cSJim Jagielski) | $$POSTRUN -b -c UNOPKG 45*b1cdbd2cSJim Jagielski if [ "$$?" != "0" ]; then 46*b1cdbd2cSJim Jagielski echo "\nERROR: Installation of UNO extensions" 47*b1cdbd2cSJim Jagielski echo " through $$POSTRUN failed." 48*b1cdbd2cSJim Jagielski exit 1 49*b1cdbd2cSJim Jagielski fi 50*b1cdbd2cSJim Jagielskielse 51*b1cdbd2cSJim Jagielski # No postrun available, try running unopkg directly 52*b1cdbd2cSJim Jagielski "$$UNOPKG" sync 53*b1cdbd2cSJim Jagielski find "$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; 54*b1cdbd2cSJim Jagielski if [ "$$?" != "0" ]; then 55*b1cdbd2cSJim Jagielski echo "\nERROR: Installation of UNO extensions failed." 56*b1cdbd2cSJim Jagielski test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root install requires SUNWpostrun package to be installed" 57*b1cdbd2cSJim Jagielski echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.' 58*b1cdbd2cSJim Jagielski exit 1 59*b1cdbd2cSJim Jagielski fi 60*b1cdbd2cSJim Jagielskifi 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim Jagielskiexit 0 63*b1cdbd2cSJim JagielskiEND 64*b1cdbd2cSJim Jagielski 65*b1cdbd2cSJim Jagielski%postremove << END 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim Jagielski# Use postrun command on Solaris where available (OpenSolaris) 68*b1cdbd2cSJim Jagielskiif [ -x $$PKG_INSTALL_ROOT/usr/lib/postrun ]; then 69*b1cdbd2cSJim Jagielski( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0" 70*b1cdbd2cSJim Jagielski echo "cd \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program\"" 71*b1cdbd2cSJim Jagielski echo "umask 022" 72*b1cdbd2cSJim Jagielski echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync" 73*b1cdbd2cSJim Jagielski echo "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;" 74*b1cdbd2cSJim Jagielski) | $$PKG_INSTALL_ROOT/usr/lib/postrun -c UNOPKG 75*b1cdbd2cSJim Jagielskielse 76*b1cdbd2cSJim Jagielski # No postrun available, try running unopkg directly 77*b1cdbd2cSJim Jagielski test -x $$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg || exit 0 78*b1cdbd2cSJim Jagielski "$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg" sync 79*b1cdbd2cSJim Jagielski echo "find \"$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;" 80*b1cdbd2cSJim Jagielski if [ "$$?" != "0" ]; then 81*b1cdbd2cSJim Jagielski echo "\nERROR: Removal of UNO extension failed." 82*b1cdbd2cSJim Jagielski test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root uninstall requires SUNWpostrun package to be installed" 83*b1cdbd2cSJim Jagielski echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.' 84*b1cdbd2cSJim Jagielski exit 1 85*b1cdbd2cSJim Jagielski fi 86*b1cdbd2cSJim Jagielskifi 87*b1cdbd2cSJim Jagielski 88*b1cdbd2cSJim Jagielski 89*b1cdbd2cSJim Jagielskiexit 0 90*b1cdbd2cSJim JagielskiEND 91*b1cdbd2cSJim Jagielski 92*b1cdbd2cSJim Jagielski%system linux 93*b1cdbd2cSJim Jagielski 94*b1cdbd2cSJim Jagielski%format rpm 95*b1cdbd2cSJim Jagielski 96*b1cdbd2cSJim Jagielski%postinstall << END 97*b1cdbd2cSJim Jagielski 98*b1cdbd2cSJim Jagielskiif [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then 99*b1cdbd2cSJim Jagielski "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync 100*b1cdbd2cSJim Jagielski if [ "$$?" != "0" ]; then 101*b1cdbd2cSJim Jagielski echo "ERROR: Registration of extensions failed!" 102*b1cdbd2cSJim Jagielski exit 1 103*b1cdbd2cSJim Jagielski else 104*b1cdbd2cSJim Jagielski echo "SUCCESS: unopkg returns successful!" 105*b1cdbd2cSJim Jagielski fi 106*b1cdbd2cSJim Jagielski find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; 107*b1cdbd2cSJim Jagielskifi 108*b1cdbd2cSJim Jagielski 109*b1cdbd2cSJim Jagielskiexit 0 110*b1cdbd2cSJim Jagielski 111*b1cdbd2cSJim JagielskiEND 112*b1cdbd2cSJim Jagielski 113*b1cdbd2cSJim Jagielski%postremove << END 114*b1cdbd2cSJim Jagielski 115*b1cdbd2cSJim Jagielskiif [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then 116*b1cdbd2cSJim Jagielski "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync 117*b1cdbd2cSJim Jagielski if [ "$$?" != "0" ]; then 118*b1cdbd2cSJim Jagielski echo "ERROR: Registration of extensions failed!" 119*b1cdbd2cSJim Jagielski exit 1 120*b1cdbd2cSJim Jagielski else 121*b1cdbd2cSJim Jagielski echo "SUCCESS: unopkg returns successful!" 122*b1cdbd2cSJim Jagielski fi 123*b1cdbd2cSJim Jagielski find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; 124*b1cdbd2cSJim Jagielskifi 125*b1cdbd2cSJim Jagielski 126*b1cdbd2cSJim Jagielskiexit 0 127*b1cdbd2cSJim JagielskiEND 128*b1cdbd2cSJim Jagielski 129*b1cdbd2cSJim Jagielski%format deb 130*b1cdbd2cSJim Jagielski 131*b1cdbd2cSJim Jagielski%postinstall << END 132*b1cdbd2cSJim Jagielski 133*b1cdbd2cSJim Jagielskiif [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ]; then 134*b1cdbd2cSJim Jagielski "PRODUCTDIRECTORYNAME/program/unopkg" sync 135*b1cdbd2cSJim Jagielski if [ "$$?" != "0" ]; then 136*b1cdbd2cSJim Jagielski echo "ERROR: Registration of extensions failed!" 137*b1cdbd2cSJim Jagielski exit 1 138*b1cdbd2cSJim Jagielski else 139*b1cdbd2cSJim Jagielski echo "SUCCESS: unopkg returns successful!" 140*b1cdbd2cSJim Jagielski fi 141*b1cdbd2cSJim Jagielski find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; 142*b1cdbd2cSJim Jagielskifi 143*b1cdbd2cSJim Jagielski 144*b1cdbd2cSJim Jagielskiexit 0 145*b1cdbd2cSJim Jagielski 146*b1cdbd2cSJim JagielskiEND 147*b1cdbd2cSJim Jagielski 148*b1cdbd2cSJim Jagielski%postremove << END 149*b1cdbd2cSJim Jagielski 150*b1cdbd2cSJim Jagielskiif [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ] 151*b1cdbd2cSJim Jagielskithen 152*b1cdbd2cSJim Jagielski "PRODUCTDIRECTORYNAME/program/unopkg" sync 153*b1cdbd2cSJim Jagielski if [ "$$?" != "0" ]; then 154*b1cdbd2cSJim Jagielski echo "ERROR: Registration of extensions failed!" 155*b1cdbd2cSJim Jagielski exit 1 156*b1cdbd2cSJim Jagielski else 157*b1cdbd2cSJim Jagielski echo "SUCCESS: unopkg returns successful!" 158*b1cdbd2cSJim Jagielski fi 159*b1cdbd2cSJim Jagielski find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \; 160*b1cdbd2cSJim Jagielskifi 161*b1cdbd2cSJim Jagielski 162*b1cdbd2cSJim Jagielskiexit 0 163*b1cdbd2cSJim JagielskiEND 164*b1cdbd2cSJim Jagielski 165*b1cdbd2cSJim Jagielski%system all 166