1 %include /usr/lib/rpm/macros.perl
2 Summary: Visual (www) interface to explore a CVS repository
3 Summary(pl.UTF-8): Wizualny (WWW) interfejs do przeglądania repozytorium CVS
9 Group: Development/Tools
10 Source0: http://people.FreeBSD.org/~scop/cvsweb/%{name}-%{version}.tar.gz
11 # Source0-md5: 0e1eec962b1db00e01b295fff84b6e89
12 Source1: %{name}-apache.conf
13 URL: http://www.freebsd.org/projects/cvsweb.html
14 Patch0: %{name}-config.patch
15 Patch1: %{name}-emptyscript.patch
16 BuildRequires: rpmbuild(macros) >= 1.268
17 # for %{_prefix}/lib/cgi-bin
18 Requires: filesystem >= 3.0-11
23 Conflicts: apache-base < 2.2.0-8
24 Conflicts: apache1 < 1.3.34-6
26 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
28 %define _webapps /etc/webapps
29 %define _webapp %{name}
30 %define _sysconfdir %{_webapps}/%{_webapp}
31 %define _appdir %{_datadir}/%{name}
32 %define _cgibindir %{_prefix}/lib/cgi-bin
33 %define _enscriptdir %{_datadir}/enscript/hl
36 CVSweb is a WWW interface for CVS repositories with which you can
37 browse a file hierarchy on your browser to view each file's revision
38 history in a very handy manner. CVSweb was originally written by Bill
39 Fenner for the FreeBSD Project. FreeBSD-CVSweb, formerly known as
40 knu-CVSweb, is an enhanced version of CVSweb based on Henner Zeller's
41 CVSweb, which is an extended version of the original CVSweb. This
42 version contains numerous cleanups, bug-fixes, security enhancements
43 and feature improvements.
45 %description -l pl.UTF-8
46 CVSweb jest interfejsem WWW dla repozytoriów CVS dzięki któremu można
47 przeglądać ich zawartość w przeglądarce WWW widząc pełną historię
48 zmian i numerów rewizji dla każdego z plików. CVSWeb został stworzony
49 przez Billa Fennera dla projektu FreeBSD. FreeBSD-CVSweb dawniej znany
50 jako knu-CVSweb jest rozszerzoną wersją opartą na wersji Hennera
51 Zellera, która z kolei była oparta na oryginalnej wersji. Kod obecnej
52 wersji został uporządkowany i oczyszczony, usuniętych zostało również
53 wiele błędów. Wprowadzono także dużo poprawek bezpieczeństwa oraz
54 rozbudowano funkcjonalność.
56 %package -n enscript-%{name}
57 Summary: Enscript language files for CVSweb
58 Summary(pl.UTF-8): Pliki języka Enscript dla CVSweba
59 Group: Applications/Publishing
60 Requires: enscript >= 1.6.4-1.2
62 %description -n enscript-%{name}
63 Enscript language files for CVSweb.
65 %description -n enscript-%{name} -l pl.UTF-8
66 Pliki języka Enscript dla CVSweba.
73 cp -a cvsweb.conf* samples
76 find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
79 rm -rf $RPM_BUILD_ROOT
80 install -d $RPM_BUILD_ROOT{%{_appdir}/{css,icons},%{_cgibindir},%{_enscriptdir},%{_sysconfdir}}
82 install %{name}.cgi $RPM_BUILD_ROOT%{_cgibindir}
83 install css/* $RPM_BUILD_ROOT%{_appdir}/css
84 install enscript/* $RPM_BUILD_ROOT%{_enscriptdir}
85 install icons/* $RPM_BUILD_ROOT%{_appdir}/icons
87 install %{name}.conf $RPM_BUILD_ROOT%{_sysconfdir}
88 echo '# vim:syn=perl' >> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
89 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
90 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
93 rm -rf $RPM_BUILD_ROOT
97 %banner %{name} -e <<'EOF'
98 You might want to install optionally 'cvsgraph' program.
102 %triggerin -- apache1 < 1.3.37-3, apache1-base
103 %webapp_register apache %{_webapp}
105 %triggerun -- apache1 < 1.3.37-3, apache1-base
106 %webapp_unregister apache %{_webapp}
108 %triggerin -- apache < 2.2.0, apache-base
109 %webapp_register httpd %{_webapp}
111 %triggerun -- apache < 2.2.0, apache-base
112 %webapp_unregister httpd %{_webapp}
114 %triggerpostun -- %{name} < 1:3.0.6-0.2
116 if [ -f /etc/%{name}/cvsweb.conf.rpmsave ]; then
117 mv -f %{_sysconfdir}/cvsweb.conf{,.rpmnew}
118 mv -f /etc/%{name}/cvsweb.conf.rpmsave %{_sysconfdir}/cvsweb.conf
121 # migrate from old config location (only apache2, as there was no apache1 support)
122 if [ -f /etc/httpd/%{name}.conf.rpmsave ]; then
123 cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
124 mv -f /etc/httpd/%{name}.conf.rpmsave %{_sysconfdir}/httpd.conf
128 # migrate from apache-config macros
129 if [ -f /etc/%{name}/apache.conf.rpmsave ]; then
130 if [ -d /etc/apache/webapps.d ]; then
131 cp -f %{_sysconfdir}/apache.conf{,.rpmnew}
132 cp -f /etc/%{name}/apache.conf.rpmsave %{_sysconfdir}/apache.conf
135 if [ -d /etc/httpd/webapps.d ]; then
136 cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
137 cp -f /etc/%{name}/apache.conf.rpmsave %{_sysconfdir}/httpd.conf
139 rm -f /etc/%{name}/apache.conf.rpmsave
142 if [ -L /etc/apache/conf.d/09_%{name}.conf ]; then
143 rm -f /etc/apache/conf.d/09_%{name}.conf
146 if [ -L /etc/apache/conf.d/79_%{name}.conf ]; then
147 rm -f /etc/apache/conf.d/79_%{name}.conf
150 if [ -L /etc/httpd/httpd.conf/09_%{name}.conf ]; then
151 rm -f /etc/httpd/httpd.conf/09_%{name}.conf
155 if [ "$apache_reload" ]; then
156 /usr/sbin/webapp register apache %{_webapp}
157 %service -q apache reload
159 if [ "$httpd_reload" ]; then
160 /usr/sbin/webapp register httpd %{_webapp}
161 %service -q httpd reload
165 %defattr(644,root,root,755)
166 %doc ChangeLog INSTALL NEWS README TODO samples
167 %dir %attr(750,root,http) %{_sysconfdir}
168 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{_sysconfdir}/%{name}.conf
169 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/apache.conf
170 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/httpd.conf
171 %attr(755,root,root) %{_cgibindir}/cvsweb.cgi
174 %files -n enscript-%{name}
175 %defattr(644,root,root,755)