2 # - trigger for upgrade from old cvs - after that package stays without any
3 # users and nserver-common is not installed...
4 # - cvschkpw causes sig11 when run without CVSSERVER variable set.
5 Summary: Concurrent Versions System - nserver
6 Summary(de.UTF-8): Concurrent-Versioning-System - nserver
7 Summary(fr.UTF-8): Un système pour maintenir à jour des fichiers - nserver
8 Summary(pl.UTF-8): Concurrent Versions System - nserver
9 Summary(tr.UTF-8): Sürüm denetim sistemi - nserver
14 Group: Development/Version Control
15 Source0: http://dl.sourceforge.net/cvs-nserver/%{name}-%{version}.tar.gz
16 # Source0-md5: 357fb5f37cc556977dad79175e9c2d97
17 Source1: %{name}.inetd
18 Source2: cvs-pserver.inetd
19 Patch0: %{name}-cvspasswd.patch
20 Patch1: %{name}-info.patch
21 Patch2: %{name}-am_ac.patch
22 Patch3: %{name}-cvspass.patch
23 Patch4: %{name}-home_etc.patch
24 Patch5: %{name}-ssl-link.patch
25 Patch6: %{name}-fix_doc_CVSUSER.patch
26 Patch7: %{name}-segv.patch
27 Patch8: %{name}-initgroups-rootonly.patch
28 Patch9: %{name}-zlibfix.patch
29 Patch10: %{name}-home_etc2.patch
30 Patch11: %{name}-posix.patch
31 Patch12: %{name}-CAN-2002-0844.patch
32 Patch13: %{name}-CAN-2003-0015.patch
33 Patch14: %{name}-CAN-2003-0977-and-CAN-2004-0180.patch
34 Patch15: %{name}-CAN-2004-0396.patch
35 Patch16: %{name}-CAN-2004-0414.patch
36 Patch17: %{name}-CAN-2004-0416-0417-0418.patch
37 Patch18: %{name}-dblshutdown.patch
38 Patch19: %{name}-krb5.patch
39 Patch20: %{name}-cvspasswd-mode.patch
40 Patch21: %{name}-getline.patch
41 URL: http://cvs-nserver.sourceforge.net/
42 BuildRequires: autoconf
43 BuildRequires: automake
44 BuildRequires: heimdal-devel
45 BuildRequires: openssl-devel >= 0.9.7d
46 BuildRequires: rpmbuild(macros) >= 1.268
47 BuildRequires: texinfo
48 BuildRequires: zlib-devel
49 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51 %define _cvsroot /var/lib/cvs
54 CVS is a version control system, which allows you to keep old versions
55 of files (usually source code), keep a log of who, when, and why
56 changes occurred, etc., like RCS or SCCS. Unlike the simpler systems,
57 CVS does not just operate on one file at a time or one directory at a
58 time, but operates on hierarchical collections of directories
59 consisting of version controlled files. CVS helps to manage releases
60 and to control the concurrent editing of source files among multiple
61 authors. CVS allows triggers to enable/log/control various operations
62 and works well over a wide area network.
64 %description -l de.UTF-8
65 CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den
66 Begriff der Revisionskontrolle von einer Sammlung von Dateien in einem
67 einzelnen Verzeichnis auf eine ganze Hierarchie ausweitet, bestehend
68 aus revisionskontrollierten Dateien. Diese Verzeichnisse und Dateien
69 lassen sich zu einer Software-Release kombinieren. CVS bietet die
70 Funktionen, die zur Verwaltung von Software-Releases und zur
71 Überwachung der gleichzeitigen Bearbeitung von Quelldateien durch
72 mehrere Software- Entwickler notwendig sind.
74 %description -l fr.UTF-8
75 "CVS" signifie "Concurrent Version System". C'est un système de
76 comparaison de versions de fichiers, qui peut garder une trace des
77 changements apportés à des fichiers (le plus souvent, les fichiers des
78 sources d'un programme). CVS conserve seulement les différences, et
79 non l'intégralité d'un fichier récent et d'un fichier plus ancien. A
80 chaque modification d'un fichier, CVS garde (entre autres) le nom de
81 la personne ayant fait la modification, la raison justifiant cette
82 modification, et la date à laquelle celle-ci a eu lieu. CVS est très
83 utile pour gérer la mise en commun des modifications apportées par
84 plusieurs personnes travaillant en parallèle sur les mêmes fichiers.
85 Au lieu de garder plusieurs versions des fichiers dans un seul
86 répertoire, CVS crée une série de répertoires, chacun contenant une
87 nouvelle version des fichiers. Ces répertoires et ces fichiers peuvent
88 ensuite être regroupés pour former la version la plus à jour du
89 logiciel. Installez ce package si vous avez besoin d'utiliser un
90 système de contrôle de version.
92 %description -l pl.UTF-8
93 CVS jest nakładką na rcs (Revision Control System, czyli w wolnym
94 tłumaczeniu system kontroli wersji zasobów), który rozszerza
95 możliwości rcs'a z narzędzia do kontroli zbioru plików w pojedynczym
96 katalogu o możliwość kontroli zbioru hierarchicznie ułożonych
97 katalogów z plikami. Z pomocą CVS w łatwy sposób można zarządzać kodem
98 źródłowym opracowywanym przez nawet bardzo duże zespoły programistów
99 umożliwiając śledzenie i kontrolę wszystkich zmian w trakcie pracy nad
100 projektami i wypuszczaniem pełnych wersji oprogramowania (release).
102 %description -l tr.UTF-8
103 CVS (Concurrent Versioning System), tek bir dizindeki dosya
104 topluluğunun sürüm denetimini, denetimi yapılmış dizinlerin hiyerarşik
105 topluluğuna genişleten rcs(1) sürüm denetim sisteminin ön yüzüdür. Bu
106 dizin ve dosyalar, bir yazılım yayını oluşturma amacıyla biraraya
107 getirilebilir. CVS, bu yazılım yayınlarının yönetilmesini ve kaynak
108 dosyaları bakımının birden çok yazılım geliştiricisi tarafından
109 eşzamanlı olarak yapılmasını kontrol etmek için gereken işlevleri
113 Summary: Concurrent Versions System - client
114 Summary(pl.UTF-8): Concurrent Versions System - klient
115 Group: Development/Version Control
116 Provides: cvs-client = %{version}
117 Obsoletes: cvs-client
118 Obsoletes: cvs-npclient
124 %description client -l pl.UTF-8
128 Summary: Concurrent Versions System - common files
129 Summary(pl.UTF-8): Concurrent Versions System - wspólne pliki
130 Group: Development/Version Control
131 Requires(postun): /usr/sbin/groupdel
132 Requires(postun): /usr/sbin/userdel
133 Requires(pre): /bin/id
134 Requires(pre): /usr/bin/getgid
135 Requires(pre): /usr/sbin/groupadd
136 Requires(pre): /usr/sbin/useradd
137 Requires(pre): cvs-nserver-client
138 Requires(pre): fileutils
139 Requires: %{name}-client = %{version}-%{release}
141 Provides: group(cvsadmin)
143 Provides: user(cvsadmin)
144 Obsoletes: cvs-nserver
147 CVS - common server files.
149 %description common -l pl.UTF-8
150 Wspólne pliki serwerów CVS.
153 Summary: Concurrent Versions System - pserver
154 Summary(pl.UTF-8): Concurrent Versions System - pserver
155 Group: Development/Version Control
156 Requires: %{name}-common = %{version}-%{release}
158 Obsoletes: cvs-npserver
159 Obsoletes: cvs-pserver
162 CVS server - pserver files.
164 %description pserver -l pl.UTF-8
165 Serwer CVS - pliki pservera.
168 Summary: Concurrent Versions System - nserver
169 Summary(pl.UTF-8): Concurrent Versions System - nserver
170 Group: Development/Version Control
171 Requires: %{name}-common = %{version}-%{release}
173 Obsoletes: cvs-nserver
176 CVS server - nserver files.
178 %description nserver -l pl.UTF-8
179 Serwer CVS - pliki nservera.
211 --enable-encryption \
221 rm -rf $RPM_BUILD_ROOT
222 install -d $RPM_BUILD_ROOT{/etc/sysconfig/rc-inetd,%{_cvsroot},/var/lock/cvs}
224 %{__make} -j1 install \
225 DESTDIR=$RPM_BUILD_ROOT
227 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-nserver
228 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-pserver
230 cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-pserver-script
232 REPOSITORY="%{_cvsroot}"
233 if [ -f /etc/sysconfig/cvs ]; then
237 CVSPASSWD=%{_bindir}/cvspasswd CVSSERVER=pserver \
238 exec %{_bindir}/cvs-pserver \$REPOSITORY -- \
239 %{_bindir}/cvschkpw %{_bindir}/cvs pserver
242 cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-nserver-script
244 REPOSITORY="%{_cvsroot}"
245 if [ -f /etc/sysconfig/cvs ]; then
249 CVSPASSWD=%{_bindir}/cvspasswd CVSSERVER=nserver \
250 exec %{_bindir}/cvs-nserver \$REPOSITORY -- \
251 %{_bindir}/cvschkpw %{_bindir}/cvs nserver
254 cat << EOF >$RPM_BUILD_ROOT/etc/sysconfig/cvs
255 # In this file you can specify additional repositories (separated with space)
256 # or just set different location.
257 # Default is "%{_cvsroot}".
258 #REPOSITORY="%{_cvsroot}"
259 # According to FHS 2.3 you can use some subdirectory in /srv, e.g.:
260 #REPOSITORY="/srv/cvs"
263 mv -f $RPM_BUILD_ROOT%{_datadir}/cvs-nserver/contrib/rcs2log \
264 $RPM_BUILD_ROOT%{_bindir}
267 rm -rf $RPM_BUILD_ROOT
269 %post client -p /sbin/postshell
270 -/usr/sbin/fix-info-dir -c %{_infodir}
272 %postun client -p /sbin/postshell
273 -/usr/sbin/fix-info-dir -c %{_infodir}
276 %groupadd -P %{name}-common -g 52 -r cvs
277 %groupadd -P %{name}-common -g 53 -r cvsadmin
278 %useradd -P %{name}-common -u 52 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvs cvs
279 %useradd -P %{name}-common -u 53 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvsadmin -G cvs cvsadmin
281 if [ "$1" = 1 ]; then
282 echo "Initializing repository..."
283 %{_bindir}/cvs -d :local:%{_cvsroot} init
284 chown -R cvsadmin:cvsadmin %{_cvsroot}/CVSROOT
288 if [ "$1" = "0" ]; then
292 %groupremove cvsadmin
296 %service -q rc-inetd reload
299 %service -q rc-inetd reload
302 %service -q rc-inetd reload
305 %service -q rc-inetd reload
308 %defattr(644,root,root,755)
309 %doc AUTHORS BUGS ChangeLog FAQ FAQ.nserver NEWS NEWS.nserver PROJECTS
310 %doc README README.checkpassword TODO
311 %attr(755,root,root) %{_bindir}/cvs
312 %attr(755,root,root) %{_bindir}/cvsbug
314 %{_mandir}/man[15]/cvs.*
315 %{_mandir}/man8/cvsbug.8*
318 %defattr(644,root,root,755)
319 %attr(640,root,cvs) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cvs
320 %attr(4754,cvsadmin,cvs) %{_bindir}/cvspasswd
321 %attr(755,root,root) %{_bindir}/cvschkpw
322 %attr(755,root,root) %{_bindir}/rcs2log
323 %dir %{_datadir}/cvs-nserver
324 %dir %{_datadir}/cvs-nserver/contrib
325 %{_datadir}/cvs-nserver/contrib/*
326 %attr(770,cvsadmin,cvs) %dir %{_cvsroot}
327 %{_mandir}/man8/cvs-server.8*
328 %attr(770,cvsadmin,cvs) %dir /var/lock/cvs
331 %defattr(644,root,root,755)
332 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/cvs-pserver
333 %attr(755,root,root) %{_bindir}/cvs-pserver*
334 %{_mandir}/man8/cvs-pserver.8*
337 %defattr(644,root,root,755)
338 %doc NEWS.nserver FAQ.nserver
339 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/cvs-nserver
340 %attr(755,root,root) %{_bindir}/cvs-nserver*
341 %{_mandir}/man8/cvs-nserver.8*