dtinfo other files
[oweals/cde.git] / cde / admin / IntegTools / post_install / freebsd / configMin.src
1 XCOMM! /bin/ksh
2 XCOMM #######
3 XCOMM  Product: CDE
4 XCOMM  Fileset: CDE-MIN
5 XCOMM  configure
6 XCOMM  @(#) $TOG: configMin.src /main/1 1998/03/11 16:18:12 mgreess $
7 XCOMM #######
8 #define HASH #
9
10 PRODUCT=CDE
11 FILESET=CDE-MIN
12 DO_CONFIGURATION=""
13 PREFIX=/usr/local
14 retval=0
15
16 FixEtcServices()
17 {
18 FILE=/etc/services
19 TMPFILE=/tmp/services
20
21 XCOMM
22 XCOMM check for existence of /etc/services
23 XCOMM
24
25     if [ ! -f $FILE ]   # highly unlikely
26     then
27         echo "" >$FILE
28     fi
29
30 XCOMM
31 XCOMM see if it already exists
32 XCOMM
33
34     awk '{if ($1 == "dtspc")
35                 print $0 > "/tmp/dtspc-already-there"
36          }' $FILE >/dev/null
37
38     if [ ! -f /tmp/dtspc-already-there ]
39     then
40         printf "dtspc\t\t6112/tcp\t#subprocess control" >>$FILE
41     else
42         rm /tmp/dtspc-already-there
43     fi
44
45 XCOMM
46 XCOMM remove legacy entries like dtspcd
47 XCOMM
48
49     awk '{if ($1 == "dtspcd" || $1 == "#dtspcd")
50                 ;
51           else
52                 print $0
53          }' $FILE >$TMPFILE
54
55     cp $TMPFILE $FILE
56     rm $TMPFILE
57 }
58
59 UnfixEtcServices()
60 {
61 FILE=/etc/services
62 TMPFILE=/tmp/services
63
64     awk '{if ($1 == "dtspc" && $2 == "6112/tcp")
65                 ;
66           else
67                 print $0
68          }' $FILE >$TMPFILE
69
70     cp $TMPFILE $FILE
71     rm $TMPFILE
72 }
73
74 FixEtcInetdDotConf()
75 {
76 FILE=/etc/inetd.conf
77 TMPFILE=/tmp/inetd.conf
78
79 XCOMM
80 XCOMM check for existence of /etc/inetd.conf
81 XCOMM
82
83     if [ ! -f $FILE ]   # highly unlikely
84     then
85         echo "" >$FILE
86     fi
87
88 XCOMM
89 XCOMM see if it already exists
90 XCOMM
91
92     awk '{if ($1 == "dtspc")
93                 print $0 > "/tmp/dtspc-already-there"
94          }' $FILE >/dev/null
95
96     DTSPCD=CDE_INSTALLATION_TOP/bin/dtspcd
97
98     if [ ! -f /tmp/dtspc-already-there ]
99     then
100         echo "dtspc stream tcp4 nowait root $DTSPCD $DTSPCD" >>$FILE
101     else
102         rm /tmp/dtspc-already-there
103     fi
104
105 XCOMM
106 XCOMM remove legacy entries like dtspcd
107 XCOMM
108
109     awk '{if ($1 == "dtspcd" || $1 == "#dtspcd")
110                 ;
111           else
112                 print $0
113          }' $FILE >$TMPFILE
114
115     cp $TMPFILE $FILE
116     rm $TMPFILE
117 }
118
119 UnfixEtcInetdDotConf()
120 {
121 FILE=/etc/inetd.conf
122 TMPFILE=/tmp/inetd.conf
123
124     awk '{if ($1 == "dtspc")
125                 ;
126           else
127                 print $0
128          }' $FILE >$TMPFILE
129
130     cp $TMPFILE $FILE
131     rm $TMPFILE
132 }
133
134 FixEtcPamDotConf()
135 {
136 FILE=/etc/pam.conf
137 ORIGFILE=/etc/pam.conf.preCDE
138
139 XCOMM
140 XCOMM check for existence of /etc/pam.conf
141 XCOMM
142
143     if [ -f $FILE ]
144     then
145         echo "" > $ORIGFILE
146         cp CDE_INSTALLATION_TOP/config/sys.pam.conf $FILE
147         chmod 644 $FILE
148     else
149         echo "Warning: $FILE already exists.  Leaving it alone." 1>&2
150         cp CDE_INSTALLATION_TOP/config/sys.pam.conf $ORIGFILE
151     fi
152
153 }
154
155 UnfixEtcPamDotConf()
156 {
157 FILE=/etc/pam.conf
158 TMPFILE=/etc/pam.conf.CDE
159 ORIGFILE=/etc/pam.conf.preCDE
160
161     if [ ! -f $FILE ]
162     then
163         echo "Warning: $FILE does not exist." 1>&2
164     elif [ ! -f $ORIGFILE ]
165     then
166         echo "Warning: $ORIGFILE does not exist.  Leaving $FILE alone." 1>&2
167     else
168         mv $FILE $TMPFILE
169         cp $ORIGFILE $FILE
170         chmod 664 $FILE
171     fi
172 }
173
174 RemoveMinFiles()
175 {
176     while read SRC
177     do
178       if [ "$SRC" != "" ]
179       then
180         rm -f $SRC
181         dirname=${SRC%/STAR}
182         if [ -d $dirname ]
183         then
184           cd $dirname
185           while [ "$dirname" != "$CDE_TOP" ]
186           do
187             cd ..
188             rmdir ${dirname##STAR/} >/dev/null 2>/dev/null
189             dirname=${dirname%/STAR}
190           done
191         fi
192       fi
193     done <<-EOF
194 #include "CDE-MIN.list"
195         EOF
196 }
197
198 SetManPath()
199 {
200     DTMANPATH=CDE_INSTALLATION_TOP/share/man
201     echo "MANPATH $DTMANPATH" > ${PREFIX}/etc/man.d/cde.conf
202 }
203
204 UnSetManPath()
205 {
206     rm -f ${PREFIX}/etc/man.d/cde.conf
207 }
208
209 VerifyInstalledFiles()
210 {
211     echo "Status   mode    owner   group   filename"
212     echo "-----------------------------------------"
213 XCOMM     exists  correct correct correct  /usr/dt/foo1
214 XCOMM     MISSING  WRONG   WRONG   WRONG   /usr/dt/foo2
215 XCOMM        exists    the link is correct    /usr/dt/link
216
217     while read SRC
218     do
219 #include "../verify.func"
220     done <<-EOF
221 #include "CDE-MIN.lst"
222         EOF
223 }
224
225 #include "../option.func"
226
227 XCOMM ###############################################################
228 XCOMM
229 XCOMM Main Body
230 XCOMM
231 XCOMM ###############################################################
232
233   HandleOption $*
234
235   if [ "$OPERATION" = "configure" ]
236   then
237
238     FixEtcServices
239
240     : FixEtcInetdDotConf
241
242     SetManPath
243
244     HASH
245     HASH  create the /var/dt/tmp directory for the dtspcd
246     HASH
247
248     if [ ! -d CDE_LOGFILES_TOP/tmp ]
249     then
250         mkdir -p CDE_LOGFILES_TOP/tmp
251     fi
252
253   elif [ "$OPERATION" = "deconfigure" ]
254   then
255
256     UnsetManPath
257
258     UnfixEtcServices
259
260     : UnfixEtcInetdDotConf
261
262     RemoveMinFiles
263
264     VerifyInstalledFiles
265
266   elif [ "$OPERATION" = "verify" ]
267   then
268
269     VerifyInstalledFiles
270
271   fi
272
273   return $retval