more syncs with SAMBA_2_2
[kai/samba.git] / packaging / Caldera / OpenLinux / samba2.spec.tmpl
1 %define Version         PVERSION
2 %define date            PRELEASE
3 %define Vendor          Caldera
4 %define Dist            OpenLinux
5 %define EtcSamba        /etc/samba.d
6 %define _defaultdocdir  /usr/doc
7 %define LSBservedir     /srv/samba
8
9 Name            : samba
10 Version         : %{Version}
11 Release         : %{date}
12 Group           : Server/Network
13
14 Summary        : Samba SMB client and server.
15 Summary(de)    : Samba SMB Client und Server.
16 Summary(es)    : Cliente y servidor SMB Samba.
17 Summary(fr)    : Client et serveur SMB Samba.
18 Summary(it)    : Client e server SMB.
19 Summary(pt)    : Cliente e servidor SMB Samba.
20
21 Copyright       : Andrew Tridgell, John H Terpstra; GPL Version 2
22 Packager        : Klaus Singvogel <klaus@caldera.de>
23 #Icon            : Caldera-daemon.gif
24 URL             : http://samba.org/samba
25
26 Requires        : libpam >= 0.66, SysVinit-scripts >= 1.04-6
27
28
29 BuildRoot       : /tmp/%{Name}-%{Version}
30
31 Source: ftp://ftp.samba.org/pub/samba/%{Name}-%{Version}.tar.gz
32 #Patch0: %{Name}-%{Version}-smbmount.patch
33 #Patch1: %{Name}-%{Version}-install.patch
34 #Patch2: %{Name}-%{Version}-smbconf.patch
35
36
37 %Package doc
38 Group           : Server/Network
39
40 Summary        : Documentation on SAMBA.
41 Summary(de)    : Die Dokumentation für Samba.
42 Summary(es)    : Documentation de SAMBA.
43 Summary(fr)    : Documentation pour Samba.
44 Summary(it)    : Documentazione su SAMBA.
45 Summary(pt)    : Documentação sobre o SAMBA.
46
47
48 %Package -n smbfs
49 Group           : System/Network
50
51 Summary         : Mount and unmount commands for SMB filesystems (smbfs).
52 Summary(de)    : Mount und unmount für SMB-Dateisysteme (smbfs).
53 Summary(es)    : Comandos de montaje y desmontaje de sistemas de ficheros SMB (smbfs).
54 Summary(fr)    : Commandes pour le montage et le démontage des systèmes de fichiers SMB (smbfs).
55 Summary(it)    : Comandi per montare e smontare i file system SMB (smbfs).
56 Summary(pt)    : Comandos mount e unmount para o sistema de ficheiros SMB (smbfs).
57
58
59
60 %Package -n swat
61 Group           : Administration/Network
62 Requires        : setup >= 2.0-2, tcp_wrappers
63
64 Summary        : Samba Web Administration Tool.
65 Summary(de)    : Das Samba Web Administrationstool.
66 Summary(es)    : Utilidad de administración Samba.
67 Summary(fr)    : Outil d'administration Internet pour Samba.
68 Summary(it)    : Strumento per l'amministrazione di Samba via Web.
69 Summary(pt)    : Ferramenta Web de administração de Samba (Samba Web Administration Tool).
70
71
72 %Description
73 Samba provides an SMB server which can be used to provide network
74 services to SMB (sometimes called "Lan Manager") clients, including
75 various versions of MS Windows, OS/2, and other Linux machines.
76
77 %Description -l de
78 Samba stellt einen SMB Server zur Verfügung, mit dem Netzwerkdienste für SMB
79 (auch "Lan Manager" genannt) Clients bereitgestellt werden können. Dies
80 schließt verschiedene Versionen von MS Windows, OS/2 und andere Linux
81 Maschinen ein.
82
83 %Description -l es
84 Samba dispone de un servidor SMB que puede utilizarse para proporcionar
85 servicios de red a clientes SMB (a veces conocido como "Lan Manager"),
86 incluyendo varias versiones de MS Windows, OS/2 y otras máquinas Linux.
87
88 %Description -l fr
89 Samba fournit un serveur SMB qui peut être utilisé pour fournir des services
90 de réseau aux clients SMB (parfois appelés "Lan Manager"), comportant
91 diverses versions de MS Windows, OS/2 et d'autres machines Linux.
92
93 %Description -l it
94 Samba fornisce un server SMB che può essere usato per fornire servizi
95 di rete a client SMB (talvolta chiamato "Lan Manager"), comprese varie
96 versioni di MS Windows, OS/2 e altre macchine Linux.
97
98 %Description -l pt
99 O Samba fornece um servidor de SMB que pode ser usado para fornecer serviços de
100 rede aos clientes de SMB (denominado por vezes como "Lan Manager"), incluindo
101 várias versões do Windows, OS/2 e outras máquinas Linux.
102
103 %Description doc
104 This package contains extensive SAMBA documentation, including a FAQ,
105 comprehensive usage documentation, and a number of examples.
106
107 %Description -l de doc
108 Dieses Paket enthält eine ausführliche SAMBA Dokumentation, inklusive
109 einer FAQ, umfassender Gebrauchsdokumentation und einer Reihe von
110 Beispielen.
111
112 %Description -l es doc
113 Este paquete contiene una extensa documentación sobre SAMBA, incluyendo
114 FAQ (Preguntas de Uso Frecuente), documentación sobre el uso y algunos
115 ejemplos.
116
117 %Description -l fr doc
118 Ce paquetage contient une documentation complète sur Samba, y compris
119 une FAQ détaillée de son utilisation et un certain nombre d'exemples.
120
121 %Description -l it doc
122 Questo pacchetto contiene la documentazione su SAMBA tra cui una FAQ
123 una esaustiva documentazione d'uso e un certo numero di esempi.
124
125 %Description -l pt doc
126 Este pacote contém alguma documentação extensa sobre o SAMBA, incluindo a FAQ,
127 alguma documentação compreensiva sobre a utilização e alguns exemplos.
128
129 %Description -n smbfs
130 This package includes the tools necessary to mount filesystems from
131 SMB servers.
132
133 %Description -l de -n smbfs
134 Dieses Paket enthält die nötigen Tools, um Dateisysteme von SMB-Servern
135 zu mounten.
136
137 %Description -l es -n smbfs
138 este paqeute incluye las herramientas necesarias para montar sistemas de
139 ficheros de servidores SMB.
140
141 %Description -l fr -n smbfs
142 Ce paquetage contient les outils nécessaires pour monter des systèmes
143 de fichiers sur des serveurs SMB.
144
145 %Description -l it -n smbfs
146 Questo pacchetto contiene gli strumenti necessari per montare filesystem
147 da server SMB.
148
149 %Description -l pt -n smbfs
150 Este pacote contém as ferramentas necessárias para montar sistema de
151 ficheiros de servidores SMB.
152
153 %Description -n swat
154 SWAT allows a Samba administrator to configure the complex smb.conf
155 file via a Web browser.  It also provides links to all the configurable
156 options in the smb.conf file allowing an administrator to easily look
157 up the effects of any change.
158
159 %Description -l de -n swat
160 Mit SWAT kann ein Samba-Administrator die komplexe smb.conf
161 Datei mit Hilfe eines Web-Browsers konfigurieren.  Es stellt auch Links zu
162 allen konfigurierbaren Optionen in der smb.conf Datei bereit, wodurch ein
163 Administrator die Auswirkungen einer Änderung leicht nachvollziehen kann.
164
165 %Description -l es -n swat
166 SWAT permite a un administrador de Samba configurar el complejo fichero
167 smb.conf mediante una navegador web. También proporciona enlaces a todas las
168 opciones configurables en el fichero smb.conf, permitiendo al administrador
169 comprobar fácilmente los efectos de cualquier cambio.
170
171 %Description -l fr -n swat
172 SWAT permet à un administrateur Samba de configurer le fichier smb.conf
173 complexe via un navigateur Web. Il fournit également des liens d'aide pour
174 toutes les options configurables dans le fichier smb.conf permettant à un
175 administrateur de consulter aisément les effets d'une modification.
176
177 %Description -l it -n swat
178 SWAT permette ad un amministratore Samba di configurare il complesso file
179 smb.conf attraverso un browser Web. SWAT ha anche dei link di aiuto per
180 tutte le opzioni di configurazione del file smb.conf.
181
182 %Description -l pt -n swat
183 O SWAT permite a um administrador de Samba configurar o complexo ficheiro
184 smb.conf através de uma interface Web. Fornece também referências para
185 todas as opções configuraveis no smb.conf, permitindo a um admnistrador
186 verificar rapidamente o efeite de qualquer alteração.
187
188
189 %Prep
190 %setup
191 #%patch0 -p1
192 #%patch1 -p1
193 #%patch2 -p1
194
195 # instead of patch (to help configuration) ...   ;^)
196 %{fixUP} -vbT source/Makefile.in -e '
197   s:we don.t use sbindir because we want:if you want : +
198   s:(the previous releases of Samba):$1, please use: +
199   s:(SBINDIR\s*=\s*\@)b:# ./configure --sbindir=\\\$(BINDIR)\n${1}sb: +
200   s:/log\.(\S+):/log/samba.d/${1}d: +
201   s:(PASSWD_PROGRAM\s*=\s*)(/bin):$1/usr$2:
202 '
203 #  s:^(LIBS\s*=):AUTH_$1: +
204 #  s:((CLIENT|CUPS|NMBD|SMBD|SWAT|RPCCLIENT|SMBPASSWD|STATUS|TESTPRNS|TESTPARM)_OBJ\) )(\$\(LDF):$1\$(AUTH_LIBS) $3:
205
206 for i in {cvs.,change-}log; do [ ! -f ../$i ] || mv ../$i source; done
207
208 mv swat/help/welcome.html docs
209 %{fixUP} -vT docs -e '
210   s:/usr/local/samba/bin/(smb(client|run)):/usr/bin/$1:g +
211   s:/usr/local/samba/bin/((s|n)mbd|swat|smbstatus):/usr/sbin/$1:g +
212   s:/usr/local/samba/var/locks:/var/lock/samba.d: +
213   s:/usr/local/samba/(var|lib)/log:/var/log/samba.d/smb: +
214   s:/usr/local/samba/swat:/usr/share/samba/swat:g +
215   s:/usr/local/samba/lib:%{EtcSamba}:g +
216   s:/usr/local/samba/printers:/var/spool/samba:g +
217   s:/usr/local/samba/private/smbpasswd:/usr/bin/smbpasswd:g +
218   s:/usr/local/samba/netlogon:%{LSBservedir}/netlogon:g;
219 '
220 mv docs/welcome.html swat/help
221 for i in docs/*/smb.conf.5*; do
222   %{fixUP} -vT $i -e '
223     s:users\.map:smbusers:g +
224     s:SAMBA_INSTALL_DIRECTORY/lib:%{EtcSamba}: +
225     s:None \(set in compile\)\.:(see above).: +
226     s:/usr/local/:/usr/:g;
227   '
228 done
229 %{fixUP} -vT docs/textdocs/Faxing.txt -e '
230   s:/usr/local/etc/:/etc/: +
231   s:/usr/local/:/usr/:;
232 '
233 %{fixUP} -vT docs/docbook/projdoc/ENCRYPTION.sgml -e '
234   s:/usr/local/samba/private:%{EtcSamba}:g +
235   s:mksmbpasswd.sh:mksmbpasswd:g +
236   s:the Samba source directory:/usr/bin:;
237 '
238 %{fixUP} -vT docs/htmldocs/make_smbcodepage.1.html -e '
239   s:/usr/local/samba:/usr/bin/:g;
240 '
241 for i in htmldocs/DOMAIN_MEMBER.html htmldocs/Samba-HOWTO-Collection.html \
242          htmldocs/samba-pdc-faq.html htmldocs/samba-pdc-howto.html \
243          htmldocs/smbclient.1.html htmldocs/smbd.8.html \
244          docbook/projdoc/DOMAIN_MEMBER.sgml htmldocs/DOMAIN_MEMBER.html \
245          docbook/faq/samba-pdc-faq.sgml docbook/howto/samba-pdc-howto.sgml \
246          docbook/manpages/smbclient.1.sgml docbook/manpages/smbd.8.sgml \
247          docbook/projdoc/ENCRYPTION.sgml manpages/smbclient.1 manpages/smbd.8 ; do
248 %{fixUP} -vT docs/$i -e '
249     s:/usr/local/samba/private/FOREST.SLEEPY.SID:/var/lock/samba.d/FOREST.SLEEPY.SID: +
250     s:/usr/local/samba/private:/usr/bin:g +
251     s:/usr/local/samba/bin:/usr/bin:g +
252     s:/usr/local/sbin:/usr/sbin:g +
253     s:/usr/local/src/samba:/usr/src/samba:g ;'
254 done
255 %{fixUP} -vT docs/docbook/manpages/make_smbcodepage.1.sgml -e '
256   s:/usr/local/samba:/usr/bin:g ;
257 '
258 %{fixUP} -vT docs/htmldocs/samba-pdc-faq.html -e '
259   s:/usr/local/src:/usr/src:g ;
260 '
261 # End of DirtyHack(TM)
262
263
264 %Build
265 cd source
266 autoreconf
267
268 CFLAGS="$RPM_OPT_FLAGS" LDFLAGS="-s" ./configure \
269         --prefix='$(DESTDIR)/usr' \
270         --localstatedir='$(DESTDIR)/var' \
271         --libdir='$(DESTDIR)%{EtcSamba}' \
272         --with-privatedir='$(LIBDIR)' \
273         --with-lockdir='$(DESTDIR)/var/lock/samba.d' \
274         --with-swatdir='$(DESTDIR)/usr/share/swat' \
275         --with-swatdir='$(DESTDIR)/usr/share/swat' \
276         --with-sambabook='$(DESTDIR)/usr/share/swat/using_samba' \
277         --with-configdir='$(DESTDIR)'%{EtcSamba} \
278         --with-codepagedir='$(DESTDIR)'/usr/share/samba/codepages \
279         --without-smbwrapper \
280         --with-smbmount \
281         --with-pam \
282        --with-pam_smbpass \
283         --with-netatalk \
284         --with-quotas \
285         --with-syslog \
286         --with-utmp 
287
288 make LOGFILEBASE=/var/log/samba.d all
289 make LOGFILEBASE=/var/log/samba.d nsswitch/libnss_wins.so
290 make LOGFILEBASE=/var/log/samba.d smbfilter debug2html
291 make LOGFILEBASE=/var/log/samba.d bin/smbspool
292
293
294 %Install
295 %{mkDESTDIR}
296 VVS=packaging/%{Vendor}/%{Dist}
297
298 mkdir -p $DESTDIR/etc/{{rc.d/init,logrotate,pam}.d,sysconfig/daemons,skel/Samba}
299 mkdir -p $DESTDIR/var/{lo{ck,g}/samba.d,spool/samba}
300 mkdir -p $DESTDIR/usr/share/swat/using_samba/{gifs,figs}
301 mkdir -p $DESTDIR/lib/security
302 mkdir -p $DESTDIR/%{LSBservedir}/{netlogon,profiles,Public}
303 mkdir -p $DESTDIR/usr/share/samba/codepages/src $DESTDIR/sbin
304
305 make -C source  install
306 make LOGFILEBASE=/var/log/samba.d -C source install
307
308 strip $DESTDIR/usr/bin/smb{mnt,umount}
309 #mv $DESTDIR/usr/bin/{make,add,conv}* $DESTDIR/usr/sbin
310
311 cp -p source/codepages/codepage_def.??? $DESTDIR/usr/share/samba/codepages/src
312
313 # Install the nsswitch library extension file
314 install -m 755 source/nsswitch/libnss_wins.so $DESTDIR/lib/libnss_wins.so.2.0
315 # Make link for wins resolver
316 ln -s libnss_wins.so.2.0 $DESTDIR/lib/libnss_wins.so.2
317 ln -s libnss_wins.so.2.0 $DESTDIR/lib/libnss_wins.so
318
319 # install -m 755 source/nsswitch/libnss_winbind.so $DESTDIR/lib/libnss_winbind.so.2.0
320 # # Make link for winbind resolver
321 # ln -s libnss_winbind.so.2.0 $DESTDIR/lib/libnss_winbind.so.2
322 # ln -s libnss_winbind.so.2.0 $DESTDIR/lib/libnss_winbind.so
323
324 # install -m 755 source/nsswitch/pam_winbind.so $DESTDIR/lib/security
325
326 # install -m 755 source/bin/wbinfo $DESTDIR/usr/bin
327
328 for f in debug2html smbfilter smbspool; do
329        install -m 755 source/bin/$f $DESTDIR/usr/sbin/$f
330 done
331
332 cp -p $VVS/samba.init $DESTDIR/etc/rc.d/init.d/samba
333 ln -s /etc/rc.d/init.d/samba $DESTDIR/usr/sbin
334
335 cp -p $VVS/smb.conf.sample $DESTDIR%{EtcSamba}/smb.conf.sample
336 cp -p $VVS/smb.conf $DESTDIR%{EtcSamba}/smb.conf
337 cp -p $VVS/smbusers $DESTDIR%{EtcSamba}
338 cp -p $VVS/smbprint $DESTDIR/usr/bin
339 #cp -p $VVS/smbadduser.perl $DESTDIR/usr/bin/smbadduser
340 #cp -p $VVS/make_smbpasswd.perl $DESTDIR/usr/bin/make_smbpasswd
341 #cp -p $VVS/convertsmbpasswd.perl $DESTDIR/usr/bin/convertsmbpasswd
342 #cp -p $VVS/updatesmbpasswd.perl $DESTDIR/usr/bin/updatesmbpasswd
343 cp -p $VVS/findsmb $DESTDIR/usr/bin
344 cp -p $VVS/samba.daemon $DESTDIR/etc/sysconfig/daemons/samba
345 cp -p $VVS/samba.pam $DESTDIR/etc/pam.d/samba
346 cp -p $VVS/samba.logrotate $DESTDIR/etc/logrotate.d/samba
347 cp -p $VVS/README.home $DESTDIR/etc/skel/Samba/README.txt
348 cp -p $VVS/README.Public $DESTDIR/%{LSBservedir}/Public/README.txt
349 cp -p $VVS/README.profiles $DESTDIR/%{LSBservedir}/profiles/README.txt
350
351 # Add PAM smbpass facility
352 mv $DESTDIR/usr/bin/pam_smbpass.so $DESTDIR/lib/security
353
354 for f in testparm testprns; do
355   ln -s $f $DESTDIR/usr/bin/smb$f
356   ln -s $f.1 $DESTDIR/usr/man/man1/smb$f.1
357 done
358 ln -s make_smbcodepage  $DESTDIR/usr/bin/mksmbcodepage
359 #ln -s make_smbpasswd $DESTDIR/usr/bin/mksmbpasswd
360 #ln -sf convert_smbpasswd $DESTDIR/usr/bin/convertsmbpasswd
361 ln -s ../usr/bin/smbmnt $DESTDIR/sbin/mount.smbfs
362
363 cat <<-'EoH' > $DESTDIR%{EtcSamba}/lmhosts
364         127.0.0.1 localhost
365 EoH
366
367
368 DOCD="$DESTDIR/%{_defaultdocdir}/samba-%{Version}"; mkdir -p $DOCD
369 ln -sf ../Copyrights/GPL-2.0  $DOCD/COPYING
370 cp -p README README-smbmount Manifest Read-Manifest-Now $DOCD
371 cp -p WHATSNEW.txt Roadmap $DOCD
372 cp -a docs examples $DOCD
373
374 mv $DOCD/docs/htmldocs/wfw_slip.htm $DOCD/docs/wfw_slip.html
375
376 rm -rf $DOCD/docs/{htmldocs,manpages,yodldocs}
377 rm -rf $DOCD/examples/{svr4-startup,printing}
378 rm -rf $DOCD/CVS $DOCD/*/CVS $DOCD/*/*/CVS $DOCD/*/*/*/CVS
379
380 cp -p swat/README $DOCD/README.swat
381
382 # This is the O'Reily Samba Book - on-line
383 for i in docs/htmldocs/using_samba/*.html
384 do
385 install -m644 $i $DESTDIR/usr/share/swat/using_samba
386 done
387 for i in docs/htmldocs/using_samba/figs/*.gif
388 do
389 install -m644 $i $DESTDIR/usr/share/swat/using_samba/figs
390 done
391 for i in docs/htmldocs/using_samba/gifs/*.gif
392 do
393 install -m644 $i $DESTDIR/usr/share/swat/using_samba/gifs
394 done
395
396 %{fixUP} -vT $DOCD/examples -e 's:/usr/local/bin/:/usr/bin/:g;'
397 %{fixUP} -vT $DESTDIR/etc/samba.d -e 's:\@samba_home\@:%{LSBservedir}:'
398
399 %{fixManPages}
400
401 %{mkLists} -c samba
402 cat << 'EOF' | %{mkLists} -d samba
403 Samba                                   base
404 %{LSBservedir}                          config-IGNORED
405 ^/(etc|var|home|tmp)                    config-IGNORED
406 swat                                    swat
407 %{_defaultdocdir}/samba-[^/]+/$         base
408 %{_defaultdocdir}/samba-                doc
409 tmp                                     IGNORED
410 man                                     IGNORED
411 @default@
412 EOF
413 cat << 'EOF' | %{mkLists} -f -a samba
414 \.old$                                  IGNORED
415 Samba/README.txt                        base
416 ^/etc                                   config-IGNORED
417 %{_defaultdocdir}/samba-[^/]+/(COPYING|README$) base
418 libnss_wins.so                          base
419 %{_defaultdocdir}/samba-[^/]+/(COPYING|README$) base
420 %{_defaultdocdir}/samba-                doc
421 smb(mount|mnt|umount)                   smbfs
422 mount.smbfs                             smbfs
423 swat                                    swat
424 @default@
425 EOF
426
427
428 %Clean
429 %{rmDESTDIR}
430
431
432 %Post
433 lisa --SysV-init install samba S91 3:4:5 K09 0:1:2:6
434
435
436 %Post -n swat
437 lisa --inetd install swat stream tcp nowait.400 root /usr/sbin/tcpd swat
438 perl -pi -e '$s=1 if /^swat/;
439   print "swat:ALL EXCEPT 127.0.0.1\n" if eof && ! $s' /etc/hosts.deny
440
441
442 %PostUn
443 lisa --SysV-init remove samba $1
444 # We want to remove the browse.dat and wins.dat files so they can not
445 # interfer with a new version of samba!
446 rm -f /var/lock/samba/{browse,wins}.dat 
447
448
449 %PostUn -n swat
450 lisa --inetd disable swat $1
451 [ -x /usr/sbin/swat ]||perl -ni -e '/^swat\s*\:/||print' /etc/hosts.deny
452
453
454 %Files -f files-samba-base
455 %defattr(-,root,root)
456 %config %attr(755,root,root) /etc/rc.d/init.d/samba
457 %config %attr(644,root,root) /etc/sysconfig/daemons/samba
458 %config %attr(644,root,root) /etc/pam.d/samba
459 %config %attr(644,root,root) /etc/logrotate.d/samba
460 %config %attr(-,root,root) %{EtcSamba}
461 %dir %attr(755,root,root) /var/lock/samba.d
462 %dir %attr(755,root,root) /var/log/samba.d
463 %dir %attr(1777,root,root) /var/spool/samba
464 %dir %attr(755,root,root) %{LSBservedir}
465 %dir %attr(755,root,root) %{LSBservedir}/netlogon
466 %dir %attr(755,root,root) %{LSBservedir}/profiles
467 %dir %attr(755,root,root) %{LSBservedir}/Public
468
469
470 %Files doc -f files-samba-doc
471 %defattr(-,root,root)
472
473
474 %Files -n smbfs -f files-samba-smbfs
475 %defattr(-,root,root)
476
477
478 %Files -n swat  -f files-samba-swat
479 %defattr(-,root,root)
480
481
482 %ChangeLog
483 * Mon Jan 01 1997 ...
484 $Id: samba2.spec.tmpl,v 1.3 2001/06/01 12:33:16 jerry Exp $