]> git.pld-linux.org Git - packages/cvsweb.git/blob - cvsweb.spec
- apache config moved to SOURCES
[packages/cvsweb.git] / cvsweb.spec
1 %include        /usr/lib/rpm/macros.perl
2 Summary:        Visual (www) interface to explore a CVS repository
3 Summary(pl):    Wizualny (WWW) interfejs do przegl±dania repozytorium CVS
4 Name:           cvsweb
5 Version:        3.0.6
6 Release:        0.4
7 Epoch:          1
8 License:        BSD
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 %{_libdir}/cgi-bin
18 Requires:       FHS >= 2.3-8
19 Requires:       rcs
20 # for /etc/mime.types
21 Requires:       mailcap
22 Requires:       webapps
23 BuildArch:      noarch
24 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25
26 %define         _webapps        /etc/webapps
27 %define         _webapp         %{name}
28 %define         _sysconfdir     %{_webapps}/%{_webapp}
29 %define         _appdir         %{_datadir}/%{name}
30
31 %description
32 CVSweb is a WWW interface for CVS repositories with which you can
33 browse a file hierarchy on your browser to view each file's revision
34 history in a very handy manner. CVSweb was originally written by Bill
35 Fenner for the FreeBSD Project. FreeBSD-CVSweb, formerly known as
36 knu-CVSweb, is an enhanced version of CVSweb based on Henner Zeller's
37 CVSweb, which is an extended version of the original CVSweb. This
38 version contains numerous cleanups, bug-fixes, security enhancements
39 and feature improvements.
40
41 %description -l pl
42 CVSweb jest interfejsem WWW dla repozytoriów CVS dziêki któremu mo¿na
43 przegl±daæ ich zawarto¶æ w przegl±darce WWW widz±c pe³n± historiê
44 zmian i numerów rewizji dla ka¿dego z plików. CVSWeb zosta³ stworzony
45 przez Billa Fennera dla projektu FreeBSD. FreeBSD-CVSweb dawniej znany
46 jako knu-CVSweb jest rozszerzon± wersj± opart± na wersji Hennera
47 Zellera, która z kolei by³a oparta na oryginalnej wersji. Kod obecnej
48 wersji zosta³ uporz±dkowany i oczyszczony, usuniêtych zosta³o równie¿
49 wiele b³êdów. Wprowadzono tak¿e du¿o poprawek bezpieczeñstwa oraz
50 rozbudowano funkcjonalno¶æ.
51
52 %prep
53 %setup -q
54 %patch0 -p1
55 %patch1 -p1
56
57 install cvsweb.conf* samples
58
59 # remove backups
60 find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
61
62 %install
63 rm -rf $RPM_BUILD_ROOT
64
65 install -d $RPM_BUILD_ROOT{%{_appdir}/{css,enscript,icons},%{_sysconfdir}}
66
67 install %{name}.cgi     $RPM_BUILD_ROOT%{_appdir}
68 install css/*           $RPM_BUILD_ROOT%{_appdir}/css
69 install enscript/*      $RPM_BUILD_ROOT%{_appdir}/enscript
70 install icons/*         $RPM_BUILD_ROOT%{_appdir}/icons
71
72 install %{name}.conf    $RPM_BUILD_ROOT%{_sysconfdir}
73 echo '# vim:syn=perl' >> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
74 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
75 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
76
77 %post
78 if [ "$1" = 1 ]; then
79 %banner %{name} -e <<'EOF'
80 You might want to install optionally 'cvsgraph' program.
81 EOF
82 fi
83
84 %clean
85 rm -rf $RPM_BUILD_ROOT
86
87 %triggerpostun -- %{name} < 1:3.0.6-0.2
88 # rescue app config
89 if [ -f /etc/%{name}/cvsweb.conf.rpmsave ]; then
90         mv -f %{_sysconfdir}/cvsweb.conf{,.rpmnew}
91         mv -f /etc/%{name}/cvsweb.conf.rpmsave %{_sysconfdir}/cvsweb.conf
92 fi
93
94 # migrate from old config location (only apache2, as there was no apache1 support)
95 if [ -f /etc/httpd/%{name}.conf.rpmsave ]; then
96         cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
97         mv -f /etc/httpd/%{name}.conf.rpmsave %{_sysconfdir}/httpd.conf
98         httpd_reload=1
99 fi
100
101 # migrate from apache-config macros
102 if [ -f /etc/%{name}/apache.conf.rpmsave ]; then
103         if [ -d /etc/apache/webapps.d ]; then
104                 cp -f %{_sysconfdir}/apache.conf{,.rpmnew}
105                 cp -f /etc/%{name}/apache.conf.rpmsave %{_sysconfdir}/apache.conf
106         fi
107
108         if [ -d /etc/httpd/webapps.d ]; then
109                 cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
110                 cp -f /etc/%{name}/apache.conf.rpmsave %{_sysconfdir}/httpd.conf
111         fi
112         rm -f /etc/%{name}/apache.conf.rpmsave
113 fi
114
115 if [ -L /etc/apache/conf.d/09_%{name}.conf ]; then
116         rm -f /etc/apache/conf.d/09_%{name}.conf
117         apache_reload=1
118 fi
119 if [ -L /etc/apache/conf.d/79_%{name}.conf ]; then
120         rm -f /etc/apache/conf.d/79_%{name}.conf
121         apache_reload=1
122 fi
123 if [ -L /etc/httpd/httpd.conf/09_%{name}.conf ]; then
124         rm -f /etc/httpd/httpd.conf/09_%{name}.conf
125         httpd_reload=1
126 fi
127
128 if [ "$apache_reload" ]; then
129         /usr/sbin/webapp register apache %{_webapp}
130         %service -q apache reload
131 fi
132 if [ "$httpd_reload" ]; then
133         /usr/sbin/webapp register httpd %{_webapp}
134         %service -q httpd reload
135 fi
136
137 %files
138 %defattr(644,root,root,755)
139 %doc ChangeLog INSTALL NEWS README TODO samples
140 %dir %attr(750,root,http) %{_sysconfdir}
141 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{_sysconfdir}/%{name}.conf
142 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/apache.conf
143 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{_sysconfdir}/httpd.conf
144 %dir %{_appdir}
145 %{_appdir}/css
146 %{_appdir}/enscript
147 %{_appdir}/icons
148 %attr(755,root,root) %{_appdir}/cvsweb.cgi
This page took 0.035629 seconds and 4 git commands to generate.