Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37580971
en ru br
ALT Linux repos
S:2.6.3-alt1
5.0: 1.1.4-alt2
4.1: 1.1.2-alt1.M41.1
+updates:1.1.2-alt1.M41.1
4.0: 1.0.10-alt5.M40.1
3.0: 1.0.7-alt3

Group :: Networking/Other
RPM: nfs

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%def_disable rquotad
%def_enable gss

Name: nfs
Version: 1.0.10
Release: alt5.M40.1
Serial: 1

Summary: The Linux NFS clients, utilities and server
License: GPL
Group: Networking/Other
Url: http://nfs.sourceforge.net/

Source0: %name-utils-%version.tar.bz2

BuildRequires: libevent-devel libnfsidmap-devel >= 0.18-alt1 libwrap-devel
%if_enabled gss
BuildRequires: libkrb5-devel libgssapi-devel >= 0.10-alt1 librpcsecgss-devel >= 0.14-alt1
%endif

%package clients
Summary: The Linux NFS client
Group: Networking/Other

PreReq: shadow-utils
PreReq: %name-utils = %serial:%version-%release
Requires(post): %post_service
Requires(preun): %preun_service

%package server
Summary: The Linux NFS server
Group: Networking/Other

PreReq: %name-clients = %serial:%version-%release
Requires(post): %post_service
Requires(preun): %preun_service

%package utils
Summary: The Linux NFS services utilities
Group: Networking/Other

PreReq: control
Requires: portmap >= 4.0
Conflicts: mount < 2.12r-alt2
Conflicts: nfs-clients = 1:1.0.10-alt2

%description
This package provides the Linux NFS utilities and server.
This package replaces the old knfsd package.

%description clients
This package provides the Linux NFS clients.

%description server
This package provides the Linux NFS server.

%description utils
This package provides the Linux NFS utilities,
including mount.nfs helper.

%prep
%setup -c

%build
[ -f ./autogen.sh ] && sh ./autogen.sh
%configure \
   --enable-mount \
   --enable-secure-statd \
   --with-statduser=rpcuser \
   %{subst_enable gss} \
   %{subst_enable rquotad} \
   #
%make_build

%install
%make_install DESTDIR=%buildroot install

cp -a altlinux/* %buildroot

ln -s idmapd.conf.5 %buildroot%_man5dir/rpc.idmapd.conf.5
install -p -m644 utils/idmapd/idmapd.conf %buildroot%_sysconfdir

mkdir -p %buildroot{/sbin,%_bindir,%_localstatedir/%name/{rpc_pipefs,v4recovery}}
mv %buildroot%_sbindir/rpc.{idmapd,statd} %buildroot/sbin/
mv %buildroot%_sbindir/showmount %buildroot%_bindir/

%if_enabled gss
mv %buildroot%_sbindir/rpc.gssd %buildroot/sbin/
%endif

mv %buildroot%_sbindir/{mount,umount}.* %buildroot/sbin/

#-------------------------------------------------------------------------------

%pre clients
%_sbindir/groupadd -r -f rpcuser &> /dev/null
%_sbindir/useradd -r -g rpcuser -d %_localstatedir/%name -s /dev/null -c 'RPC Service User' -n rpcuser &> /dev/null ||:
%_sbindir/groupadd -r -f nfsuser &> /dev/null
%_sbindir/useradd -r -g nfsuser -d /dev/null -s /dev/null -c 'NFS Service User' -n nfsuser &> /dev/null ||:

%pre utils
[ $1 -eq 1 ] || /usr/sbin/control-dump nfsmount

%post clients
%post_service %{name}lock
%post_service idmapd
%if_enabled gss
%post_service gssd
%endif

%post utils
[ $1 -eq 1 ] || /usr/sbin/control-restore nfsmount

%preun clients
%preun_service %{name}lock
%preun_service idmapd
%if_enabled gss
%preun_service gssd
%endif

%post server
%post_service %name

%preun server
%preun_service %name

#-------------------------------------------------------------------------------

%files server
%config %_initdir/%name

%_sbindir/exportfs
%_sbindir/nfsstat
%_sbindir/rpc.mountd
%_sbindir/rpc.nfsd

%_man5dir/exports.*
%_man7dir/nfsd.*
%_man8dir/exportfs.*
%_man8dir/nfsstat.*
%_man8dir/mountd.*
%_man8dir/rpc.mountd.*
%_man8dir/nfsd.*
%_man8dir/rpc.nfsd.*

%if_enabled gss
%_sbindir/rpc.svcgssd
%_man8dir/svcgssd.*
%_man8dir/rpc.svcgssd.*
%endif

%config(noreplace) %_localstatedir/%name/xtab
%config(noreplace) %_localstatedir/%name/etab
%config(noreplace) %_localstatedir/%name/rmtab
%dir %_localstatedir/%name/v4recovery

#-------------------------------------------------------------------------------

%files clients
%doc README
%dir %_localstatedir/%name
%dir %_localstatedir/%name/rpc_pipefs
%dir %attr(700,rpcuser,rpcuser) %_localstatedir/%name/statd
%dir %attr(700,rpcuser,rpcuser) %_localstatedir/%name/statd/sm
%dir %attr(700,rpcuser,rpcuser) %_localstatedir/%name/statd/sm.bak
%ghost %attr(700,rpcuser,rpcuser) %_localstatedir/%name/statd/state

%config(noreplace) %_sysconfdir/sysconfig/nfs
%config(noreplace) %_sysconfdir/idmapd.conf

%config %_initdir/idmapd
%config %_initdir/%{name}lock

/sbin/rpc.idmapd
/sbin/rpc.statd

%_man5dir/idmapd.conf.*
%_man5dir/rpc.idmapd.conf.*

%_man8dir/idmapd.*
%_man8dir/rpc.idmapd.*
%_man8dir/statd.*
%_man8dir/rpc.statd.*

%if_enabled gss
%config %_initdir/gssd
/sbin/rpc.gssd
%_man8dir/gssd.*
%_man8dir/rpc.gssd*
%endif

#-------------------------------------------------------------------------------

%files utils
%config %_sysconfdir/control.d/facilities/nfsmount
%attr(700,root,root) /sbin/mount.nfs
/sbin/mount.nfs4
/sbin/umount.*
%_bindir/showmount
%_sbindir/rpcdebug
%_sbindir/gss_clnt_send_err
%_sbindir/gss_destroy_creds

%_man5dir/nfs.*
%_man8dir/rpcdebug.*
%_man8dir/showmount.*
%_man8dir/mount.nfs.*
%_man8dir/umount.nfs.*

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin