]> git.pld-linux.org Git - packages/nfs-utils.git/blame - nfs-utils.spec
- no point hacking heimdal, just fix it here
[packages/nfs-utils.git] / nfs-utils.spec
CommitLineData
4af864e6 1# TODO
6a066142
JR
2# - should unmount /proc/fs/nfsd and /var/lib/nfs/rpc_pipefs at package
3# uninstall (or in service nfs stop)
5b70fba4 4#
7e12652e
JR
5# Conditional build:
6%bcond_with heimdal # build with Heimdal Kerberos instead of MIT
7#
cb62e4f3 8Summary: Kernel NFS server
ada059e5
ER
9Summary(pl.UTF-8): Działający na poziomie jądra serwer NFS
10Summary(pt_BR.UTF-8): Os utilitários para o cliente e servidor NFS do Linux
11Summary(ru.UTF-8): Утилиты для NFS и демоны поддержки для NFS-сервера ядра
12Summary(uk.UTF-8): Утиліти для NFS та демони підтримки для NFS-сервера ядра
cb62e4f3 13Name: nfs-utils
6d53f946 14Version: 1.2.0
97e076ab 15Release: 2.2
a243ee1c 16License: GPL v2
cb62e4f3 17Group: Networking/Daemons
655ec3a4 18Source0: http://www.kernel.org/pub/linux/utils/nfs/%{name}-%{version}.tar.bz2
6d53f946 19# Source0-md5: 779cf81044e92cb51ad590960e7b3671
b8d3abb0
JR
20#Source1: ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/nfs.doc.tar.gz
21Source1: nfs.doc.tar.gz
9a665736 22# Source1-md5: ae7db9c61c5ad04f83bb99e5caed73da
1bc6345f
JR
23Source2: nfs.init
24Source3: nfslock.init
75e03a22
JR
25Source4: nfsfs.init
26Source5: rpcidmapd.init
27Source6: rpcgssd.init
28Source7: rpcsvcgssd.init
29Source8: nfs.sysconfig
30Source9: nfslock.sysconfig
31Source10: nfsfs.sysconfig
12b255f7
JR
32Patch0: %{name}-install.patch
33Patch1: %{name}-statdpath.patch
97e076ab
JR
34Patch2: %{name}-subsys.patch
35Patch3: %{name}-union-mount.patch
36Patch4: %{name}-kerberos-ac.patch
37Patch5: %{name}-no_libgssapi.patch
38Patch6: %{name}-pkgconfig_ac.patch
39Patch7: %{name}-heimdal_functions.patch
e406194a 40URL: http://nfs.sourceforge.net/
385bb326 41BuildRequires: autoconf >= 2.59
4f5693d9 42BuildRequires: automake
6b12a6b6 43BuildRequires: cpp
7e12652e
JR
44%if %{with heimdal}
45BuildRequires: heimdal-devel >= 1.0
46%else
b54d7789 47BuildRequires: krb5-devel >= 1.6
7e12652e
JR
48BuildRequires: libgssglue-devel >= 0.1
49%endif
7c78342b 50BuildRequires: libblkid-devel
51dfb953 51BuildRequires: libevent-devel >= 1.2
12b255f7 52BuildRequires: libnfsidmap-devel >= 0.21-3
e8e7d0e7 53BuildRequires: librpcsecgss-devel >= 0.16
12b255f7 54BuildRequires: libtirpc-devel >= 1:0.1.10-4
f45e2dff 55BuildRequires: libtool
4ae359cd 56BuildRequires: libwrap-devel
385bb326 57BuildRequires: pkgconfig
4f5693d9 58BuildRequires: sed >= 4.0
a243ee1c
JB
59# lucid context fields mismatch with current version of spkm3.h
60BuildConflicts: gss_mech_spkm3-devel
8a834723 61Requires(post): fileutils
c5c607cb
ER
62Requires(post): sed >= 4.0
63Requires(post,preun): /sbin/chkconfig
64Requires: %{name}-common = %{version}-%{release}
c9647bd9 65Requires: rpcbind >= 0.1.7
4ec71bdf 66Requires: rc-scripts >= 0.4.1.5
c5c607cb 67Requires: setup >= 2.4.6-7
1bc6345f 68Provides: nfsdaemon
8a834723
JB
69Obsoletes: knfsd
70Obsoletes: nfs-server
c5c607cb 71Obsoletes: nfsdaemon
8a834723 72Conflicts: kernel < 2.2.5
97e076ab 73Conflicts: krb5-common < 1.7
1bc6345f 74ExcludeArch: armv4l
d48d450b 75BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
1bc6345f
JR
76
77%description
0011b22d 78This is the *new* kernel NFS server and related tools. It provides a
79much higher level of performance than the traditional Linux user-land
80NFS server.
1bc6345f 81
d44bd88d
JR
82%description -l pl.UTF-8
83To jest *nowy* działający na poziomie jądra serwer NFS oraz związane z
84nim narzędzia. Serwer ten dostarcza znacznie większą wydajność niż
85tradycyjny, działający na poziomie użytkownika serwer NFS.
1bc6345f 86
d44bd88d
JR
87%description -l pt_BR.UTF-8
88O pacote nfs-utils provê os utilitários para o cliente e servidor NFS
f8d9e6d5 89do Linux.
d48d450b 90
d44bd88d
JR
91%description -l ru.UTF-8
92Пакет nfs-utils предоставляет демона для NFS-сервера, включенного в
93ядро, и сопутствующие утилиты, которые обеспечивают намного большую
94производительность, чем традиционные Linux NFS-сервера, используемые
95большинством пользователей.
011b72fa 96
d44bd88d
JR
97%description -l uk.UTF-8
98Пакет nfs-utils надає демона для NFS-сервера, вбудованого в ядро, та
99супутні утиліти, які забезпечують набагато більшу продуктивність, ніж
100традиційні Linux NFS-сервери, які використовує більшість користувачів.
011b72fa 101
1bc6345f 102%package clients
a4d8ac59 103Summary: Clients for connecting to a remote NFS server
ada059e5 104Summary(pl.UTF-8): Klienci do łączenia się ze zdalnym serwerem NFS
1bc6345f 105Group: Networking
8a834723 106Requires(post,preun): /sbin/chkconfig
365015e3 107Requires: %{name}-common = %{version}-%{release}
c5c607cb
ER
108Requires: psmisc
109Requires: rc-scripts
a4d8ac59 110Provides: nfs-server-clients
c5c607cb 111Provides: nfsclient
523e5742 112Obsoletes: knfsd-clients
c5c607cb
ER
113Obsoletes: nfs-server-clients
114Obsoletes: nfsclient
97e076ab 115Conflicts: krb5-common < 1.7
1bc6345f
JR
116
117%description clients
118The nfs-server-clients package contains the showmount program.
119Showmount queries the mount daemon on a remote host for information
0011b22d 120about the NFS (Network File System) server on the remote host. For
1bc6345f 121example, showmount can display the clients which are mounted on that
0011b22d 122host. This package is not needed to mount NFS volumes.
1bc6345f 123
d44bd88d
JR
124%description clients -l pl.UTF-8
125Pakiet zawiera program showmount służący do odpytywania serwera NFS.
0fb1eec5 126Showmount pyta demona na zdalnej maszynie o informacje NFS na zdalnym
d44bd88d 127hoście. Na przykład, showmount potrafi pokazać klientów, którzy są
26aacf7e 128zamountowani na tym serwerze. Ten pakiet nie jest konieczny do
d44bd88d 129zamountowania zasobów NFS.
1bc6345f
JR
130
131%package lock
a4d8ac59 132Summary: Programs for NFS file locking
ada059e5 133Summary(pl.UTF-8): Programy do obsługi blokowania plików poprzez NFS (lock)
d8de81c5 134Group: Networking
8a834723 135Requires(post,preun): /sbin/chkconfig
c9647bd9 136Requires: rpcbind >= 0.1.7
c5c607cb 137Requires: rc-scripts
0048f570
JR
138Provides: group(rpcstatd)
139Provides: user(rpcstatd)
1bc6345f 140Provides: nfslockd
8a834723 141Obsoletes: knfsd-lock
c5c607cb 142Obsoletes: nfslockd
1bc6345f
JR
143
144%description lock
145The nfs-lock pacage contains programs which support the NFS file lock.
146Install nfs-lock if you want to use file lock over NFS.
147
d44bd88d
JR
148%description lock -l pl.UTF-8
149Ten pakiet zawiera programy umożliwiające wykonywanie blokowania
150plików (file locking) poprzez NFS.
1bc6345f 151
365015e3
AM
152%package common
153Summary: Common programs for NFS
ada059e5 154Summary(pl.UTF-8): Wspólne programy do obsługi NFS
365015e3 155Group: Networking
12b255f7 156Requires: libnfsidmap >= 0.21-3
991bb874 157Conflicts: mount < 2.13-0.pre7.1
365015e3
AM
158
159%description common
160Common programs for NFS.
161
d44bd88d
JR
162%description common -l pl.UTF-8
163Wspólne programy do obsługi NFS.
365015e3 164
1bc6345f 165%prep
d01055c8 166%setup -q -a1
1bc6345f 167%patch0 -p1
f4ada66b 168%patch1 -p1
97e076ab 169%patch2 -p1
b54d7789 170%patch3 -p1
655ec3a4 171%patch4 -p1
97e076ab 172%{?with_heimdal:%patch5 -p1}
7e12652e 173%patch6 -p1
97e076ab 174%patch7 -p0
c4a4910b
JB
175
176# conflict with GNU stdio extension
177sed -i -e 's/dprintf/dbgprintf/' support/include/ha-callout.h utils/statd/*.[ch]
538d5113 178
1bc6345f 179%build
82ae84d5
AG
180%{__libtoolize}
181%{__aclocal} -I aclocal
e8e7d0e7 182%{__autoconf}
82ae84d5
AG
183%{__autoheader}
184%{__automake}
1bc6345f 185%configure \
1bc6345f 186 --enable-nfsv3 \
655ec3a4
JR
187 --enable-nfsv4 \
188 --enable-gss \
189 --enable-mount \
190 --enable-tirpc \
191 --enable-ipv6 \
f45e2dff 192 --with-statedir=/var/lib/nfs \
655ec3a4
JR
193 --with-statduser=rpcstatd \
194 --with-start-statd=%{_sbindir}/start-statd \
195 --with-tcp-wrappers \
7e12652e
JR
196%if %{with heimdal}
197 --with-krb5-config=%{_bindir}/krb5-config
198%else
655ec3a4 199 --with-krb5=%{_prefix}
7e12652e 200%endif
4f5693d9 201
cee80e09 202%{__make} all
1bc6345f
JR
203
204%install
205rm -rf $RPM_BUILD_ROOT
655ec3a4
JR
206install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \
207 $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery}
1bc6345f 208
e4300aca 209%{__make} install \
4f5693d9 210 DESTDIR=$RPM_BUILD_ROOT
1bc6345f 211
6a066142
JR
212cat >$RPM_BUILD_ROOT%{_sbindir}/start-statd <<EOF
213#!/bin/sh
214# mount.nfs calls this script when mounting a filesystem with locking
215# enabled, but when statd does not seem to be running (based on
216# /var/run/rpc.statd.pid).
217exec /sbin/service nfslock start
218EOF
219
220sed -e "s|#!/bin/bash|#!/bin/sh|" utils/gssd/gss_destroy_creds > $RPM_BUILD_ROOT%{_sbindir}/gss_destroy_creds
221
0048f570 222mv $RPM_BUILD_ROOT%{_sbindir}/rpcdebug $RPM_BUILD_ROOT/sbin
4f5693d9 223
1bc6345f
JR
224install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfs
225install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfslock
75e03a22
JR
226install %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfsfs
227install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/idmapd
228install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/gssd
229install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/svcgssd
230install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/nfsd
231install %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/nfslock
232install %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/nfsfs
1bc6345f 233
d48d450b 234> $RPM_BUILD_ROOT%{_var}/lib/nfs/rmtab
235> $RPM_BUILD_ROOT%{_sysconfdir}/exports
1bc6345f 236
727dd6c6 237rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,sm-notify}.8
655ec3a4 238rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{svcgssd,gssd,idmapd}.8
1bc6345f
JR
239echo ".so mountd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.mountd.8
240echo ".so nfsd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.nfsd.8
1bc6345f 241echo ".so statd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.statd.8
6a066142 242echo ".so sm-notify.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.sm-notify.8
4f5693d9
JR
243echo ".so gssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.gssd.8
244echo ".so idmapd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.idmapd.8
245echo ".so svcgssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.svcgssd.8
1bc6345f 246
9df625b5 247touch $RPM_BUILD_ROOT/var/lib/nfs/xtab
1bc6345f 248
959e2a35
AM
249ln -sf /bin/true $RPM_BUILD_ROOT/sbin/fsck.nfs
250
11fad0cc 251cp -a nfs html
1bc6345f
JR
252
253%clean
254rm -rf $RPM_BUILD_ROOT
255
256%post
f511a355 257/sbin/chkconfig --add nfs
c5c607cb 258%service nfs restart "NFS daemon"
809898a3 259/sbin/chkconfig --add svcgssd
6a066142 260%service svcgssd restart "RPC svcgssd"
1bc6345f
JR
261
262%preun
f511a355 263if [ "$1" = "0" ]; then
c5c607cb 264 %service nfs stop
f511a355 265 /sbin/chkconfig --del nfs
809898a3
JR
266 %service svcgssd stop
267 /sbin/chkconfig --del svcgssd
f511a355 268fi
1bc6345f 269
e661c6c4 270%post clients
f511a355 271/sbin/chkconfig --add nfsfs
c5c607cb 272%service nfsfs restart
809898a3 273/sbin/chkconfig --add gssd
6a066142 274%service gssd restart "RPC gssd"
e661c6c4
JR
275
276%preun clients
f511a355 277if [ "$1" = "0" ]; then
c5c607cb 278 %service nfsfs stop
f511a355 279 /sbin/chkconfig --del nfsfs
809898a3
JR
280 %service gssd stop
281 /sbin/chkconfig --del gssd
f511a355 282fi
e661c6c4 283
0048f570
JR
284%pre lock
285%groupadd -g 191 rpcstatd
286%useradd -u 191 -d /var/lib/nfs/statd -s /bin/false -c "RPC statd user" -g rpcstatd rpcstatd
287
1bc6345f 288%post lock
f511a355 289/sbin/chkconfig --add nfslock
b474bf5e 290%service nfslock restart "RPC statd"
1bc6345f
JR
291
292%preun lock
f511a355 293if [ "$1" = "0" ]; then
c5c607cb 294 %service nfslock stop
f511a355 295 /sbin/chkconfig --del nfslock
296fi
1bc6345f 297
0048f570
JR
298%postun lock
299if [ "$1" = "0" ]; then
300 %userremove rpcstatd
301 %groupremove rpcstatd
302fi
303
809898a3
JR
304%post common
305/sbin/chkconfig --add idmapd
6a066142 306%service idmapd restart "RPC idmapd"
809898a3
JR
307
308%preun common
309if [ "$1" = "0" ]; then
310 %service idmapd stop
311 /sbin/chkconfig --del idmapd
312fi
809898a3 313
6f71fa60 314%triggerpostun -- %{name} < 1.1.0-0.rc1.1
0048f570 315/sbin/chkconfig nfs reset
6a066142 316/sbin/chkconfig svcgssd reset
0048f570 317
6f71fa60 318%triggerpostun lock -- %{name}-lock < 1.1.0-0.rc1.1
0048f570
JR
319/sbin/chkconfig nfslock reset
320
6a066142 321%triggerpostun clients -- %{name}-clients < 1.1.0-0.rc1.1
11fad0cc
ER
322if [ -f /etc/sysconfig/nfsclient.rpmsave ]; then
323 mv -f /etc/sysconfig/nfsfs{,.rpmnew}
324 mv -f /etc/sysconfig/nfsclient.rpmsave /etc/sysconfig/nfsfs
325fi
0048f570 326/sbin/chkconfig nfsfs reset
6a066142 327/sbin/chkconfig gssd reset
6a066142 328
6f71fa60 329%triggerpostun common -- %{name}-common < 1.1.0-0.rc1.1
6a066142 330/sbin/chkconfig idmapd reset
11fad0cc 331
1bc6345f
JR
332%files
333%defattr(644,root,root,755)
4f5693d9 334%doc ChangeLog README html
1bc6345f 335%attr(755,root,root) /sbin/rpcdebug
959e2a35 336%attr(755,root,root) /sbin/fsck.nfs
1bc6345f
JR
337%attr(755,root,root) %{_sbindir}/exportfs
338%attr(755,root,root) %{_sbindir}/rpc.mountd
339%attr(755,root,root) %{_sbindir}/rpc.nfsd
340%attr(755,root,root) %{_sbindir}/nfsstat
1bc6345f
JR
341
342%attr(754,root,root) /etc/rc.d/init.d/nfs
343
5b70fba4
JB
344%attr(664,root,fileshare) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/exports
345%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsd
346%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/xtab
347%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/etab
348%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/rmtab
1bc6345f 349
8b926d92
AG
350%{_mandir}/man5/exports.5*
351%{_mandir}/man7/nfsd.7*
1bc6345f
JR
352%{_mandir}/man8/exportfs.8*
353%{_mandir}/man8/mountd.8*
354%{_mandir}/man8/nfsd.8*
355%{_mandir}/man8/nfsstat.8*
356%{_mandir}/man8/rpc.mountd.8*
357%{_mandir}/man8/rpc.nfsd.8*
0048f570 358%{_mandir}/man8/rpcdebug.8*
0048f570 359%attr(754,root,root) /etc/rc.d/init.d/svcgssd
ea4a6f67
AM
360%attr(755,root,root) %{_sbindir}/rpc.svcgssd
361%{_mandir}/man8/*svcgss*
ea4a6f67 362
1bc6345f
JR
363%files lock
364%defattr(644,root,root,755)
0048f570 365%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd
655ec3a4
JR
366%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm
367%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm.bak
368%attr(600,rpcstatd,rpcstatd) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/statd/state
1bc6345f 369%attr(755,root,root) %{_sbindir}/rpc.statd
100fd575
JR
370%attr(755,root,root) %{_sbindir}/sm-notify
371%attr(755,root,root) %{_sbindir}/start-statd
1bc6345f 372%attr(754,root,root) /etc/rc.d/init.d/nfslock
5b70fba4 373%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfslock
100fd575 374%{_mandir}/man8/*statd.8*
6a066142 375%{_mandir}/man8/*sm-notify.8*
1bc6345f
JR
376
377%files clients
378%defattr(644,root,root,755)
e661c6c4 379%attr(754,root,root) /etc/rc.d/init.d/nfsfs
11fad0cc 380%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsfs
1bc6345f
JR
381%attr(755,root,root) %{_sbindir}/showmount
382%{_mandir}/man8/showmount.8*
0048f570 383%attr(4755,root,root) /sbin/mount.nfs
0048f570 384%attr(4755,root,root) /sbin/umount.nfs
655ec3a4 385%attr(4755,root,root) /sbin/mount.nfs4
0048f570
JR
386%attr(4755,root,root) /sbin/umount.nfs4
387%{_mandir}/man8/*mount.nfs.8*
0048f570 388%attr(754,root,root) /etc/rc.d/init.d/gssd
27439ad6 389%attr(755,root,root) %{_sbindir}/rpc.gssd
ea4a6f67
AM
390%{_mandir}/man8/rpc.gssd*
391%{_mandir}/man8/gssd*
ea4a6f67 392
365015e3
AM
393%files common
394%defattr(644,root,root,755)
8d72ec18
AM
395%attr(755,root,root) %dir %{_var}/lib/nfs
396%attr(755,root,root) %dir %{_var}/lib/nfs/rpc_pipefs
37308b8e 397%attr(755,root,root) %dir %{_var}/lib/nfs/v4recovery
0048f570 398%{_mandir}/man5/nfs*
0048f570 399%attr(754,root,root) /etc/rc.d/init.d/idmapd
27439ad6
JR
400%attr(755,root,root) %{_sbindir}/gss_*
401%attr(755,root,root) %{_sbindir}/rpc.idmapd
365015e3 402%{_mandir}/man[58]/*idmap*
This page took 0.117752 seconds and 4 git commands to generate.