]> git.pld-linux.org Git - packages/cvs-nserver.git/blame - cvs-nserver.spec
- rel. 22 - cvspasswd-mode patch added - "cvs passwd" is working again
[packages/cvs-nserver.git] / cvs-nserver.spec
CommitLineData
1db6e62c 1# TODO:
0d263206 2# - trigger for upgrade from old cvs - after that package stays without any
1db6e62c 3# users and nserver-common is not installed...
d3d08bb6 4# - cvschkpw causes sig11 when run without CVSSERVER variable set.
70018300 5Summary: Concurrent Versions System - nserver
773a20a4
ER
6Summary(de.UTF-8): Concurrent-Versioning-System - nserver
7Summary(fr.UTF-8): Un système pour maintenir à jour des fichiers - nserver
8Summary(pl.UTF-8): Concurrent Versions System - nserver
9Summary(tr.UTF-8): Sürüm denetim sistemi - nserver
c59bd2b1 10Name: cvs-nserver
dbeb7d9d 11Version: 1.11.1.52
46191704 12Release: 22
c59bd2b1 13License: GPL
14Group: Development/Version Control
b3f10eea 15Source0: http://dl.sourceforge.net/cvs-nserver/%{name}-%{version}.tar.gz
84d7005f 16# Source0-md5: 357fb5f37cc556977dad79175e9c2d97
c4d1aece
PG
17Source1: %{name}.inetd
18Source2: cvs-pserver.inetd
086704aa 19Patch0: %{name}-cvspasswd.patch
6e00df82 20Patch1: %{name}-info.patch
dbeb7d9d
JB
21Patch2: %{name}-am_ac.patch
22Patch3: %{name}-cvspass.patch
23Patch4: %{name}-home_etc.patch
24Patch5: %{name}-ssl-link.patch
8e05d023 25Patch6: %{name}-fix_doc_CVSUSER.patch
ff329d4f
JB
26Patch7: %{name}-segv.patch
27Patch8: %{name}-initgroups-rootonly.patch
d1d3c988 28Patch9: %{name}-zlibfix.patch
2d571952 29Patch10: %{name}-home_etc2.patch
45f452c1 30Patch11: %{name}-posix.patch
1235ff92
AM
31Patch12: %{name}-CAN-2002-0844.patch
32Patch13: %{name}-CAN-2003-0015.patch
33Patch14: %{name}-CAN-2003-0977-and-CAN-2004-0180.patch
34Patch15: %{name}-CAN-2004-0396.patch
df6b2533
AM
35Patch16: %{name}-CAN-2004-0414.patch
36Patch17: %{name}-CAN-2004-0416-0417-0418.patch
b3f10eea 37Patch18: %{name}-dblshutdown.patch
2750ffef 38Patch19: %{name}-krb5.patch
46191704 39Patch20: %{name}-cvspasswd-mode.patch
46e953fe 40URL: http://cvs-nserver.sourceforge.net/
9af3839e 41BuildRequires: autoconf
e3f3f425 42BuildRequires: automake
3189311b 43BuildRequires: krb5-devel
211d4c4e 44BuildRequires: openssl-devel >= 0.9.7d
2e240432 45BuildRequires: rpmbuild(macros) >= 1.268
6e00df82 46BuildRequires: texinfo
dbeb7d9d 47BuildRequires: zlib-devel
c59bd2b1 48BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
00af5b94 49
97c0823f 50%define _cvsroot /var/lib/cvs
c4d1aece 51
00af5b94 52%description
53CVS is a version control system, which allows you to keep old versions
54of files (usually source code), keep a log of who, when, and why
c59bd2b1 55changes occurred, etc., like RCS or SCCS. Unlike the simpler systems,
00af5b94 56CVS does not just operate on one file at a time or one directory at a
57time, but operates on hierarchical collections of directories
c59bd2b1 58consisting of version controlled files. CVS helps to manage releases
00af5b94 59and to control the concurrent editing of source files among multiple
c59bd2b1 60authors. CVS allows triggers to enable/log/control various operations
61and works well over a wide area network.
00af5b94 62
06dedd9c
JR
63%description -l de.UTF-8
64CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den
dd7a1b59 65Begriff der Revisionskontrolle von einer Sammlung von Dateien in einem
66einzelnen Verzeichnis auf eine ganze Hierarchie ausweitet, bestehend
67aus revisionskontrollierten Dateien. Diese Verzeichnisse und Dateien
68lassen sich zu einer Software-Release kombinieren. CVS bietet die
69Funktionen, die zur Verwaltung von Software-Releases und zur
06dedd9c 70Überwachung der gleichzeitigen Bearbeitung von Quelldateien durch
dd7a1b59 71mehrere Software- Entwickler notwendig sind.
72
06dedd9c
JR
73%description -l fr.UTF-8
74"CVS" signifie "Concurrent Version System". C'est un système de
dd7a1b59 75comparaison de versions de fichiers, qui peut garder une trace des
06dedd9c
JR
76changements apportés à des fichiers (le plus souvent, les fichiers des
77sources d'un programme). CVS conserve seulement les différences, et
78non l'intégralité d'un fichier récent et d'un fichier plus ancien. A
dd7a1b59 79chaque modification d'un fichier, CVS garde (entre autres) le nom de
80la personne ayant fait la modification, la raison justifiant cette
06dedd9c
JR
81modification, et la date à laquelle celle-ci a eu lieu. CVS est très
82utile pour gérer la mise en commun des modifications apportées par
83plusieurs personnes travaillant en parallèle sur les mêmes fichiers.
dd7a1b59 84Au lieu de garder plusieurs versions des fichiers dans un seul
06dedd9c
JR
85répertoire, CVS crée une série de répertoires, chacun contenant une
86nouvelle version des fichiers. Ces répertoires et ces fichiers peuvent
87ensuite être regroupés pour former la version la plus à jour du
dd7a1b59 88logiciel. Installez ce package si vous avez besoin d'utiliser un
06dedd9c
JR
89système de contrôle de version.
90
91%description -l pl.UTF-8
92CVS jest nakładką na rcs (Revision Control System, czyli w wolnym
93tłumaczeniu system kontroli wersji zasobów), który rozszerza
94możliwości rcs'a z narzędzia do kontroli zbioru plików w pojedynczym
95katalogu o możliwość kontroli zbioru hierarchicznie ułożonych
96katalogów z plikami. Z pomocą CVS w łatwy sposób można zarządzać kodem
97źródłowym opracowywanym przez nawet bardzo duże zespoły programistów
98umożliwiając śledzenie i kontrolę wszystkich zmian w trakcie pracy nad
99projektami i wypuszczaniem pełnych wersji oprogramowania (release).
100
101%description -l tr.UTF-8
dd7a1b59 102CVS (Concurrent Versioning System), tek bir dizindeki dosya
06dedd9c
JR
103topluluğunun sürüm denetimini, denetimi yapılmış dizinlerin hiyerarşik
104topluluğuna genişleten rcs(1) sürüm denetim sisteminin ön yüzüdür. Bu
105dizin ve dosyalar, bir yazılım yayını oluşturma amacıyla biraraya
106getirilebilir. CVS, bu yazılım yayınlarının yönetilmesini ve kaynak
107dosyaları bakımının birden çok yazılım geliştiricisi tarafından
108eşzamanlı olarak yapılmasını kontrol etmek için gereken işlevleri
109sağlar.
dd7a1b59 110
dbeb7d9d 111%package client
7b08dfe9 112Summary: Concurrent Versions System - client
773a20a4 113Summary(pl.UTF-8): Concurrent Versions System - klient
7b08dfe9 114Group: Development/Version Control
1633b83e 115Provides: cvs = %{version}
97c0823f
JB
116Obsoletes: cvs
117Obsoletes: cvs-npclient
7b08dfe9 118
dbeb7d9d 119%description client
c6a5bab3 120CVS client.
7b08dfe9 121
06dedd9c 122%description client -l pl.UTF-8
c6a5bab3 123Klient CVS.
7b08dfe9 124
dbeb7d9d 125%package common
600180d9 126Summary: Concurrent Versions System - common files
773a20a4 127Summary(pl.UTF-8): Concurrent Versions System - wspólne pliki
6e00df82 128Group: Development/Version Control
2e240432
ER
129Requires(postun): /usr/sbin/groupdel
130Requires(postun): /usr/sbin/userdel
84d7005f 131Requires(pre): /bin/id
1db6e62c 132Requires(pre): /usr/bin/getgid
84d7005f 133Requires(pre): /usr/sbin/groupadd
134Requires(pre): /usr/sbin/useradd
c6a5bab3
JB
135Requires(pre): cvs-nserver-client
136Requires(pre): fileutils
97c0823f 137Requires: %{name}-client = %{version}-%{release}
d54a9a1d 138Provides: group(cvs)
139Provides: group(cvsadmin)
140Provides: user(cvs)
141Provides: user(cvsadmin)
dbeb7d9d 142Obsoletes: cvs-nserver
c4d1aece 143
dbeb7d9d 144%description common
7b08dfe9 145CVS - common server files.
c4d1aece 146
06dedd9c
JR
147%description common -l pl.UTF-8
148Wspólne pliki serwerów CVS.
c4d1aece 149
dbeb7d9d 150%package pserver
c4d1aece 151Summary: Concurrent Versions System - pserver
773a20a4 152Summary(pl.UTF-8): Concurrent Versions System - pserver
c4d1aece 153Group: Development/Version Control
97c0823f 154Requires: %{name}-common = %{version}-%{release}
2e240432 155Requires: rc-inetd
f2113f1b 156Obsoletes: cvs-npserver
3e952331 157Obsoletes: cvs-pserver
c4d1aece 158
dbeb7d9d 159%description pserver
7b08dfe9 160CVS server - pserver files.
c4d1aece 161
06dedd9c 162%description pserver -l pl.UTF-8
c6a5bab3 163Serwer CVS - pliki pservera.
7b08dfe9 164
dbeb7d9d 165%package nserver
7b08dfe9 166Summary: Concurrent Versions System - nserver
773a20a4 167Summary(pl.UTF-8): Concurrent Versions System - nserver
7b08dfe9 168Group: Development/Version Control
97c0823f 169Requires: %{name}-common = %{version}-%{release}
2e240432 170Requires: rc-inetd
f2113f1b 171Obsoletes: cvs-nserver
7b08dfe9 172
dbeb7d9d 173%description nserver
7b08dfe9 174CVS server - nserver files.
175
06dedd9c 176%description nserver -l pl.UTF-8
7b08dfe9 177Serwer CVS - pliki nservera.
4b31d936 178
00af5b94 179%prep
6adc478e 180%setup -q
086704aa 181%patch0 -p1
6e00df82 182%patch1 -p1
dbeb7d9d
JB
183%patch2 -p1
184%patch3 -p1
e3f3f425
AM
185%patch4 -p1
186%patch5 -p1
7b644983 187%patch6 -p1
ff329d4f
JB
188%patch7 -p1
189%patch8 -p1
d1d3c988 190%patch9 -p1
2d571952 191%patch10 -p1
45f452c1 192%patch11 -p1
1235ff92
AM
193%patch12 -p1
194%patch13 -p1
195%patch14 -p1
196%patch15 -p1
df6b2533
AM
197%patch16 -p1
198%patch17 -p1
b3f10eea 199%patch18 -p1
2750ffef 200%patch19 -p1
46191704 201%patch20 -p1
00af5b94 202
203%build
c06abedc 204%{__aclocal}
27522b31 205%{__autoconf}
c06abedc 206%{__automake}
c59bd2b1 207%configure \
2e0a2200
PG
208 --enable-encryption \
209 --enable-client \
086704aa 210 --enable-server \
779694f3 211 --enable-setuid \
dbeb7d9d 212 --with-openssl \
3189311b 213 --with-gssapi
c59bd2b1 214%{__make}
00af5b94 215
216%install
c59bd2b1 217rm -rf $RPM_BUILD_ROOT
9bca8603 218install -d $RPM_BUILD_ROOT{/etc/sysconfig/rc-inetd,%{_cvsroot},/var/lock/cvs}
c4d1aece 219
483562a8
PG
220%{__make} install \
221 DESTDIR=$RPM_BUILD_ROOT
c59bd2b1 222
c4d1aece
PG
223install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-nserver
224install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-pserver
225
226cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-pserver-script
227#!/bin/sh
1db6e62c 228REPOSITORY="%{_cvsroot}"
0e39320c 229if [ -f /etc/sysconfig/cvs ]; then
1db6e62c
PG
230 . /etc/sysconfig/cvs
231fi
232
1373dcdb 233CVSPASSWD=%{_bindir}/cvspasswd CVSSERVER=pserver \
4d2f3613 234exec %{_bindir}/cvs-pserver \$REPOSITORY -- \
c4d1aece
PG
235%{_bindir}/cvschkpw %{_bindir}/cvs pserver
236EOF
237
238cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-nserver-script
239#!/bin/sh
1db6e62c 240REPOSITORY="%{_cvsroot}"
0e39320c 241if [ -f /etc/sysconfig/cvs ]; then
1db6e62c
PG
242 . /etc/sysconfig/cvs
243fi
244
1373dcdb 245CVSPASSWD=%{_bindir}/cvspasswd CVSSERVER=nserver \
4d2f3613 246exec %{_bindir}/cvs-nserver \$REPOSITORY -- \
c4d1aece
PG
247%{_bindir}/cvschkpw %{_bindir}/cvs nserver
248EOF
249
1db6e62c
PG
250cat << EOF >$RPM_BUILD_ROOT/etc/sysconfig/cvs
251# In this file you can specify additional repositories (separated with space)
252# or just set different location.
97c0823f 253# Default is "%{_cvsroot}".
1db6e62c 254#REPOSITORY="%{_cvsroot}"
97c0823f
JB
255# According to FHS 2.3 you can use some subdirectory in /srv, e.g.:
256#REPOSITORY="/srv/cvs"
1db6e62c
PG
257EOF
258
9af3839e 259mv -f $RPM_BUILD_ROOT%{_datadir}/cvs-nserver/contrib/rcs2log \
6e00df82 260 $RPM_BUILD_ROOT%{_bindir}
261
9af3839e
JB
262%clean
263rm -rf $RPM_BUILD_ROOT
264
cac9c678 265%post client
7b08dfe9 266[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
267
cac9c678 268%postun client
7b08dfe9 269[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
270
cac9c678 271%pre common
386f23e9
ER
272%groupadd -P %{name}-common -g 52 -r cvs
273%groupadd -P %{name}-common -g 53 -r cvsadmin
274%useradd -P %{name}-common -u 52 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvs cvs
275%useradd -P %{name}-common -u 53 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvsadmin -G cvs cvsadmin
276
c4d1aece 277if [ "$1" = 1 ]; then
c6a5bab3 278 echo "Initializing repository..."
c4d1aece 279 %{_bindir}/cvs -d :local:%{_cvsroot} init
32a6aa94 280 chown -R cvsadmin:cvsadmin %{_cvsroot}/CVSROOT
c4d1aece 281fi
b9501046 282
5618e5f4 283%postun common
284if [ "$1" = "0" ]; then
d54a9a1d 285 %userremove cvs
286 %userremove cvsadmin
287 %groupremove cvs
288 %groupremove cvsadmin
5618e5f4 289fi
290
cac9c678 291%post pserver
2e240432 292%service -q rc-inetd reload
c4d1aece 293
cac9c678 294%postun pserver
2e240432 295%service -q rc-inetd reload
7b08dfe9 296
cac9c678 297%post nserver
2e240432 298%service -q rc-inetd reload
c4d1aece 299
cac9c678 300%postun nserver
2e240432 301%service -q rc-inetd reload
c4d1aece 302
cac9c678 303%files client
7b08dfe9 304%defattr(644,root,root,755)
dbeb7d9d
JB
305%doc AUTHORS BUGS ChangeLog FAQ FAQ.nserver NEWS NEWS.nserver PROJECTS
306%doc README README.checkpassword TODO
7b08dfe9 307%attr(755,root,root) %{_bindir}/cvs
308%attr(755,root,root) %{_bindir}/cvsbug
309%{_infodir}/cvs*
310%{_mandir}/man[15]/cvs.*
311%{_mandir}/man8/cvsbug.8*
c59bd2b1 312
cac9c678 313%files common
c4d1aece 314%defattr(644,root,root,755)
0d263206 315%attr(640,root,cvs) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cvs
6e00df82 316%attr(4754,cvsadmin,cvs) %{_bindir}/cvspasswd
c59bd2b1 317%attr(755,root,root) %{_bindir}/cvschkpw
c59bd2b1 318%attr(755,root,root) %{_bindir}/rcs2log
c7059667
JB
319%dir %{_datadir}/cvs-nserver
320%dir %{_datadir}/cvs-nserver/contrib
321%{_datadir}/cvs-nserver/contrib/*
c4d1aece 322%attr(770,cvsadmin,cvs) %dir %{_cvsroot}
70018300 323%{_mandir}/man8/cvs-server.8*
9bca8603 324%attr(770,cvsadmin,cvs) %dir /var/lock/cvs
4b31d936 325
cac9c678 326%files pserver
c4d1aece 327%defattr(644,root,root,755)
0d263206 328%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/cvs-pserver
1db6e62c 329%attr(755,root,root) %{_bindir}/cvs-pserver*
c4d1aece 330%{_mandir}/man8/cvs-pserver.8*
7b08dfe9 331
cac9c678 332%files nserver
7b08dfe9 333%defattr(644,root,root,755)
c6a5bab3 334%doc NEWS.nserver FAQ.nserver
0d263206 335%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/cvs-nserver
1db6e62c 336%attr(755,root,root) %{_bindir}/cvs-nserver*
7b08dfe9 337%{_mandir}/man8/cvs-nserver.8*
This page took 0.088892 seconds and 4 git commands to generate.