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