Changing to PHT standard SPEC settings.
[samba.git] / packaging / PHT / TurboLinux / samba2.spec.tmpl
1 Summary: Samba SMB client and server
2 Name: samba
3 Version: PVERSION
4 Release: PRELEASE
5 Copyright: GNU GPL version 2
6 Group: Networking
7 Source: ftp://samba.org/pub/samba/samba-PVERSION.tar.gz
8 Patch: makefile-path.patch
9 Patch1: smbw.patch
10 Requires: pam >= 0.64
11 Prereq: chkconfig fileutils
12 BuildRoot: /var/tmp/samba
13
14 %description
15 Samba provides an SMB server which can be used to provide
16 network services to SMB (sometimes called "Lan Manager")
17 clients, including various versions of MS Windows, OS/2,
18 and other Linux machines. Samba also provides some SMB
19 clients, which complement the built-in SMB filesystem
20 in Linux. Samba uses NetBIOS over TCP/IP (NetBT) protocols
21 and does NOT need NetBEUI (Microsoft Raw NetBIOS frame)
22 protocol.
23
24 Samba-2 features an almost working NT Domain Control
25 capability and includes the new SWAT (Samba Web Administration
26 Tool) that allows samba's smb.conf file to be remotely managed
27 using your favourite web browser. For the time being this is
28 being enabled on TCP port 901 via inetd.
29
30 Please refer to the WHATSNEW.txt document for fixup information.
31 This binary release includes encrypted password support.
32 Please read the smb.conf file and ENCRYPTION.txt in the
33 docs directory for implementation details.
34
35 NOTE: TurboLinux uses PAM which has integrated support
36 for Shadow passwords. Do NOT recompile with the SHADOW_PWD option
37 enabled. Red Hat Linux has built in support for quotas in PAM.
38
39 %changelog
40 * Sun Oct 25 1998 John H Terpstra <jht@samba.org>
41  - Added modifier to /config specifier so that smb.conf,
42         lmhosts and smbusers never get lost
43
44 * Sat Oct 24 1998 John H Terpstra <jht@samba.org>
45  - removed README.smbsh file from docs area
46
47 * Mon Oct 05 1998 John H Terpstra <jht@samba.org>
48  - Added rpcclient to binaries list
49  - Added smbwrapper stuff
50
51 * Fri Aug 21 1998 John H Terpstra <jht@samba.org>
52  - Updated for Samba version 2.0 building
53
54 * Tue Jul 07 1998 Erik Troan <ewt@redhat.com>
55   - updated postun triggerscript to check $0
56   - clear /etc/codepages from %preun instead of %postun
57
58 * Sat Jul 04 1998 John H Terpstra <jht@samba.org>
59  - fixed codepage preservation during update via -Uvh
60
61 * Mon Jun 08 1998 Erik Troan <ewt@redhat.com>
62   - made the %postun script a tad less agressive; no reason to remove
63     the logs or lock file 
64   - the %postun and %preun should only exectute if this is the final
65     removal
66   - migrated %triggerpostun from Red Hat's samba package to work around
67     packaging problems in some Red Hat samba releases
68
69 * Sun Apr 26 1998 John H Terpstra <jht@samba.org>
70  - Tidy up for early alpha releases
71  - added findsmb from SGI packaging
72
73 * Thu Apr 09 1998 John H Terpstra <jht@samba.org>
74  - Updated spec file
75  - Included new codepage.936
76
77 * Sat Mar 20 1998 John H Terpstra <jht@samba.anu.edu/au>
78  - Added swat facility
79
80 * Sat Jan 24 1998 John H Terpstra <jht@samba.org>
81  - Many optimisations (some suggested by Manoj Kasichainula <manojk@io.com>
82   - Use of chkconfig in place of individual symlinks to /etc/rc.d/init/smb
83   - Compounded make line
84   - Updated smb.init restart mechanism
85   - Use compound mkdir -p line instead of individual calls to mkdir
86   - Fixed smb.conf file path for log files
87   - Fixed smb.conf file path for incoming smb print spool directory
88   - Added a number of options to smb.conf file
89   - Added smbadduser command (missed from all previous RPMs) - Doooh!
90   - Added smbuser file and smb.conf file updates for username map
91
92 %prep
93 %setup
94 %patch -p1
95 %patch1 -p1
96
97 %build
98 cd source
99 CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=/usr --libdir=/etc --with-smbwrapper
100 make all smbwrapper
101
102 %install
103 rm -rf $RPM_BUILD_ROOT
104 mkdir -p $RPM_BUILD_ROOT
105 mkdir -p $RPM_BUILD_ROOT/etc/codepages/src
106 mkdir -p $RPM_BUILD_ROOT/etc/{logrotate.d,pam.d}
107 mkdir -p $RPM_BUILD_ROOT/etc/rc.d/{init.d,rc0.d,rc1.d,rc2.d,rc3.d,rc5.d,rc6.d}
108 mkdir -p $RPM_BUILD_ROOT/home/samba
109 mkdir -p $RPM_BUILD_ROOT/usr/{bin,sbin}
110 mkdir -p $RPM_BUILD_ROOT/usr/share/swat/{images,help,include}
111 mkdir -p $RPM_BUILD_ROOT/usr/man/{man1,man5,man7,man8}
112 mkdir -p $RPM_BUILD_ROOT/var/lock/samba
113 mkdir -p $RPM_BUILD_ROOT/var/log/samba
114 mkdir -p $RPM_BUILD_ROOT/var/spool/samba
115
116 # Install standard binary files
117 for i in nmblookup smbclient smbpasswd smbrun smbstatus testparm testprns \
118       make_smbcodepage make_printerdef rpcclient smbsh smbwrapper.so
119 do
120 install -m755 -s source/bin/$i $RPM_BUILD_ROOT/usr/bin
121 done
122 for i in addtosmbpass mksmbpasswd.sh smbtar 
123 do
124 install -m755 source/script/$i $RPM_BUILD_ROOT/usr/bin
125 done
126
127 # Install secure binary files
128 for i in smbd nmbd swat
129 do
130 install -m755 -s source/bin/$i $RPM_BUILD_ROOT/usr/sbin
131 done
132
133 # Install level 1 man pages
134 for i in smbclient.1 smbrun.1 smbstatus.1 smbtar.1 testparm.1 testprns.1 make_smbcodepage.1 nmblookup.1
135 do
136 install -m644 docs/manpages/$i $RPM_BUILD_ROOT/usr/man/man1
137 done
138
139 # Install codepage source files
140 for i in 437 737 850 852 861 866 932 936 949 950
141 do
142 install -m644 source/codepages/codepage_def.$i $RPM_BUILD_ROOT/etc/codepages/src
143 done
144
145 # Install SWAT helper files
146 for i in swat/help/*.html docs/htmldocs/*.html
147 do
148 install -m644 $i $RPM_BUILD_ROOT/usr/share/swat/help
149 done
150 for i in swat/images/*.gif
151 do
152 install -m644 $i $RPM_BUILD_ROOT/usr/share/swat/images
153 done
154 for i in swat/include/*.html
155 do
156 install -m644 $i $RPM_BUILD_ROOT/usr/share/swat/include
157 done
158
159 # Install the miscellany
160 install -m644 swat/README $RPM_BUILD_ROOT/usr/share/swat
161 install -m644 docs/manpages/smb.conf.5 $RPM_BUILD_ROOT/usr/man/man5
162 install -m644 docs/manpages/lmhosts.5 $RPM_BUILD_ROOT/usr/man/man5
163 install -m644 docs/manpages/smbpasswd.5 $RPM_BUILD_ROOT/usr/man/man5
164 install -m644 docs/manpages/samba.7 $RPM_BUILD_ROOT/usr/man/man7
165 install -m644 docs/manpages/smbd.8 $RPM_BUILD_ROOT/usr/man/man8
166 install -m644 docs/manpages/nmbd.8 $RPM_BUILD_ROOT/usr/man/man8
167 install -m644 docs/manpages/smbpasswd.8 $RPM_BUILD_ROOT/usr/man/man8
168 install -m644 docs/manpages/swat.8 $RPM_BUILD_ROOT/usr/man/man8
169 install -m644 packaging/RedHat/smb.conf $RPM_BUILD_ROOT/etc/smb.conf
170 install -m644 packaging/RedHat/smbusers $RPM_BUILD_ROOT/etc/smbusers
171 install -m755 packaging/RedHat/smbprint $RPM_BUILD_ROOT/usr/bin
172 install -m755 packaging/RedHat/findsmb $RPM_BUILD_ROOT/usr/bin
173 install -m755 packaging/RedHat/smbadduser $RPM_BUILD_ROOT/usr/bin
174 install -m755 packaging/RedHat/smb.init $RPM_BUILD_ROOT/etc/rc.d/init.d/smb
175 install -m755 packaging/RedHat/smb.init $RPM_BUILD_ROOT/usr/sbin/samba
176 install -m644 packaging/RedHat/samba.pamd $RPM_BUILD_ROOT/etc/pam.d/samba
177 install -m644 packaging/RedHat/samba.log $RPM_BUILD_ROOT/etc/logrotate.d/samba
178 echo 127.0.0.1 localhost > $RPM_BUILD_ROOT/etc/lmhosts
179
180 %clean
181 rm -rf $RPM_BUILD_ROOT
182
183 %post
184 /sbin/chkconfig --add smb
185
186 # Build codepage load files
187 for i in 437 737 850 852 861 866 932 936 949 950
188 do
189 /usr/bin/make_smbcodepage c $i /etc/codepages/src/codepage_def.$i /etc/codepages/codepage.$i
190 done
191
192 # Add swat entry to /etc/services if not already there
193 if !( grep ^[:space:]*swat /etc/services > /dev/null ) then
194         echo 'swat              901/tcp                         # Add swat service used via inetd' >> /etc/services
195 fi
196
197 # Add swat entry to /etc/inetd.conf if needed
198 if !( grep ^[:space:]*swat /etc/inetd.conf > /dev/null ) then
199         echo 'swat      stream  tcp     nowait.400      root    /usr/sbin/swat swat' >> /etc/inetd.conf
200 killall -1 inetd || :
201 fi
202
203 %preun
204 if [ $1 = 0 ] ; then
205     /sbin/chkconfig --del smb
206
207     for n in /etc/codepages/*; do
208         if [ $n != /etc/codepages/src ]; then
209             rm -rf $n
210         fi
211     done
212     # We want to remove the browse.dat and wins.dat files so they can not interfer with a new version of samba!
213     if [ -e /var/lock/samba/browse.dat ]; then
214             rm -f /var/lock/samba/browse.dat
215     fi
216     if [ -e /var/lock/samba/wins.dat ]; then
217             rm -f /var/lock/samba/wins.dat
218     fi
219 fi
220
221 %postun
222 # Only delete remnants of samba if this is the final deletion.
223 if [ $1 != 0 ] ; then
224     exit 0
225
226     if [ -x /etc/pam.d/samba ]; then
227       rm -f /etc/pam.d/samba
228     fi
229     if [ -e /var/log/samba ]; then
230       rm -rf /var/log/samba
231     fi
232     if [ -e /var/lock/samba ]; then
233       rm -rf /var/lock/samba
234     fi
235
236     # Remove swat entries from /etc/inetd.conf and /etc/services
237     cd /etc
238     tmpfile=/etc/tmp.$$
239     sed -e '/^[:space:]*swat.*$/d' /etc/inetd.conf > $tmpfile
240     mv $tmpfile inetd.conf
241     sed -e '/^[:space:]*swat.*$/d' /etc/services > $tmpfile
242     mv $tmpfile services
243 fi
244
245 %triggerpostun -- samba < samba-2.0.0
246 if [ $0 != 0 ]; then
247     /sbin/chkconfig --add smb
248 fi
249
250
251 %files
252 %doc README COPYING Manifest Read-Manifest-Now
253 %doc WHATSNEW.txt Roadmap
254 %doc docs
255 %doc swat/README
256 %doc examples
257 %attr(-,root,root) /usr/sbin/smbd
258 %attr(-,root,root) /usr/sbin/nmbd
259 %attr(-,root,root) /usr/sbin/swat
260 %attr(0750,root,root) /usr/sbin/samba
261 %attr(-,root,root) /usr/bin/addtosmbpass
262 %attr(-,root,root) /usr/bin/mksmbpasswd.sh
263 %attr(-,root,root) /usr/bin/smbclient
264 %attr(-,root,root) /usr/bin/rpcclient
265 %attr(-,root,root) /usr/bin/testparm
266 %attr(-,root,root) /usr/bin/testprns
267 %attr(-,root,root) /usr/bin/smbrun
268 %attr(-,root,root) /usr/bin/findsmb
269 %attr(-,root,root) /usr/bin/smbstatus
270 %attr(-,root,root) /usr/bin/nmblookup
271 %attr(-,root,root) /usr/bin/make_smbcodepage
272 %attr(-,root,root) /usr/bin/make_printerdef
273 %attr(-,root,root) /usr/bin/smbpasswd
274 %attr(-,root,root) /usr/bin/smbtar
275 %attr(-,root,root) /usr/bin/smbprint
276 %attr(-,root,root) /usr/bin/smbadduser
277 %attr(0755,root,root) /usr/bin/smbsh
278 %attr(0755,root,root) /usr/bin/smbwrapper.so
279 %attr(-,root,root) /usr/share/swat/help/welcome.html
280 %attr(-,root,root) /usr/share/swat/help/DOMAIN_MEMBER.html
281 %attr(-,root,root) /usr/share/swat/help/lmhosts.5.html
282 %attr(-,root,root) /usr/share/swat/help/make_smbcodepage.1.html
283 %attr(-,root,root) /usr/share/swat/help/nmbd.8.html
284 %attr(-,root,root) /usr/share/swat/help/nmblookup.1.html
285 %attr(-,root,root) /usr/share/swat/help/samba.7.html
286 %attr(-,root,root) /usr/share/swat/help/smb.conf.5.html
287 %attr(-,root,root) /usr/share/swat/help/smbclient.1.html
288 %attr(-,root,root) /usr/share/swat/help/smbd.8.html
289 %attr(-,root,root) /usr/share/swat/help/smbpasswd.5.html
290 %attr(-,root,root) /usr/share/swat/help/smbpasswd.8.html
291 %attr(-,root,root) /usr/share/swat/help/smbrun.1.html
292 %attr(-,root,root) /usr/share/swat/help/smbstatus.1.html
293 %attr(-,root,root) /usr/share/swat/help/smbtar.1.html
294 %attr(-,root,root) /usr/share/swat/help/swat.8.html
295 %attr(-,root,root) /usr/share/swat/help/testparm.1.html
296 %attr(-,root,root) /usr/share/swat/help/testprns.1.html
297 %attr(-,root,root) /usr/share/swat/images/globals.gif
298 %attr(-,root,root) /usr/share/swat/images/home.gif
299 %attr(-,root,root) /usr/share/swat/images/passwd.gif
300 %attr(-,root,root) /usr/share/swat/images/printers.gif
301 %attr(-,root,root) /usr/share/swat/images/shares.gif
302 %attr(-,root,root) /usr/share/swat/images/samba.gif
303 %attr(-,root,root) /usr/share/swat/images/status.gif
304 %attr(-,root,root) /usr/share/swat/images/viewconfig.gif
305 %attr(-,root,root) /usr/share/swat/include/header.html
306 %attr(-,root,root) /usr/share/swat/include/footer.html
307 %attr(-,root,root) %config(noreplace) /etc/lmhosts
308 %attr(-,root,root) %config(noreplace) /etc/smb.conf
309 %attr(-,root,root) %config(noreplace) /etc/smbusers
310 %attr(-,root,root) /etc/rc.d/init.d/smb
311 %attr(-,root,root) /etc/logrotate.d/samba
312 %attr(-,root,root) /etc/pam.d/samba
313 %attr(-,root,root) /etc/codepages/src/codepage_def.437
314 %attr(-,root,root) /etc/codepages/src/codepage_def.737
315 %attr(-,root,root) /etc/codepages/src/codepage_def.850
316 %attr(-,root,root) /etc/codepages/src/codepage_def.852
317 %attr(-,root,root) /etc/codepages/src/codepage_def.861
318 %attr(-,root,root) /etc/codepages/src/codepage_def.866
319 %attr(-,root,root) /etc/codepages/src/codepage_def.932
320 %attr(-,root,root) /etc/codepages/src/codepage_def.936
321 %attr(-,root,root) /etc/codepages/src/codepage_def.949
322 %attr(-,root,root) /etc/codepages/src/codepage_def.950
323 %attr(-,root,root) /usr/man/man1/smbstatus.1
324 %attr(-,root,root) /usr/man/man1/smbclient.1
325 %attr(-,root,root) /usr/man/man1/make_smbcodepage.1
326 %attr(-,root,root) /usr/man/man1/smbrun.1
327 %attr(-,root,root) /usr/man/man1/smbtar.1
328 %attr(-,root,root) /usr/man/man1/testparm.1
329 %attr(-,root,root) /usr/man/man1/testprns.1
330 %attr(-,root,root) /usr/man/man5/smb.conf.5
331 %attr(-,root,root) /usr/man/man7/samba.7
332 %attr(-,root,root) /usr/man/man8/smbd.8
333 %attr(-,root,root) /usr/man/man8/nmbd.8
334 %attr(-,root,root) /usr/man/man8/smbpasswd.8
335 %attr(-,root,nobody) %dir /home/samba
336 %attr(-,root,root) %dir /etc/codepages
337 %attr(-,root,root) %dir /etc/codepages/src
338 %attr(-,root,root) %dir /var/lock/samba
339 %attr(-,root,root) %dir /var/log/samba
340 %attr(1777,root,root) %dir /var/spool/samba