]> git.pld-linux.org Git - packages/cvs-nserver.git/blob - cvs-nserver.spec
- reverting last change: removing new macros from %p{re,ost}{,un}
[packages/cvs-nserver.git] / cvs-nserver.spec
1 Summary:        Concurrent Versions System
2 Summary(de):    Concurrent-Versioning-System
3 Summary(fr):    Un système pour maintenir à jour des fichiers
4 Summary(pl):    Concurrent Versions System
5 Summary(tr):    Sürüm denetim sistemi
6 Name:           cvs-nserver
7 Version:        1.11.1.2
8 Release:        1
9 License:        GPL
10 Group:          Development/Version Control
11 Group(de):      Entwicklung/Versionkontrolle
12 Group(pl):      Programowanie/Zarz±dzanie wersjami
13 Source0:        http://alexm.here.ru/cvs-nserver/download/%{name}-%{version}.tar.gz
14 Source1:        %{name}.inetd
15 Source2:        cvs-pserver.inetd
16 Patch0:         %{name}-cvspasswd.patch
17 Patch1:         %{name}-info.patch
18 # outdated, but maybe will be needed for checkpasswd (outside programs):
19 Patch3:         %{name}-PAM_fix.patch
20 BuildRequires:  texinfo
21 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
22
23 %define         _cvsroot        /home/cvsroot
24
25 %description
26 CVS is a version control system, which allows you to keep old versions
27 of files (usually source code), keep a log of who, when, and why
28 changes occurred, etc., like RCS or SCCS. Unlike the simpler systems,
29 CVS does not just operate on one file at a time or one directory at a
30 time, but operates on hierarchical collections of directories
31 consisting of version controlled files. CVS helps to manage releases
32 and to control the concurrent editing of source files among multiple
33 authors. CVS allows triggers to enable/log/control various operations
34 and works well over a wide area network.
35
36 %description -l de
37 CVS ist ein Frontend für das RCS(1)-Revisionskontrollsystem, das den
38 Begriff der Revisionskontrolle von einer Sammlung von Dateien in einem
39 einzelnen Verzeichnis auf eine ganze Hierarchie ausweitet, bestehend
40 aus revisionskontrollierten Dateien. Diese Verzeichnisse und Dateien
41 lassen sich zu einer Software-Release kombinieren. CVS bietet die
42 Funktionen, die zur Verwaltung von Software-Releases und zur
43 Überwachung der gleichzeitigen Bearbeitung von Quelldateien durch
44 mehrere Software- Entwickler notwendig sind.
45
46 %description -l fr
47 "CVS" signifie "Concurrent Version System". C'est un système de
48 comparaison de versions de fichiers, qui peut garder une trace des
49 changements apportés à des fichiers (le plus souvent, les fichiers des
50 sources d'un programme). CVS conserve seulement les différences, et
51 non l'intégralité d'un fichier récent et d'un fichier plus ancien. A
52 chaque modification d'un fichier, CVS garde (entre autres) le nom de
53 la personne ayant fait la modification, la raison justifiant cette
54 modification, et la date à laquelle celle-ci a eu lieu. CVS est très
55 utile pour gérer la mise en commun des modifications apportées par
56 plusieurs personnes travaillant en parallèle sur les mêmes fichiers.
57 Au lieu de garder plusieurs versions des fichiers dans un seul
58 répertoire, CVS crée une série de répertoires, chacun contenant une
59 nouvelle version des fichiers. Ces répertoires et ces fichiers peuvent
60 ensuite être regroupés pour former la version la plus à jour du
61 logiciel. Installez ce package si vous avez besoin d'utiliser un
62 système de contrôle de version.
63
64 %description -l pl
65 CVS jest nak³adk± na rcs (Revision Control System, czyli w wolnym
66 t³umaczeniu system kontroli wersji zasobów), który rozszerza
67 mo¿liwo¶ci rcs'a z narzêdzia do kontroli zbioru plików w pojedynczym
68 katalogu o mo¿liwo¶æ kontroli zbioru hierarchicznie u³o¿onych
69 katalogów z plikami. Z pomoc± CVS w ³atwy sposób mo¿na zarz±dzaæ kodem
70 ¼ród³owym opracowywanym przez nawet bardzo du¿e zespó³y programistów
71 umo¿liwiaj±c ¶ledzenie i kontrolê wszystkich zmian w trakcie pracy nad
72 projektami i wypuszczaniem pe³nych wersji oprogramowania (release).
73
74 %description -l tr
75 CVS (Concurrent Versioning System), tek bir dizindeki dosya
76 topluluðunun sürüm denetimini, denetimi yapýlmýþ dizinlerin hiyerarþik
77 topluluðuna geniþleten rcs(1) sürüm denetim sisteminin ön yüzüdür. Bu
78 dizin ve dosyalar, bir yazýlým yayýný oluþturma amacýyla biraraya
79 getirilebilir. CVS, bu yazýlým yayýnlarýnýn yönetilmesini ve kaynak
80 dosyalarý bakýmýnýn birden çok yazýlým geliþtiricisi tarafýndan
81 eþzamanlý olarak yapýlmasýný kontrol etmek için gereken iþlevleri
82 saðlar.
83
84 %package -n cvs-nclient
85 Summary:        Concurrent Versions System - common
86 Summary(pl):    Concurrent Versions System
87 Group:          Development/Version Control
88 Group(de):      Entwicklung/Versionkontrolle
89 Group(pl):      Programowanie/Zarz±dzanie wersjami
90
91 %description -n cvs-nclient
92 Client and some common files.
93
94 %description -l pl -n cvs-nclient
95 Klient CVS i trochê wspólnych plików.
96
97 %package -n cvs-nserver-common
98 Summary:        Concurrent Versions System - common
99 Summary(pl):    Concurrent Versions System
100 Group:          Development/Version Control
101 Group(de):      Entwicklung/Versionkontrolle
102 Group(pl):      Programowanie/Zarz±dzanie wersjami
103
104 %description -n cvs-nserver-common
105 Client and some common files.
106
107 %description -l pl -n cvs-nserver-common
108 Klient CVS i trochê wspólnych plików.
109
110 %package -n cvs-npserver
111 Summary:        Concurrent Versions System - pserver
112 Summary(pl):    Concurrent Versions System - pserver
113 Group:          Development/Version Control
114 Group(de):      Entwicklung/Versionkontrolle
115 Group(pl):      Programowanie/Zarz±dzanie wersjami
116 Obsoletes:      cvs-nserver,cvs
117
118 %description -n cvs-npserver
119 Server - pserver
120
121 %description -l pl -n cvs-npserver
122 Server - pserver
123
124 %package -n cvs-nserver-experimental
125 Summary:        Concurrent Versions System - nserver
126 Summary(pl):    Concurrent Versions System - nserver
127 Group:          Development/Version Control
128 Group(de):      Entwicklung/Versionkontrolle
129 Group(pl):      Programowanie/Zarz±dzanie wersjami
130 Obsoletes:      cvs-npserver,cvs
131
132 %description -n cvs-nserver-experimental
133 Server - nserver
134
135 %description -l pl -n cvs-nserver-experimental
136 Server - nserver
137
138 %prep
139 %setup -q 
140 %patch0 -p1
141 %patch1 -p1
142
143 %build
144 autoconf
145 %configure \
146         --enable-encryption \
147         --enable-client \
148         --enable-server \
149         --enable-setuid
150 %{__make}
151
152 %install
153 rm -rf $RPM_BUILD_ROOT
154 install -d $RPM_BUILD_ROOT/{etc/sysconfig/rc-inetd,%{_cvsroot}}
155
156 %{__make} DESTDIR=$RPM_BUILD_ROOT install
157
158 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-nserver
159 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cvs-pserver
160
161 cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-pserver-script
162 #!/bin/sh
163 CVSPASSWD=%{_bindir}/cvspasswd \
164 exec %{_bindir}/cvs-pserver %{_cvsroot} -- \
165 %{_bindir}/cvschkpw %{_bindir}/cvs pserver
166 EOF
167
168 cat << EOF >$RPM_BUILD_ROOT%{_bindir}/cvs-nserver-script
169 #!/bin/sh
170 CVSPASSWD=%{_bindir}/cvspasswd \
171 exec %{_bindir}/cvs-nserver %{_cvsroot} -- \
172 %{_bindir}/cvschkpw %{_bindir}/cvs nserver
173 EOF
174
175 mv      $RPM_BUILD_ROOT%{_datadir}/cvs-nserver/contrib/rcs2log \
176         $RPM_BUILD_ROOT%{_bindir}
177
178 gzip -9nf AUTHORS BUGS NEWS NEWS.nserver PROJECTS TODO
179
180 %pre -n cvs-nserver-common
181 if [ -n "`getgid cvs`" ]; then
182         if [ "`getgid cvs`" != "52" ]; then
183                 echo "Warning: group cvs haven't gid=52. Correct this before installing cvs-nserver" 1>&2
184                 exit 1
185         fi
186 else
187         echo "Making group cvs GID=52"
188         /usr/sbin/groupadd -g 52 -r -f cvs
189 fi
190 if [ -n "`getgid cvsadmin`" ]; then
191         if [ "`getgid cvsadmin`" != "53" ]; then
192                 echo "Warning: group cvsadmin haven't gid=53. Correct this before installing cvs-nserver" 1>&2
193                 exit 1
194         fi
195 else
196         echo "Making group cvsadmin GID=53"
197         /usr/sbin/groupadd -g 53 -r -f cvsadmin
198 fi
199 if [ -n "`id -u cvs 2>/dev/null`" ]; then
200         if [ "`id -u cvs`" != "52" ]; then
201                 echo "Warning: user cvs haven't uid=52. Correct this before installing cvs-nserver" 1>&2
202                 exit 1
203         fi
204 else
205         echo "Making user cvs UID=52"
206         /usr/sbin/useradd -u 52 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvs cvs 1>&2
207 fi
208 if [ -n "`id -u cvsadmin 2>/dev/null`" ]; then
209         if [ "`id -u cvsadmin`" != "53" ]; then
210                 echo "Warning: user cvsadmin haven't uid=53. Correct this before installing cvs-nserver" 1>&2
211                 exit 1
212         fi
213 else
214         echo "Making user cvsadmin UID=53"
215         /usr/sbin/useradd -u 53 -r -d %{_cvsroot} -s /bin/false -c "CVS user" -g cvsadmin -G cvs cvsadmin 1>&2
216 fi
217
218 %post -n cvs-nclient
219 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
220
221
222 %post -n cvs-nserver-experimental 
223 if [ "$1" = 1 ]; then
224         echo "Initialise repository"
225         %{_bindir}/cvs -d :local:%{_cvsroot} init
226         chown -R cvsadmin.cvsadmin %{_cvsroot}/CVSROOT
227 fi
228 if [ -f /var/lock/subsys/rc-inetd ]; then
229         /etc/rc.d/init.d/rc-inetd reload
230 fi
231
232 %post -n cvs-npserver
233 if [ "$1" = 1 ]; then
234         echo "Initialise repository"
235         %{_bindir}/cvs -d :local:%{_cvsroot} init
236         chown -R cvsadmin.cvsadmin %{_cvsroot}/CVSROOT
237 fi
238 if [ -f /var/lock/subsys/rc-inetd ]; then
239         /etc/rc.d/init.d/rc-inetd reload
240 fi
241
242 %postun -n cvs-nserver-common
243 if [ "$1" = "0" ]; then
244         echo "Removing group cvs GID=52"
245         /usr/sbin/userdel cvs
246         echo "Removing group cvsadmin GID=53"
247         /usr/sbin/userdel cvsadmin
248         echo "Removing user cvs UID=52"
249         /usr/sbin/groupdel cvs
250         echo "Removing user cvsadmin UID=53"
251         /usr/sbin/groupdel cvsadmin
252 fi
253
254 %postun -n cvs-nserver-experimental
255 if [ -f /var/lock/subsys/rc-inetd ]; then
256         /etc/rc.d/init.d/rc-inetd reload
257 fi
258
259 %postun -n cvs-npserver
260 if [ -f /var/lock/subsys/rc-inetd ]; then
261         /etc/rc.d/init.d/rc-inetd reload
262 fi
263
264 %postun -n cvs-nclient
265 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
266
267 %clean
268 rm -rf $RPM_BUILD_ROOT
269
270 %files -n cvs-nclient
271 %defattr(644,root,root,755)
272 %doc *.gz
273 %attr(755,root,root) %{_bindir}/cvs
274 %attr(755,root,root) %{_bindir}/cvsbug
275 %{_infodir}/cvs*
276 %{_mandir}/man[15]/cvs.*
277 %{_mandir}/man8/cvsbug.8*
278
279 %files -n cvs-nserver-common
280 %defattr(644,root,root,755)
281 %attr(4754,cvsadmin,cvs) %{_bindir}/cvspasswd
282 %attr(755,root,root) %{_bindir}/cvschkpw
283 %attr(755,root,root) %{_bindir}/rcs2log
284 %dir %{_datadir}/cvs-nserver/contrib/*
285 %{_mandir}/man8/cvs-server.8*
286 %attr(770,cvsadmin,cvs) %dir %{_cvsroot}
287
288 %files -n cvs-nserver-experimental
289 %defattr(644,root,root,755)
290 %attr(755,root,root) %{_bindir}/cvs-nserver*
291 /etc/sysconfig/rc-inetd/cvs-nserver
292 %{_mandir}/man8/cvs-nserver.8*
293
294 %files -n cvs-npserver
295 %defattr(644,root,root,755)
296 %attr(755,root,root) %{_bindir}/cvs-pserver*
297 /etc/sysconfig/rc-inetd/cvs-pserver
298 %{_mandir}/man8/cvs-pserver.8*
This page took 0.062025 seconds and 4 git commands to generate.