# TODO: # - cvsadmin uid,gid # - check permissions Summary: cvsd, a chroot/suid wrapper for running a cvs pserver Summary(pl.UTF-8): cvsd - nakładka na cvs pserver korzystająca z chroot/suid Name: cvsd Version: 1.0.9 Release: 0.1 License: GPL Group: Development/Version Control Source0: http://ch.tudelft.nl/~arthur/cvsd/%{name}-%{version}.tar.gz # Source0-md5: ee67d1a5366f804580c08ca1d48b85fd Source1: %{name}.init #Source1: %{name}.conf #Source2: %{name}-passwd URL: http://ch.tudelft.nl/~arthur/cvsd/ BuildRequires: rpmbuild(macros) >= 1.268 Requires(post,preun): /sbin/chkconfig Requires(postun): /usr/sbin/groupdel Requires(postun): /usr/sbin/userdel Requires(pre): /bin/id Requires(pre): /usr/bin/getgid Requires(pre): /usr/bin/ldd Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/groupmod Requires(pre): cvs-client Requires(pre): fileutils Requires(pre): textutils Requires: cvs-client Requires: rc-scripts Provides: group(cvsadmin) Provides: user(cvsowner) Obsoletes: cvs-nserver-pserver Obsoletes: cvs-pserver BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define homedir /var/lib/cvsowner %define rootdir %{homedir}/cvsd-root %description cvsd is a chroot/suid wrapper for running a cvs pserver more securely. cvs is a version control system for managing projects. %description -l pl.UTF-8 cvsd jest nakładką służącą do bezpieczniejszego uruchamiania programu cvs pserver, korzystającą z chroot/suid. cvs jest systemem kontroli wersji zasobów służącym do zarządzania projektami. %prep %setup -q %build %configure %{__make} %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT%{rootdir}/{etc,bin,lib,tmp,dev,cvsroot} \ $RPM_BUILD_ROOT/etc/rc.d/init.d %{__make} install \ DESTDIR=$RPM_BUILD_ROOT install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} #install %{SOURCE2} $RPM_BUILD_ROOT%{rootdir}%{_sysconfdir}/passwd %clean rm -rf $RPM_BUILD_ROOT %pre %groupadd -g 53 cvsadmin %useradd -u 128 -g 53 -c "CVS UID" -d %{homedir} cvsowner if [ ! -f %{rootdir}/bin/cvs ] ; then echo "Setting up %{rootdir}..." cd /lib install -m755 -o root -g root `ldd /usr/bin/cvs | cut -d " " -f 1` /lib/libnss_files.so.1 \ %{rootdir}/lib install -m755 /usr/bin/cvs %{rootdir}/bin fi %post /sbin/chkconfig --add cvsd %service cvsd restart "cvsd" if [ "$1" = 1 ]; then %banner -e %{name} <