1 %system solaris
2 
3 %postinstall << END
4 
5 #
6 # Need to check diskless service install and make sure use the correct unpkg
7 #
8 DISKLESS_SRVC=`echo $$BASEDIR | /usr/bin/grep export/Solaris_[1-9][0-9]/usr_$${ARCH}.all`
9 if [  "$$DISKLESS_SRVC" ]; then
10 	UNOPKG=/export/Solaris_11/usr_`uname -p`.allPRODUCTDIRECTORYNAME/program/unopkg
11 	POSTRUN=$$PKG_INSTALL_ROOT/usr_`uname -p`.all/usr/lib/postrun
12 	CLIENT_BASEDIR=$$PKG_INSTALL_ROOT/usr_$${ARCH}.all
13 else
14 	UNOPKG=$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg
15 	POSTRUN=$$PKG_INSTALL_ROOT/usr/lib/postrun
16 fi
17 # Use postrun command on Solaris where available (OpenSolaris)
18 if [ -x $$POSTRUN ]; then
19 ( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0"
20   echo "umask 022"
21   echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync"
22   echo  "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;"
23 ) | $$POSTRUN -b -c UNOPKG
24   if [ "$$?" != "0" ]; then
25     echo "\nERROR: Installation of UNO extensions"
26     echo " through $$POSTRUN failed."
27     exit 1
28   fi
29 else
30   # No postrun available, try running unopkg directly
31   "$$UNOPKG" sync
32  find "$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
33   if [ "$$?" != "0" ]; then
34     echo "\nERROR: Installation of UNO extensions failed."
35     test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root install requires SUNWpostrun package to be installed"
36     echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.'
37     exit 1
38   fi
39 fi
40 
41 exit 0
42 END
43 
44 %postremove << END
45 
46 # Use postrun command on Solaris where available (OpenSolaris)
47 if [ -x $$PKG_INSTALL_ROOT/usr/lib/postrun ]; then
48 ( echo "test -x \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" || exit 0"
49   echo "cd \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program\""
50   echo "umask 022"
51   echo "\"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg\" sync"
52   echo  "find \"$$CLIENT_BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;"
53 ) | $$PKG_INSTALL_ROOT/usr/lib/postrun -c UNOPKG
54 else
55   # No postrun available, try running unopkg directly
56   test -x $$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg || exit 0
57   "$$BASEDIR/PRODUCTDIRECTORYNAME/program/unopkg" sync
58   echo  "find \"$$BASEDIR/PRODUCTDIRECTORYNAME/share/prereg/bundled\" -type f -exec chmod 644 {} \\;"
59   if [ "$$?" != "0" ]; then
60     echo "\nERROR: Removal of UNO extension failed."
61     test "$$BASEDIR" = "$$CLIENT_BASEDIR" || echo "ERROR: alternate root uninstall requires SUNWpostrun package to be installed"
62     echo 'ERROR: Make sure the runtime requirements (operating system, patch level, architecture) are met.'
63     exit 1
64   fi
65 fi
66 
67 
68 exit 0
69 END
70 
71 %system linux
72 
73 %format rpm
74 
75 %postinstall << END
76 
77 if [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then
78   "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync
79   if [ "$$?" != "0" ]; then
80     echo "ERROR: Registration of extensions failed!"
81     exit 1
82   else
83     echo "SUCCESS: unopkg returns successful!"
84   fi
85   find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
86 fi
87 
88 exit 0
89 
90 END
91 
92 %postremove << END
93 
94 if [ -x "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" ]; then
95   "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/program/unopkg" sync
96   if [ "$$?" != "0" ]; then
97     echo "ERROR: Registration of extensions failed!"
98     exit 1
99   else
100     echo "SUCCESS: unopkg returns successful!"
101   fi
102   find "$$RPM_INSTALL_PREFIX/PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
103 fi
104 
105 exit 0
106 END
107 
108 %format deb
109 
110 %postinstall << END
111 
112 if [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ]; then
113   "PRODUCTDIRECTORYNAME/program/unopkg" sync
114   if [ "$$?" != "0" ]; then
115     echo "ERROR: Registration of extensions failed!"
116     exit 1
117   else
118     echo "SUCCESS: unopkg returns successful!"
119   fi
120   find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
121 fi
122 
123 exit 0
124 
125 END
126 
127 %postremove << END
128 
129 if [ -x "PRODUCTDIRECTORYNAME/program/unopkg" ]
130 then
131   "PRODUCTDIRECTORYNAME/program/unopkg" sync
132   if [ "$$?" != "0" ]; then
133     echo "ERROR: Registration of extensions failed!"
134     exit 1
135   else
136     echo "SUCCESS: unopkg returns successful!"
137   fi
138  find "PRODUCTDIRECTORYNAME/share/prereg/bundled" -type f -exec chmod 644 {} \;
139 fi
140 
141 exit 0
142 END
143 
144 %system all
145